0001580905-23-000023.txt : 20230504 0001580905-23-000023.hdr.sgml : 20230504 20230504152805 ACCESSION NUMBER: 0001580905-23-000023 CONFORMED SUBMISSION TYPE: 10-Q PUBLIC DOCUMENT COUNT: 109 CONFORMED PERIOD OF REPORT: 20230331 FILED AS OF DATE: 20230504 DATE AS OF CHANGE: 20230504 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-Q SEC ACT: 1934 Act SEC FILE NUMBER: 001-36307 FILM NUMBER: 23888273 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 10-Q 1 ibp-20230331.htm 10-Q ibp-20230331
FALSE2023Q1000158090512/31http://fasb.org/us-gaap/2022#PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortizationhttp://fasb.org/us-gaap/2022#PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortizationhttp://fasb.org/us-gaap/2022#InterestExpensehttp://fasb.org/us-gaap/2022#InterestExpensehttp://fasb.org/us-gaap/2022#InterestExpensehttp://fasb.org/us-gaap/2022#InterestExpense5000null thousand00015809052023-01-012023-03-3100015809052023-04-27xbrli:shares00015809052023-03-31iso4217:USD00015809052022-12-310001580905us-gaap:CustomerRelationshipsMember2023-03-310001580905us-gaap:CustomerRelationshipsMember2022-12-310001580905us-gaap:OtherIntangibleAssetsMember2023-03-310001580905us-gaap:OtherIntangibleAssetsMember2022-12-31iso4217:USDxbrli:shares00015809052022-01-012022-03-310001580905us-gaap:CommonStockMember2021-12-310001580905us-gaap:AdditionalPaidInCapitalMember2021-12-310001580905us-gaap:RetainedEarningsMember2021-12-310001580905us-gaap:TreasuryStockCommonMember2021-12-310001580905us-gaap:AccumulatedOtherComprehensiveIncomeMember2021-12-3100015809052021-12-310001580905us-gaap:RetainedEarningsMember2022-01-012022-03-310001580905us-gaap:CommonStockMember2022-01-012022-03-310001580905us-gaap:AdditionalPaidInCapitalMember2022-01-012022-03-310001580905us-gaap:TreasuryStockCommonMember2022-01-012022-03-310001580905us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-01-012022-03-310001580905us-gaap:CommonStockMember2022-03-310001580905us-gaap:AdditionalPaidInCapitalMember2022-03-310001580905us-gaap:RetainedEarningsMember2022-03-310001580905us-gaap:TreasuryStockCommonMember2022-03-310001580905us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-03-3100015809052022-03-310001580905us-gaap:CommonStockMember2022-12-310001580905us-gaap:AdditionalPaidInCapitalMember2022-12-310001580905us-gaap:RetainedEarningsMember2022-12-310001580905us-gaap:TreasuryStockCommonMember2022-12-310001580905us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-12-310001580905us-gaap:RetainedEarningsMember2023-01-012023-03-310001580905us-gaap:CommonStockMember2023-01-012023-03-310001580905us-gaap:AdditionalPaidInCapitalMember2023-01-012023-03-310001580905us-gaap:TreasuryStockCommonMember2023-01-012023-03-310001580905us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-01-012023-03-310001580905us-gaap:CommonStockMember2023-03-310001580905us-gaap:AdditionalPaidInCapitalMember2023-03-310001580905us-gaap:RetainedEarningsMember2023-03-310001580905us-gaap:TreasuryStockCommonMember2023-03-310001580905us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-03-31ibp:locationibp:segment0001580905ibp:ResidentialNewConstructionMember2023-01-012023-03-310001580905us-gaap:RevenueFromContractWithCustomerMemberibp:ResidentialNewConstructionMemberus-gaap:CustomerConcentrationRiskMember2023-01-012023-03-31xbrli:pure0001580905ibp:ResidentialNewConstructionMember2022-01-012022-03-310001580905us-gaap:RevenueFromContractWithCustomerMemberibp:ResidentialNewConstructionMemberus-gaap:CustomerConcentrationRiskMember2022-01-012022-03-310001580905ibp:RepairAndRemodelMember2023-01-012023-03-310001580905us-gaap:RevenueFromContractWithCustomerMemberus-gaap:CustomerConcentrationRiskMemberibp:RepairAndRemodelMember2023-01-012023-03-310001580905ibp:RepairAndRemodelMember2022-01-012022-03-310001580905us-gaap:RevenueFromContractWithCustomerMemberus-gaap:CustomerConcentrationRiskMemberibp:RepairAndRemodelMember2022-01-012022-03-310001580905ibp:CommercialMember2023-01-012023-03-310001580905us-gaap:RevenueFromContractWithCustomerMemberibp:CommercialMemberus-gaap:CustomerConcentrationRiskMember2023-01-012023-03-310001580905ibp:CommercialMember2022-01-012022-03-310001580905us-gaap:RevenueFromContractWithCustomerMemberibp:CommercialMemberus-gaap:CustomerConcentrationRiskMember2022-01-012022-03-310001580905ibp:CustomerInstallationMember2023-01-012023-03-310001580905us-gaap:RevenueFromContractWithCustomerMemberibp:CustomerInstallationMemberus-gaap:CustomerConcentrationRiskMember2023-01-012023-03-310001580905ibp:CustomerInstallationMember2022-01-012022-03-310001580905us-gaap:RevenueFromContractWithCustomerMemberibp:CustomerInstallationMemberus-gaap:CustomerConcentrationRiskMember2022-01-012022-03-310001580905ibp:OtherCustomerInstallationMember2023-01-012023-03-310001580905us-gaap:RevenueFromContractWithCustomerMemberibp:OtherCustomerInstallationMemberus-gaap:CustomerConcentrationRiskMember2023-01-012023-03-310001580905ibp:OtherCustomerInstallationMember2022-01-012022-03-310001580905us-gaap:RevenueFromContractWithCustomerMemberibp:OtherCustomerInstallationMemberus-gaap:CustomerConcentrationRiskMember2022-01-012022-03-310001580905us-gaap:RevenueFromContractWithCustomerMemberus-gaap:CustomerConcentrationRiskMember2023-01-012023-03-310001580905us-gaap:RevenueFromContractWithCustomerMemberus-gaap:CustomerConcentrationRiskMember2022-01-012022-03-310001580905ibp:InsulationMember2023-01-012023-03-310001580905ibp:InsulationMemberus-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMemberus-gaap:ProductConcentrationRiskMember2023-01-012023-03-310001580905ibp:InsulationMember2022-01-012022-03-310001580905ibp:InsulationMemberus-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMemberus-gaap:ProductConcentrationRiskMember2022-01-012022-03-310001580905ibp:ShowerDoorsShelvingAndMirrorsMember2023-01-012023-03-310001580905us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMemberibp:ShowerDoorsShelvingAndMirrorsMemberus-gaap:ProductConcentrationRiskMember2023-01-012023-03-310001580905ibp:ShowerDoorsShelvingAndMirrorsMember2022-01-012022-03-310001580905us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMemberibp:ShowerDoorsShelvingAndMirrorsMemberus-gaap:ProductConcentrationRiskMember2022-01-012022-03-310001580905ibp:GarageDoorsMember2023-01-012023-03-310001580905ibp:GarageDoorsMemberus-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMemberus-gaap:ProductConcentrationRiskMember2023-01-012023-03-310001580905ibp:GarageDoorsMember2022-01-012022-03-310001580905ibp:GarageDoorsMemberus-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMemberus-gaap:ProductConcentrationRiskMember2022-01-012022-03-310001580905ibp:WaterproofingMember2023-01-012023-03-310001580905us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMemberus-gaap:ProductConcentrationRiskMemberibp:WaterproofingMember2023-01-012023-03-310001580905ibp:WaterproofingMember2022-01-012022-03-310001580905us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMemberus-gaap:ProductConcentrationRiskMemberibp:WaterproofingMember2022-01-012022-03-310001580905ibp:RainGuttersMember2023-01-012023-03-310001580905us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMemberibp:RainGuttersMemberus-gaap:ProductConcentrationRiskMember2023-01-012023-03-310001580905ibp:RainGuttersMember2022-01-012022-03-310001580905us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMemberibp:RainGuttersMemberus-gaap:ProductConcentrationRiskMember2022-01-012022-03-310001580905ibp:WindowBlindsMember2023-01-012023-03-310001580905us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMemberus-gaap:ProductConcentrationRiskMemberibp:WindowBlindsMember2023-01-012023-03-310001580905ibp:WindowBlindsMember2022-01-012022-03-310001580905us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMemberus-gaap:ProductConcentrationRiskMemberibp:WindowBlindsMember2022-01-012022-03-310001580905ibp:FireproofingAndFirestoppingMember2023-01-012023-03-310001580905ibp:FireproofingAndFirestoppingMemberus-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMemberus-gaap:ProductConcentrationRiskMember2023-01-012023-03-310001580905ibp:FireproofingAndFirestoppingMember2022-01-012022-03-310001580905ibp:FireproofingAndFirestoppingMemberus-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMemberus-gaap:ProductConcentrationRiskMember2022-01-012022-03-310001580905ibp:OtherBuildingProductsMember2023-01-012023-03-310001580905ibp:OtherBuildingProductsMemberus-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMemberus-gaap:ProductConcentrationRiskMember2023-01-012023-03-310001580905ibp:OtherBuildingProductsMember2022-01-012022-03-310001580905ibp:OtherBuildingProductsMemberus-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMemberus-gaap:ProductConcentrationRiskMember2022-01-012022-03-310001580905ibp:ProductInstallationMember2023-01-012023-03-310001580905ibp:ProductInstallationMemberus-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMemberus-gaap:ProductConcentrationRiskMember2023-01-012023-03-310001580905ibp:ProductInstallationMember2022-01-012022-03-310001580905ibp:ProductInstallationMemberus-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMemberus-gaap:ProductConcentrationRiskMember2022-01-012022-03-310001580905us-gaap:ProductAndServiceOtherMember2023-01-012023-03-310001580905us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMemberus-gaap:ProductConcentrationRiskMemberus-gaap:ProductAndServiceOtherMember2023-01-012023-03-310001580905us-gaap:ProductAndServiceOtherMember2022-01-012022-03-310001580905us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMemberus-gaap:ProductConcentrationRiskMemberus-gaap:ProductAndServiceOtherMember2022-01-012022-03-310001580905us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMemberus-gaap:ProductConcentrationRiskMember2023-01-012023-03-310001580905us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMemberus-gaap:ProductConcentrationRiskMember2022-01-012022-03-3100015809052022-07-012023-01-012023-03-310001580905ibp:InstallationSegmentMember2022-12-310001580905ibp:OtherSegmentMember2022-12-310001580905ibp:InstallationSegmentMember2023-01-012023-03-310001580905ibp:OtherSegmentMember2023-01-012023-03-310001580905ibp:InstallationSegmentMember2023-03-310001580905ibp:OtherSegmentMember2023-03-310001580905ibp:OtherSegmentMember2022-01-012022-12-310001580905us-gaap:NoncompeteAgreementsMember2023-03-310001580905us-gaap:NoncompeteAgreementsMember2022-12-310001580905us-gaap:TrademarksAndTradeNamesMember2023-03-310001580905us-gaap:TrademarksAndTradeNamesMember2022-12-310001580905us-gaap:OrderOrProductionBacklogMember2023-03-310001580905us-gaap:OrderOrProductionBacklogMember2022-12-310001580905ibp:FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMemberus-gaap:SeniorNotesMember2023-03-310001580905ibp:FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMemberus-gaap:SeniorNotesMember2022-12-310001580905ibp:TermLoanAgreementMemberus-gaap:MediumTermNotesMember2023-03-310001580905ibp:TermLoanAgreementMemberus-gaap:MediumTermNotesMember2022-12-310001580905srt:MinimumMemberibp:VehicleAndEquipmentNotesMemberus-gaap:NotesPayableOtherPayablesMember2022-12-310001580905srt:MinimumMemberibp:VehicleAndEquipmentNotesMemberus-gaap:NotesPayableOtherPayablesMember2023-03-310001580905srt:MaximumMemberibp:VehicleAndEquipmentNotesMemberus-gaap:NotesPayableOtherPayablesMember2022-12-310001580905srt:MaximumMemberibp:VehicleAndEquipmentNotesMemberus-gaap:NotesPayableOtherPayablesMember2023-03-310001580905ibp:VehicleAndEquipmentNotesMemberus-gaap:NotesPayableOtherPayablesMember2023-03-310001580905ibp:VehicleAndEquipmentNotesMemberus-gaap:NotesPayableOtherPayablesMember2022-12-310001580905srt:MinimumMemberus-gaap:NotesPayableOtherPayablesMember2023-03-310001580905srt:MinimumMemberus-gaap:NotesPayableOtherPayablesMember2022-12-310001580905srt:MaximumMemberus-gaap:NotesPayableOtherPayablesMember2023-03-310001580905srt:MaximumMemberus-gaap:NotesPayableOtherPayablesMember2022-12-310001580905us-gaap:NotesPayableOtherPayablesMember2023-03-310001580905us-gaap:NotesPayableOtherPayablesMember2022-12-310001580905ibp:OperatingLeaseMember2023-01-012023-03-310001580905ibp:OperatingLeaseMember2022-01-012022-03-310001580905ibp:FinanceLeaseMember2022-01-012022-03-310001580905ibp:FinanceLeaseMember2023-01-012023-03-310001580905ibp:RelatedPartyOperatingLeasesMember2023-03-310001580905ibp:OtherPartyOperatingLeasesMember2023-03-310001580905us-gaap:FairValueInputsLevel1Member2023-03-310001580905us-gaap:FairValueInputsLevel2Member2023-03-310001580905us-gaap:FairValueInputsLevel3Member2023-03-310001580905us-gaap:FairValueInputsLevel1Member2022-12-310001580905us-gaap:FairValueInputsLevel2Member2022-12-310001580905us-gaap:FairValueInputsLevel3Member2022-12-310001580905us-gaap:CarryingReportedAmountFairValueDisclosureMemberibp:FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember2023-03-310001580905us-gaap:FairValueInputsLevel2Memberibp:FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember2023-03-310001580905us-gaap:CarryingReportedAmountFairValueDisclosureMemberibp:FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember2022-12-310001580905us-gaap:FairValueInputsLevel2Memberibp:FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember2022-12-310001580905us-gaap:AllOtherSegmentsMember2023-01-012023-03-310001580905us-gaap:OperatingSegmentsMemberibp:InstallationSegmentMember2023-01-012023-03-310001580905us-gaap:AllOtherSegmentsMemberus-gaap:OperatingSegmentsMember2023-01-012023-03-310001580905us-gaap:IntersegmentEliminationMember2023-01-012023-03-310001580905srt:RestatementAdjustmentMember2023-01-012023-03-310001580905us-gaap:OperatingSegmentsMemberibp:InstallationSegmentMember2022-01-012022-03-310001580905us-gaap:AllOtherSegmentsMemberus-gaap:OperatingSegmentsMember2022-01-012022-03-310001580905us-gaap:IntersegmentEliminationMember2022-01-012022-03-310001580905us-gaap:IntersegmentEliminationMembersrt:RestatementAdjustmentMember2022-01-012022-03-310001580905srt:RestatementAdjustmentMember2022-01-012022-03-310001580905us-gaap:CashFlowHedgingMemberibp:InterestRateSwapOneEffectiveJuly202021Memberus-gaap:DesignatedAsHedgingInstrumentMember2023-03-310001580905ibp:InterestRateSwapTwoEffectiveDecember312021Memberus-gaap:CashFlowHedgingMemberus-gaap:DesignatedAsHedgingInstrumentMember2023-03-310001580905us-gaap:CashFlowHedgingMemberibp:InterestRateSwapThreeEffectiveDecember312021Memberus-gaap:DesignatedAsHedgingInstrumentMember2023-03-310001580905us-gaap:CashFlowHedgingMemberibp:InterestRateSwapFourEffectiveDecember312025Memberus-gaap:DesignatedAsHedgingInstrumentMember2023-03-310001580905us-gaap:CashFlowHedgingMemberibp:InterestRateSwapFiveEffectiveDecember312025Memberus-gaap:DesignatedAsHedgingInstrumentMember2023-03-310001580905us-gaap:InterestRateSwapMemberus-gaap:DesignatedAsHedgingInstrumentMember2022-07-08ibp:instrument0001580905us-gaap:CashFlowHedgingMemberus-gaap:InterestRateSwapMember2023-03-310001580905us-gaap:DesignatedAsHedgingInstrumentMember2023-01-012023-03-3100015809052020-08-31ibp:swap0001580905us-gaap:DesignatedAsHedgingInstrumentMember2022-01-012022-03-310001580905us-gaap:InterestRateSwapMemberus-gaap:DesignatedAsHedgingInstrumentMember2023-01-012023-03-310001580905us-gaap:InterestRateSwapMember2023-01-012023-03-310001580905us-gaap:InterestRateSwapMember2022-01-012022-03-310001580905us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember2022-12-310001580905us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember2021-12-310001580905us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember2023-01-012023-03-310001580905us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember2022-01-012022-03-310001580905us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember2023-03-310001580905us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember2022-03-3100015809052022-02-240001580905ibp:DividendOneMember2023-02-222023-02-220001580905ibp:DividendOneMember2023-02-222023-03-310001580905ibp:DividendTwoMember2023-02-222023-02-220001580905ibp:DividendTwoMember2023-02-222023-03-310001580905ibp:DividendOneMember2022-02-242022-02-240001580905ibp:DividendOneMember2022-02-232022-03-310001580905ibp:DividendTwoMember2022-02-242022-02-240001580905ibp:DividendTwoMember2022-02-232022-02-230001580905ibp:DividendTwoMember2022-03-312022-03-310001580905us-gaap:DefinedBenefitPostretirementHealthCoverageMember2023-03-310001580905us-gaap:DefinedBenefitPostretirementHealthCoverageMember2022-12-310001580905us-gaap:CostOfSalesMember2023-01-012023-03-310001580905us-gaap:CostOfSalesMember2022-01-012022-03-310001580905ibp:PerformanceBasedAwardsMembersrt:OfficerMember2023-01-012023-03-310001580905ibp:PerformanceBasedAwardsMemberus-gaap:CommonStockMembersrt:OfficerMember2023-01-012023-03-31ibp:installment0001580905ibp:LiabilityPerformanceBasedStockAwardsMember2023-01-012023-03-310001580905ibp:CommonStockAwardsMember2022-12-310001580905ibp:PerformanceBasedAwardsMember2022-12-310001580905ibp:PerformanceBasedStockUnitsMember2022-12-310001580905ibp:CommonStockAwardsMember2023-01-012023-03-310001580905ibp:PerformanceBasedAwardsMember2023-01-012023-03-310001580905ibp:PerformanceBasedStockUnitsMember2023-01-012023-03-310001580905ibp:CommonStockAwardsMember2023-03-310001580905ibp:PerformanceBasedAwardsMember2023-03-310001580905ibp:PerformanceBasedStockUnitsMember2023-03-310001580905ibp:TwoThousandAndFourteenOmnibusIncentivePlanMemberibp:CommonStockAwardsMember2023-01-012023-03-310001580905ibp:TwoThousandAndFourteenOmnibusIncentivePlanMemberibp:CommonStockAwardsMember2022-01-012022-03-310001580905ibp:TwoThousandAndFourteenOmnibusIncentivePlanMemberus-gaap:ShareBasedPaymentArrangementNonemployeeMemberibp:CommonStockAwardsMember2023-01-012023-03-310001580905ibp:TwoThousandAndFourteenOmnibusIncentivePlanMemberus-gaap:ShareBasedPaymentArrangementNonemployeeMemberibp:CommonStockAwardsMember2022-01-012022-03-310001580905ibp:TwoThousandAndFourteenOmnibusIncentivePlanMemberibp:PerformanceBasedAwardsMember2023-01-012023-03-310001580905ibp:TwoThousandAndFourteenOmnibusIncentivePlanMemberibp:PerformanceBasedAwardsMember2022-01-012022-03-310001580905ibp:TwoThousandAndFourteenOmnibusIncentivePlanMemberibp:LiabilityPerformanceBasedStockAwardsMember2023-01-012023-03-310001580905ibp:TwoThousandAndFourteenOmnibusIncentivePlanMemberibp:LiabilityPerformanceBasedStockAwardsMember2022-01-012022-03-310001580905ibp:TwoThousandAndFourteenOmnibusIncentivePlanMemberibp:PerformanceBasedRestrictedStockUnitsMember2023-01-012023-03-310001580905ibp:TwoThousandAndFourteenOmnibusIncentivePlanMemberibp:PerformanceBasedRestrictedStockUnitsMember2022-01-012022-03-310001580905ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember2023-01-012023-03-310001580905ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember2022-01-012022-03-310001580905us-gaap:SellingAndMarketingExpenseMember2023-01-012023-03-310001580905us-gaap:SellingAndMarketingExpenseMember2022-01-012022-03-310001580905us-gaap:GeneralAndAdministrativeExpenseMember2023-01-012023-03-310001580905us-gaap:GeneralAndAdministrativeExpenseMember2022-01-012022-03-310001580905ibp:PerformanceBasedRestrictedStockUnitsMember2023-03-310001580905ibp:PerformanceBasedRestrictedStockUnitsMember2023-01-012023-03-310001580905ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember2023-03-310001580905ibp:LiabilityPerformanceBasedStockAwardsMember2022-01-012022-03-310001580905us-gaap:ShareBasedPaymentArrangementNonemployeeMemberibp:CommonStockAwardsMember2023-01-012023-03-310001580905srt:AffiliatedEntityMember2023-03-310001580905srt:AffiliatedEntityMember2022-12-310001580905us-gaap:GeneralLiabilityMember2023-03-310001580905us-gaap:GeneralLiabilityMember2022-12-31ibp:aluminumPoundibp:acquistion0001580905ibp:AnchorMember2023-03-122023-03-120001580905ibp:AnchorMember2023-01-012023-03-310001580905ibp:OtherAcquisitionsMember2023-02-132023-02-130001580905ibp:OtherAcquisitionsMember2023-01-012023-03-310001580905ibp:OtherAcquisitionsMember2022-03-012022-03-010001580905ibp:OtherAcquisitionsMember2022-01-012022-03-310001580905ibp:AnchorMember2023-03-310001580905ibp:OtherAcquisitionsMember2023-03-310001580905ibp:A2023AcquisitionsMember2023-03-310001580905ibp:OtherAcquisitionsMember2022-03-310001580905ibp:A2023AcquisitionsMember2023-01-012023-03-310001580905us-gaap:CustomerRelationshipsMember2023-01-012023-03-310001580905us-gaap:CustomerRelationshipsMember2022-01-012022-03-310001580905us-gaap:TrademarksAndTradeNamesMember2023-01-012023-03-310001580905us-gaap:TrademarksAndTradeNamesMember2022-01-012022-03-310001580905us-gaap:NoncompeteAgreementsMember2023-01-012023-03-310001580905us-gaap:NoncompeteAgreementsMember2022-01-012022-03-310001580905us-gaap:OrderOrProductionBacklogMember2023-01-012023-03-310001580905us-gaap:OrderOrProductionBacklogMember2022-01-012022-03-310001580905us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember2023-01-012023-03-310001580905us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember2022-01-012022-03-310001580905us-gaap:SubsequentEventMember2023-05-042023-05-040001580905us-gaap:SubsequentEventMemberibp:TermLoanMember2023-04-300001580905us-gaap:SubsequentEventMemberibp:TermLoanMember2023-04-012023-04-300001580905ibp:AblCreditAgreementMemberus-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMemberus-gaap:SubsequentEventMemberibp:OneMonthMember2023-04-012023-04-300001580905ibp:AblCreditAgreementMemberus-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMemberus-gaap:SubsequentEventMemberibp:ThreeMonthsMembersrt:WeightedAverageMember2023-04-012023-04-300001580905ibp:AblCreditAgreementMembersrt:MaximumMemberus-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMemberus-gaap:SubsequentEventMemberibp:SixMonthsMember2023-04-012023-04-30

UNITED STATES
SECURITIES AND EXCHANGE COMMISSION
Washington, D.C. 20549
FORM 10-Q
QUARTERLY REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934
For the quarterly period ended March 31, 2023
OR
TRANSITION REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934
For the Transition Period From _________ To ________
Commission File Number: 001-36307
Installed Building Products, Inc.
(Exact name of registrant as specified in its charter)
Delaware 45-3707650
(State or other jurisdiction of
incorporation or organization)
 (I.R.S. Employer
Identification No.)
495 South High Street, Suite 50
 
Columbus, Ohio
43215
(Address of principal executive offices) (Zip Code)
(614) 221-3399
(Registrant's telephone number, including area code)
Securities registered pursuant to Section 12(b) of the Act:
Title of each classTrading Symbol(s) Name of each exchange on which registered
Common Stock,$0.01 par value per shareIBP The New York Stock Exchange
Indicate by check mark whether the registrant (1) has filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that the registrant was required to file such reports), and (2) has been subject to such filing requirements for the past 90 days. Yes No
Indicate by check mark whether the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T (Section 232.405 of this chapter) during the preceding 12 months (or for such shorter period that the registrant was required to submit such files). Yes No
Indicate by a check mark whether the registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer, a smaller reporting company, or an emerging growth company. See the definitions of “large accelerated filer,” “accelerated filer,” “smaller reporting company,” and “emerging growth company” in Rule 12b-2 of the Exchange Act.
Large accelerated filer 
Accelerated filer 
Non-accelerated filer Smaller reporting company 
 Emerging growth company 
If an emerging growth company, indicate by check mark if the registrant has elected not to use the extended transition period for complying with any new or revised financial accounting standards provided pursuant to Section 13(a) of the Exchange Act.
Indicate by check mark whether the registrant is a shell company (as defined in Rule 12b–2 of the Exchange Act). Yes No
On April 27, 2023, the registrant had 28,404,505 shares of common stock, par value $0.01 per share, outstanding.



TABLE OF CONTENTS

i

PART I – FINANCIAL INFORMATION
Item 1. Financial Statements
INSTALLED BUILDING PRODUCTS, INC.
CONDENSED CONSOLIDATED BALANCE SHEETS (UNAUDITED)
(in thousands, except share and per share amounts)
 March 31,December 31,
 20232022
ASSETS
Current assets
Cash and cash equivalents$218,690 $229,627 
Accounts receivable (less allowance for credit losses of $10,059 and $9,549 at March 31, 2023 and December 31, 2022, respectively)
397,573 397,222 
Inventories170,115 176,629 
Prepaid expenses and other current assets76,217 80,933 
Total current assets862,595 884,411 
Property and equipment, net126,384 118,774 
Operating lease right-of-use assets74,602 76,174 
Goodwill392,625 373,555 
Customer relationships, net194,850 192,328 
Other intangibles, net94,751 91,145 
Other non-current assets33,756 42,545 
Total assets$1,779,563 $1,778,932 
LIABILITIES AND STOCKHOLDERS' EQUITY
Current liabilities
Current maturities of long-term debt$31,165 $30,983 
Current maturities of operating lease obligations26,000 26,145 
Current maturities of finance lease obligations2,588 2,508 
Accounts payable134,836 149,186 
Accrued compensation45,613 51,608 
Other current liabilities76,136 67,631 
Total current liabilities316,338 328,061 
Long-term debt830,225 830,171 
Operating lease obligations48,339 49,789 
Finance lease obligations6,559 6,397 
Deferred income taxes25,993 28,458 
Other long-term liabilities46,887 42,557 
Total liabilities1,274,341 1,285,433 
Commitments and contingencies (Note 16)
Stockholders’ equity
Preferred Stock; $0.01 par value: 5,000,000 authorized and 0 shares issued and outstanding at March 31, 2023 and December 31, 2022, respectively
  
Common stock; $0.01 par value: 100,000,000 authorized, 33,498,693 and 33,429,557 issued and 28,375,037 and 28,306,482 shares outstanding at March 31, 2023 and December 31, 2022, respectively
335 334 
Additional paid in capital232,503 228,827 
Retained earnings527,468 513,095 
Treasury stock; at cost: 5,123,656 and 5,123,075 shares at March 31, 2023 and December 31, 2022, respectively
(289,335)(289,317)
Accumulated other comprehensive income 34,251 40,560 
Total stockholders’ equity505,222 493,499 
Total liabilities and stockholders’ equity$1,779,563 $1,778,932 

1

See accompanying notes to consolidated financial statements

INSTALLED BUILDING PRODUCTS, INC.
CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME (UNAUDITED)
(in thousands, except share and per share amounts)

 Three months ended March 31,
 20232022
Net revenue$659,309 $587,492 
Cost of sales448,887 415,089 
Gross profit210,422 172,403 
Operating expenses
Selling32,607 25,192 
Administrative89,504 79,144 
Amortization11,435 11,097 
Operating income76,876 56,970 
Other expense, net
Interest expense, net9,670 10,600 
Other (income) expense (153)145 
Income before income taxes67,359 46,225 
Income tax provision18,085 12,403 
Net income$49,274 $33,822 
Other comprehensive (loss) income, net of tax:
Net change on cash flow hedges, net of tax benefit (provision) of $2,252 and $(6,430) for the three months ended March 31, 2023 and 2022, respectively.
(6,309)18,111 
Comprehensive income$42,965 $51,933 
Earnings Per Share:
Basic$1.76 $1.15 
Diluted $1.74 $1.14 
Weighted average shares outstanding:
Basic28,075,678 29,302,396 
Diluted28,278,220 29,580,731 
Cash dividends declared per share$1.23 $1.22 


2

See accompanying notes to consolidated financial statements

INSTALLED BUILDING PRODUCTS, INC.
CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS’ EQUITY (UNAUDITED)
FOR THE THREE MONTHS ENDED MARCH 31, 2022 AND MARCH 31, 2023
(in thousands, except share and per share amounts)
Common StockAdditional
Paid In
Capital
Retained
Earnings
Treasury StockAccumulated
 Other
Comprehensive
(Loss) Income
Stockholders’
Equity
SharesAmountSharesAmount
BALANCE - January 1, 202233,271,659 $333 $211,430 $352,543 (3,565,258)$(147,239)$(227)$416,840 
Net income33,822 33,822 
Issuance of common stock awards to employees40,980 1 (1) 
Surrender of common stock awards(50)  
Share-based compensation expense3,089 3,089 
Share-based compensation issued to directors 124 124 
Issuance of awards previously classified as liability awards39,204 4,000 4,000 
Dividends declared ($1.22 per share)
(35,890)(35,890)
Common Stock repurchase(510,943)(49,865)(49,865)
Other comprehensive income, net of tax18,111 18,111 
BALANCE - March 31, 202233,351,843 $334 $218,642 $350,475 (4,076,251)$(197,104)$17,884 $390,231 
Common StockAdditional
Paid In
Capital
Retained
Earnings
Treasury StockAccumulated Other
Comprehensive Income
Stockholders’
Equity
SharesAmountSharesAmount
BALANCE - January 1, 202333,429,557 $334 $228,827 $513,095 (5,123,075)$(289,317)$40,560 $493,499 
Net income49,274 49,274 
Issuance of common stock awards to employees69,136 1 (1) 
Surrender of common stock awards(581)(18)(18)
Share-based compensation expense3,529 3,529 
Share-based compensation issued to directors148 148 
Dividends declared ($1.23 per share)
(34,901)(34,901)
Other comprehensive (loss), net of tax(6,309)(6,309)
BALANCE - March 31, 202333,498,693 $335 $232,503 $527,468 (5,123,656)$(289,335)$34,251 $505,222 



3

See accompanying notes to consolidated financial statements

INSTALLED BUILDING PRODUCTS, INC.
CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS (UNAUDITED)
(in thousands)
Three months ended March 31,
 20232022
Cash flows from operating activities
Net income$49,274 $33,822 
Adjustments to reconcile net income to net cash provided by operating activities
Depreciation and amortization of property and equipment12,525 11,329 
Amortization of operating lease right-of-use assets7,316 6,371 
Amortization of intangibles11,435 11,097 
Amortization of deferred financing costs and debt discount475 484 
Provision for credit losses1,678 653 
Gain on sale of property and equipment(639)(92)
Noncash stock compensation3,436 3,418 
Other, net(2,523)790 
Changes in assets and liabilities, excluding effects of acquisitions
Accounts receivable1,716 (32,700)
Inventories7,699 (16,300)
Other assets4,434 169 
Accounts payable(16,906)16,486 
Income taxes receivable/payable16,450 11,433 
Other liabilities(22,537)1,265 
Net cash provided by operating activities73,833 48,225 
Cash flows from investing activities
Purchases of investments (49,957)
Purchases of property and equipment(14,949)(10,362)
Acquisitions of businesses, net of cash acquired of $10 and $0 in 2023 and 2022, respectively
(38,008)(8,050)
Proceeds from sale of property and equipment741 265 
Other4,602 (614)
Net cash used in investing activities$(47,614)$(68,718)

4

See accompanying notes to consolidated financial statements

INSTALLED BUILDING PRODUCTS, INC.
CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS (UNAUDITED, CONTINUED)
(in thousands)
Three months ended March 31,
20232022
Cash flows from financing activities
Payments on Term Loan$(1,250)$(1,250)
Proceeds from vehicle and equipment notes payable8,119 4,752 
Debt issuance costs (627)
Principal payments on long-term debt(7,024)(6,618)
Principal payments on finance lease obligations(727)(521)
Dividends paid(34,536)(35,426)
Acquisition-related obligations(1,720)(6,003)
Repurchase of common stock (49,865)
Surrender of common stock awards by employees(18) 
Net cash used in financing activities(37,156)(95,558)
Net change in cash and cash equivalents(10,937)(116,051)
Cash and cash equivalents at beginning of period229,627 333,485 
Cash and cash equivalents at end of period$218,690 $217,434 
Supplemental disclosures of cash flow information
Net cash paid during the period for:
Interest$14,658 $14,293 
Income taxes, net of refunds1,524 1,088 
Supplemental disclosure of noncash activities
Right-of-use assets obtained in exchange for operating lease obligations$5,650 $5,514 
Property and equipment obtained in exchange for finance lease obligations957 544 
Seller obligations in connection with acquisition of businesses6,035 1,878 
Unpaid purchases of property and equipment included in accounts payable2,316 1,884 

5

See accompanying notes to consolidated financial statements

INSTALLED BUILDING PRODUCTS, INC.
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)
NOTE 1 - ORGANIZATION
Installed Building Products (“IBP”), a Delaware corporation formed on October 28, 2011, and its wholly-owned subsidiaries (collectively referred to as the “Company,” and “we,” “us” and “our”) 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 more than 240 locations and its corporate office is located in Columbus, Ohio.
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, and see Note 10, Information on Segments, for information on how we segment the business.
NOTE 2 - SIGNIFICANT ACCOUNTING POLICIES
Basis of Presentation and Principles of Consolidation
The accompanying consolidated financial statements include all of our wholly-owned subsidiaries. All intercompany accounts and transactions have been eliminated.
The information furnished in the Condensed Consolidated Financial Statements includes normal recurring adjustments and reflects all adjustments which are, in the opinion of management, necessary for a fair presentation of the results of operations and statements of financial position for the interim periods presented. Certain information and footnote disclosures normally included in the consolidated financial statements prepared in accordance with accounting principles generally accepted in the United States of America (“U.S. GAAP”) and the rules and regulations of the Securities and Exchange Commission (the “SEC”) have been omitted pursuant to such rules and regulations. We believe that the disclosures are adequate to prevent the information presented from being misleading when read in conjunction with our audited consolidated financial statements and the notes thereto included in Part II, Item 8, Financial Statements and Supplementary Data, of our Annual Report on Form 10-K for the fiscal year ended December 31, 2022 (“2022 Form 10-K”), as filed with the SEC on February 22, 2023. The December 31, 2022 Condensed Consolidated Balance Sheet data herein was derived from the audited consolidated financial statements but the related footnotes do not include all disclosures required by U.S. GAAP.
Our interim operating results for the three months ended March 31, 2023 are not necessarily indicative of the results to be expected in future operating quarters.
Note 2 to the audited consolidated financial statements in our 2022 Form 10-K describes the significant accounting policies and estimates used in preparation of the audited consolidated financial statements. Other than the recently implemented accounting policy described below, there have been no changes to our significant accounting policies during the three months ended March 31, 2023.
Recently Adopted Accounting Pronouncements
StandardEffective DateAdoption
ASU 2021-08, Business Combinations (Topic 805): Accounting for contract assets and contract liabilities from contracts with customersDecember 15, 2022
This pronouncement amended 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. This did not have a material impact on our consolidated financial statements
6

INSTALLED BUILDING PRODUCTS, INC.
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)
Recently Issued Accounting Pronouncements Not Yet Adopted
We are currently evaluating the impact of the following Accounting Standards Update ("ASU") on our Condensed Consolidated Financial Statements or Notes to Condensed Consolidated Financial Statements:
Standard  Description  Effective Date  Effect on the financial statements or other significant matters
ASU 2023-01 Leases (Topic 842): Common Control Arrangements  This pronouncement amends Topic 842 to require all entities to amortize leasehold improvements associated with common control leases over the useful life to the common control group.  Annual periods beginning after December 15, 2023, including interim periods therein. Early adoption is permitted.  We are currently assessing the impact of adoption on our consolidated financial statements.
NOTE 3 - REVENUE RECOGNITION
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):
Three months ended March 31,
2023
2022
Installation:
Residential new construction$475,095 72 %$442,404 75 %
Repair and remodel37,675 6 %32,641 6 %
Commercial109,972 16 %86,586 15 %
Net revenue, Installation$622,742 94 %$561,631 96 %
Other
36,567 6 %25,861 4 %
Net revenue, as reported$659,309 100 %$587,492 100 %
 Three months ended March 31,
20232022
Installation:
Insulation$394,043 60 %$364,943 63 %
Shower doors, shelving and mirrors45,513 7 %36,340 6 %
Garage doors43,312 7 %35,979 6 %
Waterproofing29,939 4 %29,022 5 %
Rain gutters27,800 4 %23,546 4 %
Window Blinds15,881 2 %13,058 2 %
Fireproofing/firestopping15,175 2 %15,922 3 %
Other building products51,079 8 %42,821 7 %
Net revenue, Installation$622,742 94 %$561,631 96 %
Other 36,567 6 %25,861 4 %
Net revenue, as reported$659,309 100 %$587,492 100 %
Contract Assets and Liabilities
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 Condensed Consolidated Balance Sheets. Our contract liabilities

7

INSTALLED BUILDING PRODUCTS, INC.
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)
consist of customer deposits and billings in excess of revenue recognized, based on costs incurred and are included in other current liabilities in our Condensed Consolidated Balance Sheets.
Contract assets and liabilities related to our uncompleted contracts and customer deposits were as follows (in thousands):
 March 31, 2023December 31, 2022
Contract assets$36,048 $29,431 
Contract liabilities(17,331)(18,884)
Uncompleted contracts were as follows (in thousands):
 March 31, 2023December 31, 2022
Costs incurred on uncompleted contracts$279,994 $273,788 
Estimated earnings116,621 114,781 
Total396,615 388,569 
Less: Billings to date369,686 368,009 
Net under billings$26,929 $20,560 
Net under billings were as follows (in thousands):
 March 31, 2023December 31, 2022
Costs and estimated earnings in excess of billings on uncompleted contracts (contract assets)$36,048 $29,431 
Billings in excess of costs and estimated earnings on uncompleted contracts (contract liabilities)(9,119)(8,871)
Net under billings$26,929 $20,560 
The difference between contract assets and contract liabilities as of March 31, 2023 compared to December 31, 2022 is primarily the result of timing differences between our performance of obligations under contracts and customer payments and billings. During three months ended March 31, 2023, we recognized $15.8 million of revenue that was included in the contract liability balance at December 31, 2022. We did not recognize any impairment losses on our receivables and contract assets during the three months ended March 31, 2023 or 2022.
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 March 31, 2023, the aggregate amount of the transaction price allocated to remaining uncompleted contracts was $154.3 million. We expect to satisfy remaining performance obligations and recognize revenue on substantially all of these uncompleted contracts over the next 18 months.
NOTE 4 - CREDIT LOSSES
Our expected loss allowance methodology for accounts receivable is developed using historical experience, present economic conditions and other relevant factors management considers relevant to estimate expected credit losses. We also perform ongoing evaluations of creditworthiness of our existing and potential customers.
Changes in our allowance for credit losses were as follows (in thousands):
Balance as of January 1, 2023$9,549 
Current period provision1,678 
Recoveries collected and additions61 
Amounts written off(1,229)
Balance as of March 31, 2023$10,059 

8

INSTALLED BUILDING PRODUCTS, INC.
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)
NOTE 5 - CASH AND CASH EQUIVALENTS
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 approximately $197.9 million and $191.9 million as of March 31, 2023 and December 31, 2022, respectively. See Note 9, Fair Value Measurements, for additional information.
NOTE 6 - GOODWILL AND INTANGIBLES
Goodwill
The change in carrying amount of goodwill was as follows (in thousands):
InstallationOtherConsolidated
Goodwill (gross) - January 1, 2023$355,226 $88,333 $443,559 
Business combinations13,540  13,540 
Other257 5,273 5,530 
Goodwill (gross) - March 31, 2023369,023 93,606 462,629 
Accumulated impairment losses (70,004) (70,004)
Goodwill (net) - March 31, 2023$299,019 $93,606 $392,625 
Other changes presented in the above table primarily include adjustments for the allocation of certain acquisitions still under measurement made during the three months ended March 31, 2023, including a change in tax election that resulted in a $4.9 million change in purchase price for a 2022 acquisition. For additional information regarding changes to goodwill resulting from acquisitions, see Note 17, Business Combinations.
We test goodwill for impairment annually during the fourth quarter of our fiscal year or earlier if there is an impairment indicator. Accumulated impairment losses included within the above table were incurred over multiple periods and were all associated with the Installation segment, with the latest impairment charge being recorded during the year ended December 31, 2010.
Intangibles, net
The following table provides the gross carrying amount, accumulated amortization and net book value for each major class of intangibles (in thousands):
 As of March 31,As of December 31,
 20232022
 Gross
Carrying
Amount
Accumulated
Amortization
Net
Book
Value
Gross
Carrying
Amount
Accumulated
Amortization
Net
Book
Value
Amortized intangibles:      
Customer relationships$349,019 $154,169 $194,850 $338,050 $145,722 $192,328 
Covenants not-to-compete31,207 21,028 10,179 30,899 20,086 10,813 
Trademarks and tradenames125,078 41,518 83,560 119,612 39,638 79,974 
Backlog21,635 20,623 1,012 20,815 20,457 358 
 $526,939 $237,338 $289,601 $509,376 $225,903 $283,473 
The gross carrying amount of intangibles increased approximately $17.6 million during the three months ended March 31, 2023 primarily due to business combinations. For more information, see Note 17, Business Combinations.

9

INSTALLED BUILDING PRODUCTS, INC.
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)
Remaining estimated aggregate annual amortization expense is as follows (amounts, in thousands, are for the fiscal year ended):
Remainder of 2023$32,834 
202439,843 
202534,301 
202630,350 
202726,064 
Thereafter126,209 
NOTE 7 - LONG-TERM DEBT
Long-term debt consisted of the following (in thousands):
 As of March 31,As of December 31,
 20232022
Senior Notes due 2028, net of unamortized debt issuance costs of $2,887 and $3,036, respectively
$297,113 $296,964 
Term loan, net of unamortized debt issuance costs of $5,524 and $5,767, respectively
488,226 489,233 
Vehicle and equipment notes, maturing through March 2028; payable in various monthly installments, including interest rates ranging from 1.9% to 6.2%
74,078 72,984 
Various notes payable, maturing through April 2025; payable in various monthly installments, including interest rates ranging from 2.0% to 5.0%
1,973 1,973 
861,390 861,154 
Less: current maturities(31,165)(30,983)
Long-term debt, less current maturities$830,225 $830,171 
Remaining required repayments of debt principal, gross of unamortized debt issuance costs, as of March 31, 2023 are as follows (in thousands):
Remainder of 2023$23,976 
202427,027 
202521,201 
202616,250 
202711,002 
Thereafter770,345 
NOTE 8 - LEASES
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.

10

INSTALLED BUILDING PRODUCTS, INC.
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)
The table below presents the lease-related assets and liabilities recorded on the Condensed Consolidated Balance Sheets:
As of March 31,As of December 31,
(in thousands)Classification20232022
Assets   
Non-Current   
OperatingOperating lease right-of-use assets$74,602 $76,174 
FinanceProperty and equipment, net9,159 8,928 
Total lease assets $83,761 $85,102 
Liabilities 
Current 
OperatingCurrent maturities of operating lease obligations$26,000 $26,145 
FinancingCurrent maturities of finance lease obligations2,588 2,508 
Non-Current 
OperatingOperating lease obligations48,339 49,789 
FinancingFinance lease obligations6,559 6,397 
Total lease liabilities$83,486 $84,839 
Weighted-average remaining lease term:
Operating leases 3.9 years4.0 years
Finance leases 3.8 years3.6 years
Weighted-average discount rate:
Operating leases 4.60 %4.41 %
Finance leases 6.08 %5.76 %
Lease Costs
The table below presents certain information related to the lease costs for finance and operating leases:
Three months ended March 31,
(in thousands)Classification20232022
Operating lease cost(1)
Administrative$9,203 $7,759 
Finance lease cost:
Amortization of leased assets(2)
Cost of sales977 716 
Interest on finance lease obligationsInterest expense, net131 61 
Total lease costs$10,311 $8,536 
(1)Includes variable lease costs of $1.2 million and $0.9 million for the three months ended March 31, 2023 and 2022, respectively, and short-term lease costs of $0.3 million for each of the three months ended March 31, 2023 and 2022.
(2)Includes variable lease costs of $0.2 million for each of the three months ended March 31, 2023 and 2022.
Other Information
The table below presents supplemental cash flow information related to leases (in thousands):
 Three months ended March 31,
 20232022
Cash paid for amounts included in the measurement of lease liabilities:
Operating cash flows for operating leases$7,691 $6,463 
Operating cash flows for finance leases131 61 
Financing cash flows for finance leases727 521 

11

INSTALLED BUILDING PRODUCTS, INC.
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)
Undiscounted Cash Flows
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 Condensed Consolidated Balance Sheet as of March 31, 2023 (in thousands):
 Finance LeasesOperating Leases
  Related PartyOtherTotal Operating
Remainder of 2023$2,354 $1,068 $21,268 $22,336 
20242,668 1,175 21,565 22,740 
20252,299 1,017 14,742 15,759 
20261,968  9,616 9,616 
2027997  5,252 5,252 
Thereafter17  5,559 5,559 
Total minimum lease payments10,303 $3,260 $78,002 81,262 
Less: Amounts representing executory costs(2) 
Less: Amounts representing interest(1,154)(6,923)
Present value of future minimum lease payments9,147 74,339 
Less: Current obligation under leases(2,588)(26,000)
Long-term lease obligations$6,559 $48,339 
NOTE 9 - FAIR VALUE MEASUREMENTS
Assets and Liabilities Measured at Fair Value on a Recurring Basis
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.
Assets Measured at Fair Value on a Nonrecurring Basis
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 March 31, 2023 and December 31, 2022 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’s estimated fair value. Undiscounted cash flows, a Level 3 input, are utilized in determining estimated fair values. During each of the three months ended March 31, 2023 and 2022, we did not record any impairments on these assets required to be measured at fair value on a nonrecurring basis.
Estimated Fair Value of Financial Instruments
Accounts receivable, accounts payable and accrued liabilities as of March 31, 2023 and December 31, 2022 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 March 31, 2023 and December 31, 2022, 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 March 31, 2023 and December 31, 2022. 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.
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, calculated based on a weighted average of various future forecast scenarios, to their net present value.


12

INSTALLED BUILDING PRODUCTS, INC.
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)
Fair value in the Condensed Consolidated Balance Sheets and not described above were as follows (in thousands):
 As of March 31, 2023As of December 31, 2022
 TotalLevel 1Level 2Level 3TotalLevel 1Level 2Level 3
Financial assets:
Cash equivalents$197,910 $197,910 $ $ $191,881 $191,881 $ $ 
Derivative financial instruments30,020 30,020  38,671 38,671  
Total financial assets$227,930 $197,910 $30,020 $ $230,552 $191,881 $38,671 $ 
Financial liabilities:
Contingent consideration$968 $ $ $968 $1,858 $ $ $1,858 
Derivative financial instruments1,014  1,014      
Total financial liabilities$1,982 $ $1,014 $968 $1,858 $ $ $1,858 
See Note 5, Cash and Cash Equivalents, for more information on cash equivalents included in the table above. Also see Note 11, Derivatives and Hedging Activities, for more information on derivative financial instruments.
The change in fair value of the contingent consideration (a Level 3 input) was as follows (in thousands):
Contingent consideration liability - January 1, 2023$1,858 
Accretion in value110 
Amounts paid to sellers(1,000)
Contingent consideration liability - March 31, 2023$968 
The accretion in value of contingent consideration liabilities is included within administrative expenses on the Condensed Consolidated Statements of Operations and Comprehensive Income.
The carrying value and associated fair value of financial assets and liabilities that are not recorded at fair value in the Condensed Consolidated Balance Sheets and not described above include our Senior Notes. To estimate the 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):
 As of March 31, 2023As of December 31, 2022
 Carrying ValueFair ValueCarrying ValueFair Value
Senior Notes(1)
$300,000 $278,709 $300,000 $270,993 
(1)Excludes the impact of unamortized debt issuance costs.
See Note 5, Cash and Cash Equivalents, for more information on investments included in the table above. Also see Note 7, Long-Term Debt, for more information on our Senior Notes.
NOTE 10 - INFORMATION ON SEGMENTS
Our segment structure includes three operating segments consisting of Installation, Distribution and Manufacturing. 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 and therefore combine to form one operating segment.
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 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. In

13

INSTALLED BUILDING PRODUCTS, INC.
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)
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.
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.
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 Chief Executive Officer, who is also our Chief Operating Decision Maker ("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 represent our segment information for the three months ended March 31, 2023 and 2022 (in thousands):
Three months ended March 31, 2023
InstallationOtherEliminationsConsolidated
Revenue$622,742 $38,722 $(2,155)$659,309 
Cost of sales (1)
410,384 28,459 (1,766)437,077 
Segment gross profit$212,358 $10,263 $(389)$222,232 
Segment gross profit percentage34.1 %26.5 %18.1 %33.7 %
Three months ended March 31, 2022
InstallationOtherEliminationsConsolidated
Revenue$561,631 $26,650 $(789)$587,492 
Cost of sales (1)
385,692 19,373 (609)404,456 
Segment gross profit$175,939 $7,277 $(180)$183,036 
Segment gross profit percentage31.3 %27.3 %22.8 %31.2 %
(1)Cost of sales included in segment gross profit is exclusive of depreciation and amortization for the three months ended March 31, 2023 and 2022.
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:
Three months ended March 31,
20232022
Segment gross profit - consolidated$222,232 $183,036 
Depreciation and amortization (1)
11,810 10,633 
Gross profit, as reported210,422 172,403 
Operating expenses133,546 115,433 
Operating income 76,876 56,970 
Other expense, net9,517 10,745 
Income before income taxes$67,359 $46,225 
(1)Depreciation and amortization is excluded from segment gross profit for the three months ended March 31, 2023 and 2022.

14

INSTALLED BUILDING PRODUCTS, INC.
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)
NOTE 11 - DERIVATIVES AND HEDGING ACTIVITIES
Cash Flow Hedges of Interest Rate Risk
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 three months ended March 31, 2023, 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 March 31, 2023, we have not posted any collateral related to these agreements.
As of March 31, 2023 and December 31, 2022, we had the following interest rate swap derivatives outstanding:
Effective DateNotional AmountFixed RateMaturity Date
(in millions)
July 30, 2021$200.0 0.51 %December 31, 2025
December 31, 2021100.0 1.37 %December 31, 2025
December 31, 2021100.0 1.37 %December 31, 2025
December 31, 2025300.0 3.09 %December 14, 2028
December 31, 2025100.0 2.98 %December 14, 2028
As of March 31, 2023, our two forward interest rate swaps, combined with our three active 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 long-term liabilities on the Consolidated Balance Sheets at their fair value amounts as described in Note 9, Fair Value Measurements.
In July 2022, we amended the maturity date of each of our three active interest rate swaps to December 31, 2025 with the other terms remaining unchanged. The remaining 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 three months ended March 31, 2023, we amortized $1.7 million of the remaining unrealized gains as a decrease to interest expense, net.
The amended swaps included off-market terms at inception. This other-than-insignificant financing element will be amortized as an increase to interest expense, net through the December 31, 2025 maturity date of the amended swaps. For the three months ended March 31, 2023, we amortized $1.8 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 Condensed Consolidated Statements of Cash Flows due to the other-than-insignificant financing element.
In August 2020, we terminated two then-existing interest rate swaps and one then-existing forward interest rate swap. During the three months ended March 31, 2023 and 2022 we amortized $1.0 million and $0.8 million, respectively, of the remaining unrealized loss as an increase to interest expense, net.
The changes in the fair value of derivatives designated, and that qualify, as cash flow hedges are recorded in other comprehensive income, net of tax on the Condensed Consolidated Statements of Operations and Comprehensive Income and in accumulated other comprehensive income on the Condensed 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 three months ended March 31, 2023 and 2022.
Amounts reported in accumulated other comprehensive income 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 $10.4 million will be reclassified as a decrease to interest expense, net.

15

INSTALLED BUILDING PRODUCTS, INC.
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)
The following table summarizes amounts recorded to interest expense, net included in the Condensed Consolidated Statements of Operations and Comprehensive Income related to our interest rate swaps (in thousands):
Three months ended March 31,
20232022
(Benefit) expense associated with swap net settlements$(3,593)$795 
Expense associated with amortization of amended/terminated swaps1,104 790 
LIBOR was 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 Financial Accounting Standards Board (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. 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. See Note 19, Subsequent Events, for information on a change regarding the reference rate for our interest rate swaps.
NOTE 12 - STOCKHOLDERS’ EQUITY
Accumulated other comprehensive income
The change in accumulated other comprehensive income related to our interest rate derivatives, net of taxes, was as follows (in thousands):
Three months ended March 31,
20232022
Accumulated gain (loss) at beginning of period$40,560 $(227)
Unrealized (losses) gains in fair value(7,126)17,527 
Reclassifications of realized net losses to earnings817 584 
Accumulated gain at end of period$34,251 $17,884 
The reclassifications of realized net losses to earnings in the above table are recorded within interest expense, net.
Share repurchases
During the three months ended March 31, 2023 we did not repurchase any common stock. During the three months ended March 31, 2022 we repurchased approximately 511 thousand shares of our common stock with an aggregate price of approximately $49.9 million, or $97.57 average price per share. The effect of these treasury shares in reducing the number of common shares outstanding is reflected in our earnings per share calculation.
On February 22, 2023, we announced that 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. The new program replaces the previous program and is in effect through March 1, 2024.

16

INSTALLED BUILDING PRODUCTS, INC.
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)
Dividends
During the three months ended March 31, 2023, we declared and paid the following cash dividends (amount declared and amount paid in thousands):
Declaration DateRecord DatePayment DateDividend Per ShareAmount DeclaredAmount Paid
2/22/20233/15/20233/31/2023$0.90 $25,537 $25,270 
2/22/20233/15/20233/31/20230.33 9,364 9,266 
During the three months ended March 31, 2022, we declared and paid the following cash dividends (amount declared and amount paid in thousands):
Declaration DateRecord DatePayment DateDividend Per ShareAmount DeclaredAmount Paid
2/24/20223/15/20223/31/2022$0.90 $26,585 $26,242 
2/24/20223/15/20223/31/20220.315 9,305 9,184 
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. 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.
NOTE 13 - EMPLOYEE BENEFITS
Healthcare
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 $7.4 million and $8.9 million for the three months ended March 31, 2023 and 2022, respectively. An accrual for estimated healthcare claims incurred but not reported (“IBNR”) is included within accrued compensation on the Condensed Consolidated Balance Sheets and was $4.3 million and $3.8 million as of March 31, 2023 and December 31, 2022, respectively.
Workers’ Compensation
Workers’ compensation expense totaled $5.8 million and $5.7 million for the three months ended March 31, 2023 and 2022, respectively. Workers’ compensation known claims and IBNR reserves included on the Condensed Consolidated Balance Sheets were as follows (in thousands):
 March 31, 2023December 31, 2022
Included in other current liabilities$8,782 $9,946 
Included in other long-term liabilities16,550 13,730 
$25,332 $23,676 
We also had an insurance receivable for claims that exceeded the stop loss limit under our self-insured policies as well as claims under our fully insured policies included on the Condensed Consolidated Balance Sheets. This receivable offsets an equal liability included within the reserve amounts noted above and was as follows (in thousands):
 March 31, 2023December 31, 2022
Included in other non-current assets$2,743 $2,318 
Retirement Plans
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

17

INSTALLED BUILDING PRODUCTS, INC.
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)
plans cover substantially all our eligible employees. We recognized 401(k) plan expenses of $0.9 million and $0.8 million during the three months ended March 31, 2023 and 2022, respectively. These expenses are included in administrative expenses on the accompanying Condensed Consolidated Statements of Operations and Comprehensive Income.
Multiemployer Pension Plans
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.
Share-Based Compensation
Common Stock Awards
We periodically grant shares of our common stock to non-employee members of our board of directors and our employees. During the three months ended March 31, 2023 and 2022, we did not grant any such shares under our 2014 Omnibus Incentive Plan to non-employee members of our board of directors or employees.
Employees – Performance-Based Stock Awards
During the three months ended March 31, 2023, we issued approximately 61 thousand shares of our common stock to certain officers, which vest in two equal installments on each of April 20, 2024 and April 20, 2025. In addition, during the three months ended March 31, 2023, we established, and our board of directors approved, performance-based targets in connection with common stock awards to be issued to certain officers in 2024 contingent upon achievement of these targets.
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 Condensed Consolidated Balance Sheets. During the three months ended March 31, 2023 and 2022, we granted approximately 8 thousand and 39 thousand shares of our common stock, respectively. The shares granted in 2023 will vest in 2025, and the shares granted in 2022 vested in the second quarter of 2022.
Employees – Performance-Based Restricted Stock Units
During 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.

18

INSTALLED BUILDING PRODUCTS, INC.
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)
Share-Based Compensation Summary
Amounts and changes for each category of equity-based award were as follows:
 Common Stock AwardsPerformance-Based Stock AwardsPerformance-Based Restricted Stock Units
 AwardsWeighted Average Grant Date Fair Value Per ShareAwardsWeighted Average Grant Date Fair Value Per ShareUnitsWeighted Average Grant Date Fair Value Per Share
Nonvested awards/units at December 31, 2022
157,117 $77.31 126,053 $103.37 15,711 $80.55 
Granted7,690 109.76 69,281 109.09   
Vested(569)82.14     
Forfeited/Cancelled(398)86.72   (289)80.55 
Nonvested awards/units at March 31, 2023163,840 $78.79 195,334 $105.40 15,422 $80.55 
The following table summarizes the share-based compensation expense recognized under our 2014 Omnibus Incentive Plan (in thousands):
 Three months ended March 31,
 20232022
Common Stock Awards$1,393 $1,531 
Non-Employee Common Stock Awards148 124 
Performance-Based Stock Awards1,563 1,315 
Liability Performance-Based Stock Awards26 206 
Performance-Based Restricted Stock Units306 242 
$3,436 $3,418 
We recorded the following stock compensation expense by income statement category (in thousands):
 Three months ended March 31,
 20232022
Cost of sales$165 $149 
Selling136 62 
Administrative3,135 3,207 
$3,436 $3,418 
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.

19

INSTALLED BUILDING PRODUCTS, INC.
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)
Unrecognized share-based compensation expense related to unvested awards was as follows (in thousands):
 As of March 31, 2023
 Unrecognized
Compensation Expense
on Unvested Awards
Weighted Average
Remaining
Vesting Period
Common Stock Awards$5,561 1.7
Performance-Based Stock Awards11,112 2.1
Performance-Based Restricted Stock Units41 0.1
Total unrecognized compensation expense related to unvested awards$16,714 
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.
During the three months ended March 31, 2023, our employees surrendered approximately 200 shares of our common stock to satisfy tax withholding obligations arising in connection with the vesting of common stock awards issued under our 2014 Omnibus Incentive Plan.
As of March 31, 2023, approximately 1.6 million of the 3.0 million shares of common stock authorized for issuance were available for issuance under the 2014 Omnibus Incentive Plan.
NOTE 14 - INCOME TAXES
Our provision for income taxes as a percentage of pretax earnings is based on a current estimate of the annual effective income tax rate adjusted to reflect the impact of discrete items.
During both the three months ended March 31, 2023 and 2022, our effective tax rate was 26.8%. The rates for each of the three months ended March 31, 2023 and 2022 were unfavorably impacted by certain expenses not being deductible for income tax reporting purposes.
NOTE 15 - RELATED PARTY TRANSACTIONS
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 affiliated ownership.
We lease our headquarters and certain other facilities from related parties. See Note 8, Leases, for future minimum lease payments to be paid to these related parties.
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):
 Three months ended March 31,
 20232022
Sales$4,015 $560 
Purchases666 407 
Rent352 314 
We had a related party balance of approximately $2.3 million and $3.3 million included in accounts receivable on our Condensed Consolidated Balance Sheets as of March 31, 2023 and December 31, 2022, respectively. 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, Chief Executive Officer and President rejoined our board of directors in July of 2022, accounted for $1.5 million and $2.5 million of the related party accounts receivable balance as of March 31, 2023 and December 31, 2022,

20

INSTALLED BUILDING PRODUCTS, INC.
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)
respectively. Additionally, M/I Homes, Inc. accounted for a significant portion of our related party sales during the three months ended March 31, 2023.
NOTE 16 - COMMITMENTS AND CONTINGENCIES
Accrued General Liability and Auto Insurance
Accrued general liability and auto insurance reserves included on the Condensed Consolidated Balance Sheets were as follows (in thousands):
 March 31, 2023December 31, 2022
Included in other current liabilities$7,162 $7,479 
Included in other long-term liabilities16,621 17,528 
$23,783 $25,007 
We also had insurance receivables and indemnification assets included on the Condensed Consolidated Balance Sheets that, in aggregate, offset equal liabilities included within the reserve amounts noted above. The amounts were as follows (in thousands):
 March 31, 2023December 31, 2022
Insurance receivables and indemnification assets for claims under fully insured policies$2,643 $4,933 
Insurance receivables for claims that exceeded the stop loss limit75 380 
Total insurance receivables and indemnification assets included in other non-current assets$2,718 $5,313 
Leases
See Note 8, Leases, for further information regarding our lease commitments.
Other Commitments and Contingencies
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.
During the three months ended March 31, 2023, we entered into an supply agreement with variable pricing with one of our suppliers to purchase a portion of the material we utilize in our business. This agreement is effective March 31, 2023 through March 31, 2026 with a purchase obligation of 12.0 million pounds for 2023, 14.4 million pounds for 2024 and 17.3 million pounds for 2025.
NOTE 17 - BUSINESS COMBINATIONS
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 two business combinations during the three months ended March 31, 2023 and one business combination during the three months ended March 31, 2022.
The largest of our 2023 acquisitions was Anchor Insulation Co., Inc. (Anchor) in March 2023. Below is a summary of each significant acquisition by year, including revenue and net income since date of acquisition shown for the year of acquisition. Net income includes amortization and taxes when appropriate.

21

INSTALLED BUILDING PRODUCTS, INC.
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)
For the three months ended March 31, 2023 (in thousands):
Three months ended March 31, 2023
2023 AcquisitionsDateAcquisition TypeCash PaidSeller
Obligations
Total Purchase PriceRevenueNet Income
Anchor3/12/2023Share$35,928 $1,000 $36,928 $2,193 $51 
Other2/13/2023Asset2,090 131 2,221 444 15 
$38,018 $1,131 $39,149 $2,637 $66 
For the three months ended March 31, 2022 (in thousands):
Three months ended March 31, 2022
2022 AcquisitionsDateAcquisition TypeCash PaidSeller
Obligations
Total Purchase PriceRevenueNet Income
Other03/01/2022Share$8,050 $1,878 $9,928 $915 $97 
Acquisition-related costs recorded within administrative expenses on the Condensed Consolidated Statements of Operations and Comprehensive Income amounted to $0.6 million and $0.7 million for the three months ended March 31, 2023 and 2022, respectively. 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 approximately $13.0 million of goodwill for tax purposes as a result of 2023 acquisitions.
Purchase Price Allocations
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):
Three months ended March 31, 2023Three months ended March 31, 2022
AnchorOtherTotalOther
Estimated fair values:
Cash$10 $ $10 $87 
Accounts receivable3,661  3,661 772 
Inventories1,527 64 1,591 684 
Other current assets1,732  1,732 21 
Property and equipment2,428 381 2,809 1,049 
Operating lease right-of-use asset 28 28  
Intangibles16,420 1,120 17,540 4,634 
Goodwill12,870 670 13,540 2,743 
Other non-current assets184 13 197 7 
Accounts payable and other current liabilities(1,904)(46)(1,950)(69)
Other long-term liabilities (9)(9) 
Fair value of assets acquired and purchase price36,928 2,221 39,149 9,928 
Less seller obligations1,000 131 1,131 1,878 
Cash paid$35,928 $2,090 $38,018 $8,050 
Contingent consideration, non-compete agreements and/or amounts based on working capital calculations are included as “seller obligations” in the above table or within “fair value of assets acquired” if subsequently paid during the period presented. Contingent consideration payments consist primarily of earnouts based on performance that are recorded at fair value at the time of acquisition. When these payments are expected to be made over one year from the acquisition date, the contingent

22

INSTALLED BUILDING PRODUCTS, INC.
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)
consideration is discounted to net present value of future payments based on a weighted average of various future forecast scenarios.
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 and customary post-closing reviews are concluded during the measurement period attributable to each individual business combination. As a result, 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. Any acquisition acquired after March 31, 2022 is deemed to be within the measurement period and its purchase price considered preliminary. Goodwill and intangibles per the above table may not agree to the total gross increases of these assets as shown in Note 6, Goodwill and Intangibles, during each of the three months ended March 31, 2023 and 2022 due to 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. All acquisitions during the three months ended March 31, 2023 and 2022 had their respective goodwill assigned to our Installation operating segment.
Estimates of acquired intangible assets related to the acquisitions are as follows (in thousands):
 
For the three months ended March 31,
 20232022
Acquired intangibles assetsEstimated
Fair Value
Weighted Average Estimated
Useful Life (yrs.)
Estimated
Fair Value
Weighted Average Estimated Useful Life (yrs.)
Customer relationships$10,969 12$3,125 12
Trademarks and tradenames5,466 151,136 15
Non-competition agreements285 5374 5
Backlog820 1 0
Pro Forma Information
The unaudited pro forma information for the combined results of the Company has been prepared as if the 2023 acquisitions had taken place on January 1, 2022 and the 2022 acquisitions had taken place on January 1, 2021. 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, 2022 and 2021, respectively, and the unaudited pro forma information does not purport to be indicative of future financial operating results (in thousands, except per share data):

 Unaudited pro forma for the three months ended March 31,
 20232022
Net revenue$667,915 $623,603 
Net income49,590 34,974 
Basic net income per share1.77 1.19 
Diluted net income per share1.75 1.18 
Unaudited pro forma net income reflects additional intangible asset amortization expense of approximately $0.4 million and $1.9 million for the three months ended March 31, 2023 and 2022, respectively, as well as additional income tax expense of approximately $0.1 million and $0.4 million for the three months ended March 31, 2023 and 2022, respectively, that would have been recorded had the 2023 acquisitions taken place on January 1, 2022 and the 2022 acquisitions taken place on January 1, 2021.

23

INSTALLED BUILDING PRODUCTS, INC.
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)
NOTE 18 - INCOME PER COMMON SHARE
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.
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 was approximately 203 thousand and 278 thousand shares for the three months ended March 31, 2023 and 2022, respectively. Approximately 4 thousand shares of potential common stock were not included in the calculation of diluted net income per common share for the three months ended March 31, 2023 because the effect would have been anti-dilutive. There were no shares that would have been considered anti-dilutive for the three months ended three months ended March 31, 2022.
NOTE 19 - SUBSEQUENT EVENTS
We announced on May 4th, 2023 that our board of directors declared a quarterly dividend, payable on June 30, 2023 to stockholders of record on June 15, 2023, at a rate of 33.0 cents per share.
In April 2023, we notified the lenders on our $500.0 million, seven-year term loan facility due December 2028 (the "Term Loan") under our credit agreement (the "Term Loan Agreement") that we have elected to trigger a benchmark replacement from LIBOR to the Secured Overnight Financing Rate ("Term SOFR"). This trigger includes a credit spread adjustment of 0.11%, 0.26% and 0.43% for interest periods of one month, three months and six months, respectively, and it is subject to the same floor as currently set forth in the Term Loan Agreement. The new Term SOFR rate was effective on April 28, 2023. Also in April 2023, we transitioned our interest rate swap derivatives to Term SOFR to avoid a mismatch of rates.

24


Item 2. Management’s Discussion and Analysis of Financial Condition and Results of Operations
This Management’s Discussion and Analysis of Financial Condition and Results of Operations should be read in conjunction with our consolidated financial statements and related notes in “Item 1. Financial Statements” of this Form 10-Q, as well as our 2022 Form 10-K.
OVERVIEW
We are one of the nation’s largest insulation installers for the residential new construction market and are also a diversified installer of complementary building products throughout the United States, including waterproofing, fire-stopping and fireproofing, garage doors, rain gutters, window blinds, shower doors, closet shelving, mirrors and other products. 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 240 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. In addition, two regional distribution operations serve the Midwest, Mountain West, Northeast and Mid-Atlantic regions of the United States, and we operate a cellulose manufacturing facility. We believe our business is well positioned to continue to profitably grow over the long-term due to our strong balance sheet, liquidity and our continuing acquisition strategy.
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 availability of mortgage financing. The strategic acquisitions of multiple companies over the last several years contributed meaningfully to our 12.2% increase in net revenue during the three months ended March 31, 2023 compared to 2022.
2023 First Quarter Highlights
Net revenue increased 12.2%, or $71.8 million to $659.3 million, while gross profit increased 22.1% to $210.4 million during the three months ended March 31, 2023 compared to 2022. The increase in net revenue and gross profit was primarily driven by selling price and product mix improvements and the contribution of our recent acquisitions. We continue to make pricing adjustments to offset the current macroeconomic inflationary trends as evidenced by the 16.5% increase in our price/mix metric for our Installation segment. Gross profit margin grew faster than revenue as we continued to prioritize profitability over sales volume. Specifically, gross profit outpaced sales growth due to higher selling prices and resulting leverage gained on labor and other costs of sales, including lower material costs as recent supply chain constraints began showing signs of easing. Certain net revenue and industry metrics we use to monitor our operations are discussed in the "Key Measures of Performance" section below, and further details regarding results of our various end markets are discussed further in the "Net Revenue, Cost of Sales and Gross Profit" section below.
As of March 31, 2023, we had $218.7 million of cash and cash equivalents, and we have not drawn on our revolving line of credit. This strong liquidity position allowed us to return capital to shareholders by paying a variable annual dividend of $0.90 per share, or $25.3 million in the aggregate, as well as increasing our regular quarterly dividend 5% to $0.33 per share, or $9.0 million in the aggregate, during the three months ended March 31, 2023. During the quarter, our board of directors also authorized a new stock repurchase program which replaces our previous stock repurchase program that allows for the repurchase of up to $200.0 million of our outstanding common stock.
Key Measures of Performance
We utilize certain net revenue and industry metrics to monitor our operations. Key metrics include 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. We also monitor sales growth for our Installation segment by end market and track volume growth and price/mix growth.
We believe the revenue growth measures 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.

25


The following table shows key measures of performance we utilize to evaluate our results:
Three months ended March 31,
20232022
Period-over-period Growth
Consolidated Sales Growth12.2 %34.4 %
Consolidated Same Branch Sales Growth (1)
7.1 %22.5 %
Installation
Sales Growth (2)
10.9 %30.0 %
Same Branch Sales Growth (1)(2)
7.0 %22.2 %
Single-Family Sales Growth (3)
1.6 %37.4 %
Single-Family Same Branch Sales Growth (1)(3)
(2.6)%29.4 %
Multi-Family Sales Growth (4)
38.1 %24.6 %
Multi-Family Same Branch Sales Growth (1)(4)
37.9 %23.1 %
Residential Sales Growth (5)
7.4 %35.2 %
Residential Same Branch Sales Growth (1)(5)
3.8 %28.3 %
Commercial Sales Growth (6)
27.0 %13.0 %
Commercial Same Branch Sales Growth (1)(6)
22.4 %5.9 %
Other
Sales Growth (7)
45.3 %407.3 %
Same Branch Sales Growth (1)(7)
12.9 %50.8 %
Same Branch Sales Growth - Installation (8)
Volume Growth (1)(9)
(9.3)%9.7 %
Price/Mix Growth (1)(10)
16.5 %14.6 %
U.S. Housing Market (11)
Total Completions Growth11.7 %(3.4)%
Single-Family Completions Growth
1.4 %1.5 %
Multi-Family Completions Growth
50.8 %(18.7)%
(1)
Same-branch basis represents period-over-period growth for branch locations owned greater than 12 months as of each financial statement date.
(2)
Calculated based on period-over-period growth of all end markets for our Installation segment.
(3)
Calculated based on period-over-period growth in the single-family subset of the residential new construction end market for our Installation segment.
(4)
Calculated based on period-over-period growth in the multi-family subset of the residential new construction end market for our Installation segment.
(5)
Calculated based on period-over-period growth in the residential new construction end market for our Installation segment.
(6)
Calculated based on period-over-period growth in the total commercial end market for our Installation segment. Our commercial end market consists of heavy and light commercial projects.
(7)
Calculated based on period-over-period growth in our Other category which consists of our Manufacturing and Distribution operating segments. Our distribution businesses were acquired in December, 2021 and April, 2022.
(8)
The heavy commercial end market, a subset of our total commercial end market, comprises projects that are much larger than our average installation job. This 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.
(9)
Calculated as 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.
(10)
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.
(11)U.S. Census Bureau data, as revised.

26


Net Revenue, Cost of Sales and Gross Profit
The components of gross profit were as follows (in thousands):
 Three months ended March 31,
 2023Change2022
Net revenue$659,309 12.2 %$587,492 
Cost of sales448,887 8.1 %415,089 
Gross profit$210,422 22.1 %$172,403 
Gross profit percentage31.9 %29.3 %
Net revenue increased during the three months ended March 31, 2023 primarily due to increased selling prices and product mix improvements, acquisitions and organic growth from our existing branches as shown in the Key Measures of Performance section above. Installation revenue increased 10.9% for the three months ended March 31, 2023, respectively, driven by continued strong growth in the new residential multifamily market which grew 38.1% as well as growth in the commercial market which increased 27.0% over the prior year period. Our largest end market, the single-family subset of the residential new construction market, grew revenue 1.6% over the same period ended March 31, 2022. The remaining overall growth in net revenue for the three months ended March 31, 2023 is attributable to the acquisition of Central Aluminum which, combined with AMD Distribution, form our Distribution operating segment. This operating segment, combined with our Manufacturing operating segment, experienced 12.9% organic growth, or 45.3% including the Central Aluminum acquisition, for the three months ended March 31, 2023.
As a percentage of net revenue, gross profit improved during the three months ended March 31, 2023 compared to the corresponding prior year period primarily on the strength of price/mix growth and resulting leverage gained on labor and other costs of sales. We continued to focus on profitability over volume gains, and this had a noticeable impact on gross profit this quarter. While inflation and material supply chain issues that affected our business and industry in recent years are likely to persist through 2023, we have seen inflation moderate since the end of 2022 and signs that the supply chain is improving. 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.
Operating Expenses
Operating expenses were as follows (in thousands):
 Three months ended March 31,
 2023Change2022
Selling$32,607 29.4 %$25,192 
Percentage of total net revenue4.9 %4.3 %
Administrative$89,504 13.1 %$79,144 
Percentage of total net revenue13.6 %13.5 %
Amortization$11,435 3.0 %$11,097 
Percentage of total net revenue1.7 %1.9 %
Selling
The dollar increase in selling expenses for the three months ended March 31, 2023 was primarily driven by an increase in selling wages and commissions to support our increased net revenue of 12.2% and higher credit loss provisions due to increased sales. Selling expense as a percentage of sales increased for the three months ended March 31, 2023 compared to 2022 primarily due to increased commissions from changes in product mix and more profitable completed jobs.
Administrative
The dollar increase in administrative expenses for the three months ended March 31, 2023 was primarily due to an increase in wages and facility costs from acquisitions and to support organic growth. Administrative expenses slightly increased as a percentage of sales for the three months ended March 31, 2023 compared to 2022 primarily due to inflationary pressures and increased number of employees leading to higher wages and benefits.

27


Amortization
The increase in amortization expense for the three months ended March 31, 2023 was attributable to the increase in finite-lived intangible assets recorded as a result of acquisitions.
Other Expense, Net
Other expense, net was as follows (in thousands):
Three months ended March 31,
2023Change2022
Interest expense, net$9,670 (8.8)%$10,600 
Other (income) expense(153)(205.5)%145 
Total other expense, net$9,517 $10,745 
The decrease in interest expense, net during the three months ended March 31, 2023 compared to 2022 was primarily due to increased interest income due to higher yields on cash deposits offsetting the expense, partially offset by increased interest expense on variable rate debt.
Income Tax Provision
Income tax provision and effective tax rates were as follows (in thousands):
Three months ended March 31,
20232022
Income tax provision$18,085 $12,403 
Effective tax rate26.8 %26.8 %
During both the three months ended March 31, 2023 and 2022, our effective tax rates were 26.8%. The rates for both periods were unfavorably impacted by certain expenses not deductible for income tax reporting purposes.
Other Comprehensive (Loss) Income, Net of Tax
Other comprehensive (loss) income, net of tax was as follows (in thousands):
Three months ended March 31,
20232022
Net change on cash flow hedges, net of taxes$(6,309)$18,111 
During the three months ended March 31, 2023, we recorded unrealized losses of $7.1 million, net of taxes, respectively, on our cash flow hedges due to the market's expectations for lower long-term interest rates in the future relative to our three existing interest rate swaps and our two forward interest rate swaps. We also amortized $1.1 million of our remaining unrealized gains and losses, net, on our terminated cash flow hedges to interest expense during three months ended March 31, 2023, not including the offsetting tax effects of $0.3 million.
During the three months ended March 31, 2022, we recorded an unrealized gain of $17.5 million, net of tax, and amortized $0.8 million of our remaining unrealized loss on our terminated cash flow hedges, not including the offsetting tax effect of $0.2 million.
KEY FACTORS AFFECTING OUR OPERATING RESULTS
Inflation and Interest Rates
The fast recovery in residential housing demand helped offset prolonged impacts of the COVID-19 pandemic already experienced. However, the strong demand for residential housing has caused inflationary pressure on materials used in our industry. Inflation has also affected the economy as a whole as consumer price inflation has 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 2023 and signaling plans to continue raising the rate in

28


2023. This caused the average mortgage rate in the United States to increase rapidly since the end of 2021. Rising interest rates began to curtail housing demand in the second half of 2022 and first quarter of 2023, reducing mortgage financing affordability. As a result, the single family homebuilding market began showing signs of weakening in late 2022 and early 2023 and housing starts and permits are forecasted to decline in 2023.
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 the backlog in our growing multi-family business will help to offset any declines we may face in the residential homebuilding market. Also, many existing homeowners are locked into low interest mortgages, and an aging housing stock exists in many areas of the United States. We expect these factors, combined with incentives from the Inflation Reduction Act of 2022, to drive growth in the repair and remodel markets we service.
Cost and Availability of Materials

We typically purchase the materials that we install directly from manufacturers, and the products we sell are either purchased from manufacturers or other suppliers or are manufactured by us. The industry supply of these materials experienced supply shortages in 2022 due to strong demand and effects from the COVID-19 pandemic. The higher demand for materials coupled with supply chain issues including raw material shortages, supplier labor shortages, bottlenecks and shipping constraints showed signs of easing during the three months ended March 31, 2023. However, we expect the supply chain disruptions affecting some of the materials used throughout our installation work to continue throughout 2023. We will continue to prioritize the effective management of our supply chain by our purchasing, logistics and warehousing teams.
In addition, we experience price increases from our suppliers from time to time, including multiple increases over the last few 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 throughout the remainder of 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. See “COVID-19 Impacts” below for a discussion of the short-term impacts of the current economic climate on the availability of the materials we install.
Cost of Labor
Our business is labor intensive and the majority of our employees 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’ compensation costs may continue to rise as we increase our coverage for additional personnel. We obtained leverage on our labor costs in the three months ended March 31, 2023 compared to 2022 due to increased selling prices per job. However, inflation and market competition could increase these costs in the near-term.
We have experienced strong employee retention, turnover and labor efficiency rates that exceed industry standards. 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.
COVID-19 Impacts
The COVID-19 pandemic has caused significant volatility, uncertainty and economic disruption. As the pandemic continues to move toward 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

29


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 throughout 2023.
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. As discussed in the sections above, our commercial business experienced strong sales growth during the three months ended March 31, 2023, signaling a potential improvement in this market. However, we continue to evaluate the nature and extent of the COVID-19 pandemic’s impact on our financial condition, results of operations and cash flows of the commercial business.
LIQUIDITY AND CAPITAL RESOURCES
Our capital resources primarily consist of cash from operations and borrowings under our various debt agreements and capital equipment leases and loans. As of March 31, 2023, we had cash and cash equivalents of $218.7 million as well as access to $250.0 million under our asset-based lending credit facility (as defined below), less $5.8 million of outstanding letters of credit, resulting in total liquidity of $462.9 million. This total liquidity was 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.
We faced unprecedented increases in pricing for certain insulation materials in 2021 and 2022. While pricing for some of these materials continued to increase in the first quarter of 2023, pricing for other products began to moderate. Increased market pricing on materials has a negative impact on liquidity due to the higher prices we must pay for materials.
Short-Term Material Cash Requirements
Our primary capital requirements are to fund working capital needs, operating expenses, acquisitions and capital expenditures, to meet principal and interest obligations and to make required income tax payments. We may also use our resources to fund our optional stock repurchase program and pay quarterly and annual dividends. In addition, we expect to spend cash and cash equivalents to acquire various companies with at least $100.0 million in aggregate net revenue each fiscal year. The amount of cash paid for an acquisition is dependent on various factors, including the size and determined value of the business being acquired.
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).
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 three months ended March 31, 2023 and 2022. 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. In the short-term, we expect the seasonal trends we typically experience to vary from historical patterns, with the first half of 2023 experiencing stronger volumes than the second half of 2023 due to the large industry backlog of projects either in process or authorized but not started. This could affect the timing of cash collections and payments during each quarter of 2023.
Long-Term Material Cash Requirements
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.

30


On a long-term basis, our sources of capital could be insufficient to meet our needs and growth strategy. We may refinance existing debt or obtain further debt financing in the future to the extent that our sources of capital are insufficient.
In "Management's Discussion and Analysis of Financial Condition and Results of Operations" included in the 2022 Form 10-K, we disclosed that we had $1.0 billion aggregate long-term material cash requirements as of December 31, 2022. During the three months ended March 31, 2023, we signed a long-term purchase commitment with variable pricing to purchase 43.7 million pounds of material over the next three years. See Note 16, Commitments and Contingencies, for more information on this commitment. There have been no other material changes to our cash requirements during the period covered by this 10-Q outside of the normal course of our business.
Sources and Uses of Cash and Related Trends
Working Capital
We carefully manage our working capital and operating expenses. As of March 31, 2023 and December 31, 2022, our working capital, including cash and cash equivalents, was $546.3 million and $556.4 million. This decrease was primarily due to the decrease in cash of $10.9 million resulting from the payment of our annual and first quarter dividends and increased acquisition activity. Inventories decreased by $6.5 million as a result of reduced warehoused materials due to easing supply chain shortages and lower sales volume growth. These factors also led to a decrease of $14.4 million in accounts payable which partially offsets the reduction in inventories and cash.
The following table summarizes our cash flow activity (in thousands):
Three months ended March 31,
20232022
Net cash provided by operating activities$73,833 $48,225 
Net cash used in investing activities(47,614)(68,718)
Net cash used in financing activities(37,156)(95,558)
Cash Flows from Operating Activities
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 on 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.
Net cash provided by operating activities increased from 2022 to 2023 primarily due to the increases in net income, changes in certain working capital requirements, income tax expense payment timing and various noncash adjustments, partially offset by the reduction of our accounts payable and other liabilities balances.
Cash Flows from Investing Activities
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.
Net cash used by investing activities decreased from 2022 to 2023 primarily due to the purchase of short-term investments during the three months ended March 31, 2022, partially offset by the increase in spending on acquisitions and property and equipment in 2023.
Cash Flows from Financing Activities
Our sources of cash from financing activities consist of proceeds from the issuances of vehicle and equipment notes payable and, periodically, other sources of debt financing. Cash used in financing activities consists primarily of debt repayments, acquisition-related obligations, dividends and stock repurchases.

31


Net cash used by financing activities decreased from 2022 to 2023 primarily due to the repurchase of common stock under our previous stock repurchase plan and higher acquisition-related obligations during the three months ended March 31, 2022. Our net cash used by financing activities was also offset during the three months ended March 31, 2023 by proceeds from vehicle and equipment notes. See Note 12, Stockholders' Equity, for more information on the repurchase of common stock.
Debt
5.75% Senior Notes due 2028
In September 2019, we issued $300.0 million in aggregate principal amount of 5.75% senior unsecured notes (the “Senior Notes”). The Senior Notes will mature on February 1, 2028 and interest is 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.
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.
Credit Facilities
In December 2021, we amended and restated our $500 million, seven-year term loan facility due December 2028 (the “Term Loan”) under our credit agreement (the “Term Loan Agreement”), dated as of December 14, 2021 with Royal Bank of Canada as the administrative agent and collateral agent thereunder. The amended Term Loan amortizes in quarterly principal payments of $1.25 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. See Note 19, Subsequent Events, for information on a change regarding the reference rate for our Term Loan. 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 to pay for certain fees and expenses associated with the closing of the Term Loan and for general corporate purposes, including acquisitions and other growth initiatives. As of March 31, 2023, we had $488.2 million, net of unamortized debt issuance costs, due on our Term Loan.
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 million, subject to certain exceptions and limitations.
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.0 million from $200.0 million, and permits us to further increase 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 dependent upon achieving certain sustainability targets, in addition to making other modifications to the ABL Credit Agreement. In connection with the Term Loan Agreement, we entered into a Third Amendment (the “Third Amendment”) to the ABL/Term Loan Intercreditor Agreement with Bank of America, N.A., as ABL Agent for the lenders under the ABL Credit Agreement, and Royal Bank of Canada as collateral agent under the Term Loan Agreement. Including outstanding letters of credit, our remaining availability under the ABL Revolver as of March 31, 2023 was $244.2 million.

32


All of the obligations under the Term Loan and ABL Revolver are guaranteed by all of the Company’s existing restricted subsidiaries and will be guaranteed by the Company’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.
The ABL Revolver also 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.
The ABL Credit Agreement contains a financial covenant requiring the satisfaction of a minimum 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.
At March 31, 2023, we were in compliance with all applicable covenants under the Term Loan Agreement, ABL Credit Agreement and the Senior Notes.
Derivative Instruments
As of March 31, 2023, we had three active interest rate swaps and two forward interest rate swaps. On July 8, 2022, we amended the maturity dates of our three active interest rate swaps. Prior to the amendment, we held one interest rate swap with a $200.0 million notional, a fixed rate of 0.51% and a maturity date of April 15, 2030. We also had two interest rate swaps, each with a $100.0 million notional, a fixed rate of 1.37% and a maturity date of December 15, 2028. As amended, each of these three swaps have a maturity day of December 31, 2025 with the other terms unchanged. We also entered into two new forward interest rate derivatives in July 2022. One forward interest rate swap has an effective date of December 31, 2025, a beginning notional of $300.0 million and a fixed rate of 3.09%. The other new forward interest rate swap also has an effective date of December 31, 2025, a beginning notional of $100.0 million and a fixed rate of 2.98%. For further information about our interest rate swaps, see Note 11, Derivatives and Hedging Activities. The assets and liabilities associated with the interest rate swaps are included in other non-current assets and other current liabilities on the Consolidated Balance Sheets at their fair value amounts as described in Note 9, Fair Value Measurements.
LIBOR was used as a reference rate for our Term Loan and our interest rate swap agreements we use to hedge our interest rate exposure. See Note 19, Subsequent Events, for information on a change regarding the reference rate for our interest rate swaps.
Vehicle and Equipment Notes
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.
Total outstanding loan balances relating to our master loan and equipment agreements were $74.1 million as of March 31, 2023 and $73.0 million as of December 31, 2022, respectively. Depreciation of assets held under these agreements is included within cost of sales on the Condensed Consolidated Statements of Operations and Comprehensive Income.
Letters of Credit and Bonds
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, workers’ compensation and auto insurance programs. Permit and license bonds are typically issued

33


for one year and are required by certain municipalities when we obtain licenses and permits to perform work in their jurisdictions.
The following table summarizes our outstanding bonds, letters of credit and cash-collateral (in thousands):
 As of March 31, 2023
Performance bonds$104,126 
Insurance letters of credit and cash collateral68,485 
Permit and license bonds9,703 
Total bonds and letters of credit$182,314 
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 March 31, 2023, we have $1.6 million deposited into a trust to serve as additional collateral for our workers’ compensation and general liability policies. This collateral is included in the table above and can be converted to a letter of credit at our discretion and is therefore not considered to be restricted cash.
Critical Accounting Policies and Estimates
Management’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 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. There have been no significant changes to our critical accounting policies and estimates during the three months ended March 31, 2023 from those disclosed in the “Management’s Discussion and Analysis of Financial Condition and Results of Operations” section of our 2022 Form 10-K.
Recent Accounting Pronouncements
For a description of recently issued and/or adopted accounting pronouncements, see Note 2, Significant Accounting Policies, to our audited consolidated financial statements included in our 2022 Form 10-K.
Forward-Looking Statements
This Quarterly Report on Form 10-Q contains forward-looking statements within the meaning of the federal securities laws, including with respect to the housing market and the commercial market, our operations, economic and industry conditions, our financial and business model, payments of dividends, the impact of COVID-19 on our business and end markets, the demand for our services and product offerings, trends in the commercial business, expansion of our national footprint and end markets, diversification of our products, 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, our efforts to navigate the material pricing environment, our ability to increase selling prices, our material and labor costs, supply chain and material constraints, the impact of COVID-19 on our financial results 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 “anticipate,” “believe,” “estimate,” “project,” “predict,” “possible,” “forecast,” “may,” “could,” “would,” “should,” “expect,” “intends,” “plan,” and “will” 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 on our business and financial results, our supply chain, the economy and the markets we serve; 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; the risk that the Company may reduce, suspend or eliminate dividend payments in the future; and the factors discussed in the “Risk Factors” section of our 2022 Form 10-K, as the same may be updated from time to time in our subsequent filings with the SEC. In

34


addition, any future declaration of dividends will be subject to the final determination of our Board of Directors. 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.
Item 3. Quantitative and Qualitative Disclosures About Market Risk
We are exposed to market risks related to fluctuations in interest rates on our outstanding variable rate debt. As of March 31, 2023, we had $493.8 million outstanding on our Term Loan, gross of unamortized debt issuance costs, no outstanding borrowings on our ABL Revolver and no outstanding borrowings under finance leases subject to variable interest rates. As of March 31, 2023, we had three active and two forward interest rate swaps which, when combined, serve to hedge $400.0 million of the variable cash flows on our Term Loan until its maturity unless extended. As a result, total variable rate debt of $93.8 million was exposed to market risks as of March 31, 2023. A hypothetical one percentage point increase (decrease) in interest rates on our variable rate debt would increase (decrease) our annual interest expense by approximately $0.9 million. Our Senior Notes accrue interest at a fixed rate of 5.75%.
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.
LIBOR was 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 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. It is unclear whether new methods of calculating LIBOR will be established after that date. Our Term Loan Agreement and 2021 interest rate swap agreements include 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 LIBOR ceases to exist after 2023, the interest rates under the alternative rate could be higher than LIBOR. 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. 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. See Note 19, Subsequent Events, for information on a change regarding the reference rate for our Term Loan and interest rate swaps.
Item 4. Controls and Procedures
Evaluation of Disclosure Controls and Procedures
We have evaluated the effectiveness of our disclosure controls and procedures as of the end of the period covered by this report with the participation of our Chief Executive Officer (“CEO”) and Chief Financial Officer (“CFO”) as required by Exchange Act Rules 13a-15(e) and 15d-15(e). Based on that evaluation, our CEO and CFO concluded that our disclosure controls and procedures were effective as of March 31, 2023.
Changes in Internal Control over Financial Reporting
There were no changes in our internal control over financial reporting during the three months ended March 31, 2023 that materially affected, or are reasonably likely to materially affect, our internal control over financial reporting.

35


PART II – OTHER INFORMATION
Item 1. Legal Proceedings
See Part I, Item 1. Financial Statements, Note 16, Commitments and Contingencies – Other Commitments and Contingencies, for information about existing legal proceedings.
Item 1A. Risk Factors
As of the date of this report, there have been no material changes from the risk factors disclosed in our 2022 Form 10-K.
Item 2. Unregistered Sales of Equity Securities and Use of Proceeds
The following table shows the stock repurchase activity, including shares surrendered by employees in connection with the vesting of restricted stock awards, for the three months ended March 31, 2023:
 Total Number
of Shares
Purchased
Average
Price Paid
Per Share
Total Number of Shares Purchased as Part of Publicly Announced Plans or Programs
Approximate Dollar Value of Shares that May Yet Be Purchased under the Plans or Programs (2)
January 1 - January 31, 2023 (1)
89 $87.76 — $— 
February 1 - February 28, 2023 — — — — 
March 1 - March 31, 2023 (1)
94 114.03 — 200.0 million 
183 $101.25 — $200.0 million
(1)Represents shares surrendered to the Company by employees to satisfy tax withholding obligations arising in connection with the vesting of 566 shares of restricted stock awarded under our 2014 Omnibus Incentive Plan.
(2)On February 22, 2023, we announced that 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. The new program replaces the previous program and is in effect through March 1, 2024. We did not repurchase any common stock under our stock repurchase programs during the three months ended March 31, 2023. For further information about our stock repurchase program, see Note 12, Stockholders' Equity.
Item 3. Defaults Upon Senior Securities
There have been no material defaults in senior securities.
Item 4. Mine Safety Disclosures
Not applicable.
Item 5. Other Information
The Company’s employment agreement with Jeffrey Edwards, our Chief Executive Officer, President and Chairman, was amended and restated on May 3, 2023, to extend Mr. Edwards’ employment term to April 15, 2026, and after such date, provide for automatic five-year renewals, unless either party provides at least 90 days’ prior notice of non-renewal or unless the agreement is earlier terminated.


36


Item 6. Exhibits
(a)(3) Exhibits
The following exhibits are being filed as part of this Quarterly Report on Form 10-Q:

Exhibit
  Number
  Description
10.1*#
31.1*  
31.2*  
32.1*  
32.2*  
101**  
The following financial statements from the Company's Quarterly Report on Form 10-Q for the period ended March 31, 2023, formatted in inline XBRL, include: (i) Condensed Consolidated Balance Sheets, (ii) Condensed Consolidated Statements of Operations and Comprehensive Income, (iii) Condensed Consolidated Statements of Stockholders’ Equity, (iv) Condensed Consolidated Statements of Cash Flows and (v) the Notes to the Condensed Consolidated Financial Statements.
104**Cover Page Interactive Data File (formatted in Inline XBRL and contained in Exhibit 101).
*    Filed herewith.
**    Submitted electronically with the report.
#     Indicates management contract.


37


SIGNATURES

Pursuant to the requirements of the Securities Exchange Act of 1934, the registrant has duly caused this report to be signed on its behalf by the undersigned, thereunto duly authorized.

Date: May 4, 2023

INSTALLED BUILDING PRODUCTS, INC.
By: /s/ Jeffrey W. Edwards
 Jeffrey W. Edwards
 President and Chief Executive Officer
By: /s/ Michael T. Miller
 Michael T. Miller
 Executive Vice President and Chief Financial Officer


EX-10.1 2 ibp-20230331xex101.htm EX-10.1 Document

AMENDED AND RESTATED
EMPLOYMENT AGREEMENT
Amended and Restated May 3, 2023
This Employment Agreement (this “Agreement”), dated as of April 15, 2021 (the “Effective Date”), is made by and among Installed Building Products, Inc., a Delaware corporation, having its principal offices at 495 South High Street, Suite 50, Columbus, Ohio 43215 (the “Company”), and Jeffrey W. Edwards (the “Executive”).
AGREEMENT
In consideration of the premises and mutual covenants herein contained, and intending to be legally bound hereby, the parties hereto hereby agree as follows, effective as of the Effective Date:
1.Employment. As of the Effective Date, the Company and Executive hereby agree that, during the Initial Term and each Subsequent Term (as defined in Section 2 below), the Executive shall be employed as Chief Executive Officer and President of the Company, and the Executive hereby accepts such employment. Effective on the Effective Date, the Executive shall serve as Chairman of the Board of Directors of the Company (the “Board”). During the Initial Term and each Subsequent Term and for so long as shares of the Company’s capital stock are traded on a national securities exchange, the Company shall use reasonable efforts as may be necessary to nominate the Executive for re-election as a member of the Board.
2.Term of Employment. The “Initial Term” of employment under this Agreement shall be the period commencing on the Effective Date and ending on April 15, 2026 (the “Expiration Date”), unless earlier terminated as provided in Section 5. This Agreement shall be automatically renewed for additional five year terms (each, a “Subsequent Term”) on the Expiration Date and each anniversary of the Expiration Date thereafter, unless earlier terminated as provided in Section 5 or unless the Executive gives notice to the Company, or the Company gives notice to the Executive, at least ninety (90) days prior to the expiration of the Initial Term or any Subsequent Term of such party’s desire to terminate the Term (such notice to be delivered in accordance with Section 9.3).
3.Positions, Responsibilities and Duties.
1.1Positions. During the Initial Term and each Subsequent Term, the Executive shall serve as Chief Executive Officer and President of the Company. In this capacity, the Executive shall have the duties, authorities and responsibilities commensurate with the duties, authorities and responsibilities of persons in such position in companies similar in nature and size to the Company, and such other duties, authorities and responsibilities as the Board shall designate from time to time that are not inconsistent with the Executive’s position as the Chief Executive Officer and President of the Company. During the Initial Term and each Subsequent Term, the Executive shall report to the Board.
1.2Duties. During the Initial Term and each Subsequent Term, the Executive shall devote the amount of his business time necessary and proper to conduct the business and affairs of the Company, and the Executive shall use his best efforts to perform faithfully the duties and responsibilities contemplated by this Agreement; provided, however, that the Executive shall be allowed, to the extent such activities do not create a conflict of interest or substantially interfere with the performance of his duties and responsibilities hereunder, to (i) manage his personal and family, financial and legal affairs; (ii) participate in charitable, civic, educational, professional, community and industry affairs, including without limitation board or committee service for the Columbus Foundation, the Salvation Army, the Columbus Museum of



Art, the Columbus Partnership and the Harvard University Joint Center for Housing Studies; and (iii) continue to engage in non-competitive operational activities for the Real Estate Business (as defined below). The parties hereby acknowledge that the Executive, in addition to the services he performs for the Company, has historically operated a substantial real estate development business (the “Real Estate Business”) and, during the Initial Term and each Subsequent Term, it is expected that the Executive will continue to engage in the Real Estate Business in accordance with the terms and conditions of this Agreement. The parties hereby acknowledge and agree that, although Executive’s principal place of business will be the Company’s headquarters in Columbus, Ohio, the Executive shall be permitted to carry out his duties and responsibilities under this Agreement from any other location deemed appropriate by the Executive.
4.Compensation and Other Benefits.
1.1Base Salary and Bonus. During the Initial Term and each Subsequent Term, the Executive shall receive a base salary per annum payable in accordance with the Company’s normal payroll practices of not less than $600,000 (“Base Salary”), subject to adjustments as may be determined by the Compensation Committee of the Board (the “Compensation Committee”) from time to time. During the Initial Term and each Subsequent Term, the Executive will be eligible to participate in the Company’s annual incentive and long-term incentive programs, as may be in effect from time to time in accordance with the Company’s compensation practices and the terms and provisions of such programs, as established by the Compensation Committee.
1.2Benefits. During the Initial Term and each Subsequent Term, the Executive shall be entitled to participate in any employee benefit plan that the Company has adopted or may adopt, maintain or contribute to for the benefit of its employees generally, subject to satisfying the applicable eligibility requirements. The Executive shall accrue vacation at a rate of four (4) weeks per year in accordance with the Company’s vacation policies. Notwithstanding the foregoing, the Company may modify or terminate any employee benefit plan at any time.
1.3Expense Reimbursement. Upon presentation of appropriate documentation, the Executive shall be entitled to receive reimbursement from the Company of all reasonable business expenses incurred by the Executive in performing services (including automobile reimbursement) hereunder, provided that such expenses shall be paid and must be incurred in accordance with the Company’s expense reimbursement policy, and any other applicable policies and procedures established from time to time by the Company.
5.Termination. The Executive’s employment and the Initial Term or any Subsequent Term shall terminate on the first of the following to occur:
1.1Death. Automatically on the date of death of the Executive.
1.2Disability. The date on which the Executive shall have experienced a Disability. For purposes of this Agreement, “Disability” shall mean either (i) a long-term disability entitling the Executive to receive benefit payments under the Company’s long-term disability plan as then in effect or (ii) if no such plan is then in effect or applicable to the Executive, the Executive’s incapacity, due to physical or mental illness, which has rendered him unable to perform the essential functions of his position for a total of one hundred twenty (120) days (whether or not consecutive) during any consecutive 365-day period; provided, further, that any question as to the existence of the Disability of the Executive under subclause (ii) above as to which the parties hereto cannot agree shall be determined in writing by a qualified independent licensed healthcare provider selected by the Company. The determination of a Disability by such healthcare provider shall be final and conclusive for all purposes of this
    2


Agreement. In conjunction with the foregoing, the Executive shall agree to consent to any such examinations which are relevant to a determination of whether he is mentally and/or physically disabled, or which is required by such healthcare provider, and to furnish such medical information as may be reasonably requested, and to waive any applicable patient privilege that may arise because of such examination.
1.3Cause. Immediately upon written notice from the Company to the Executive of a termination for Cause. “Cause” shall mean: (i) the Executive’s conviction of, or plea of guilty or nolo contendere to, a felony; (ii) the Executive’s willful commission of an act of fraud, dishonesty or other act of willful misconduct in the course of the Executive’s duties hereunder that has a significant adverse effect on the Company or its affiliates; (iii) the Executive’s willful failure to perform the Executive’s duties under this Agreement after the Company has delivered to the Executive a written demand for performance which describes the basis for the Board’s belief that the Executive has violated his obligations to the Company and the Executive fails to cure such alleged violation or failure within thirty (30) days after receipt of such notice; or (iv) any material breach by the Executive of this Agreement after the Company has delivered to the Executive a written notice which describes the basis for the Board’s belief that the Executive has materially breached this Agreement, and the Executive fails to cure such alleged breach within thirty (30) days after receipt of such notice.
1.4Without Cause. The date upon which the Company shall give the Executive a notice of involuntary termination (or the termination date specified in such notice) without Cause (other than for death or Disability).
1.5Good Reason. Upon written notice by the Executive to the Company of a termination for Good Reason. “Good Reason” shall mean the occurrence of any of the following events, without the express written consent of the Executive, unless such events are corrected in all material respects by the Company within thirty (30) days following written notification by the Executive to the Company that the Executive intends to terminate the Executive’s employment hereunder for one of the following reasons: (i) a material diminution in the Executive’s Base Salary or Target Bonus in effect from time to time; (ii) a material diminution in the Executive’s duties, authorities, responsibilities, title, or position; (iii) a relocation of the Executive’s primary work location by more than 50 miles from its then current location; or (iv) any material breach by the Company of this Agreement. The Executive shall provide the Company with a written notice detailing the specific circumstances alleged to constitute Good Reason within sixty (60) days after the first occurrence of such circumstances. Otherwise, any claim of such circumstances as “Good Reason” shall be deemed irrevocably waived by the Executive. If the Company fails to correct any such event alleged to constitute Good Reason, the Executive must terminate employment for Good Reason within thirty (30) days after the end of the correction period for the termination to be considered a Good Reason termination.
1.6Resignation Without Good Reason. Upon 180 days’ prior written notice by the Executive to the Company of the Executive’s voluntary termination of employment without Good Reason (which the Company may, in its sole discretion, make effective earlier than any notice date).
1.7Expiration of Term. Upon the expiration of the Initial Term or any Subsequent Term due to a non-extension of the Agreement by the Company or the Executive pursuant to the provisions of Section 2 hereof.
6.Payments upon Termination.
1.1Accrued Amounts. In the event of a termination of the Executive’s employment for any reason, the Executive shall be entitled to: (i) any Base Salary earned but
    3


unpaid through the date of termination; and (ii) the Executive’s accrued and unused vacation and unreimbursed business expenses (for which the Executive is entitled to reimbursement under this Agreement), in each case, as of the date of such termination (collectively, the “Accrued Amounts”). The Accrued Amounts will be paid within sixty (60) days following termination of employment.
1.2Severance Payments. Subject to the Executive’s compliance with the obligations in Sections 6.3 and 7 hereof, in the event of a termination of the Executive’s employment (i) by the Company without Cause, or (ii) by the Executive for Good Reason, the Executive will be entitled, in addition to the Accrued Amounts, to the following payments (collectively, the “Severance Payments”):
1.1.1Base Salary continuation payments in accordance with the regular payroll practices of the Company for a period of eighteen (18) months (the “Severance Period”) following such termination, provided, however, if the termination occurs within the two-year period following a Change in Control, the Severance Period shall instead be twenty-four (24) months (unless the Change in Control results from the sale by Executive of all of his equity interests in the Company, in which case, the foregoing proviso shall not apply);
1.1.2a lump sum cash payment equal to 1.5 times the dollar value of the total target performance-based cash award (“Target Award”) for the Executive established by the Compensation Committee for the year of termination (regardless of actual Company performance); provided, however, if the termination occurs within the two-year period following a Change in Control, the lump sum payment shall equal 2 times the Target Award (unless the Change in Control results from the sale by Executive of all of his equity interests in the Company, in which case, the foregoing proviso shall not apply); and
1.1.3any cash bonus and restricted stock earned but unpaid or unissued under the Company’s annual incentive programs for the year immediately preceding the year of termination based on actual Company performance and payable and issuable at the same time as such bonus or restricted stock for such year would have otherwise been paid or issued; and
provided, that, notwithstanding anything herein to the contrary, the first payment of the Severance Payments and the lump sum payment of the multiple of the Target Award shall be made on the first payroll period occurring after the sixtieth (60th) day following the date of termination of the Executive’s employment and shall include payment of any amounts that would otherwise be due prior thereto. For purposes of this Agreement, a “Change in Control” means the occurrence of any of the following: (A) the acquisition (including through purchase, reorganization, merger, consolidation or similar transaction), directly or indirectly, in one or more transactions by a Person (other than any of the Edwards Investors) of beneficial ownership (within the meaning of Rule 13d-3 under the Securities Exchange Act of 1934, as amended) of securities representing 45% or more of the combined voting power of the securities of the Company entitled to vote generally in the election of directors of the Board, calculated on a fully diluted basis after giving effect to such acquisition; (B) an election of Persons to the Board that causes two-thirds of the Board to consist of Persons other than (i) members of the Board on the Effective Date and (ii) Persons who were nominated for election as members of the Board at a time when two-thirds of the Board consisted of Persons who were members of the Board on the Effective Date; provided that any Person nominated for election by a Board at least two-thirds of which consisted of Persons described in clauses (i) or (ii) or by Persons who were themselves nominated by such Board shall be deemed to have been nominated by a Board consisting of Persons described in clause (i); or (C) the sale or other disposition, directly or indirectly, of all or
    4


substantially all of the assets of the Company and its subsidiaries, taken as a whole, to any Person (other than any of the Edwards Investors). As used herein, (i) “Person” means any individual, entity (including any employee benefit plan or any trust for an employee benefit plan) or group (within the meaning of Section 13(d)(3) or Section 14(d)(2) of the Securities Exchange Act of 1934, as amended, or any successor provision), and (ii) “Edwards Investors” means Jeffrey Edwards, Peter Edwards, Anne Edwards and Michael Edwards, and the investment entities through which any of them directly and indirectly beneficially owns shares of the Common Stock.
1.3Conditions to the Receipt of the Severance Payments. Notwithstanding anything herein to the contrary, (i) the receipt of the Severance Payments pursuant to Section 6.2 hereof shall be subject to the Executive’s signing and not revoking, within sixty (60) days following his termination of employment, a customary release of claims in the form provided to him by the Company within seven (7) days following his employment termination (the “Release”), which Release must have become effective and irrevocable no later than the sixtieth (60th) day following the Executive’s termination of employment (the “Release Deadline”), and if the Release does not become effective and irrevocable by the Release Deadline, the Executive will forfeit any right to the Severance Payments and, for the avoidance of doubt, in no event will any Severance Payments be paid or provided; and (ii) the receipt of the Severance Payments pursuant to Section 6.2 hereof shall be subject at all times to the Executive’s continued compliance in all material respects with the provisions of Section 7 hereof.
1.4Section 280G. If any payment or benefit (including payments and benefits pursuant to this Agreement) that the Executive would receive in connection with a Change in Control from the Company or otherwise (a “Transaction Payment”) would (a) constitute a “parachute payment” within the meaning of Section 280G of the Internal Revenue Code of 1986, as amended (the “Code”); and (b) the net after-tax benefit that the Executive would receive by reducing the Transaction Payments to three times the “base amount,” as defined in Section 280G(b)(3) of the Code (the “Parachute Threshold”), is greater than the net after-tax benefit the Executive would receive if the full amount of the Transaction Payments were paid to the Executive, then the Transaction Payments payable to the Executive shall be reduced (but not below zero) so that the Transaction Payments due to Executive do not exceed the amount of the Parachute Threshold.
7.Restrictive Covenants. In consideration of the compensation and benefits to the Executive provided hereunder and as a result of the Executive’s employment with the Company, the Executive agrees to be subject to and bound by the restrictive covenants contained in this Section 7. For purposes of this Section 7, the term “Company” shall include the Company and its subsidiaries. The obligations contained in this Section 7 shall survive the termination or expiration of the Initial Term and any Subsequent Term and the Executive’s employment with the Company and shall be fully enforceable thereafter.
1.1Non-Solicitation. During the Initial Term and each Subsequent Term and for a period of two (2) years thereafter, the Executive agrees that the Executive shall not, directly or indirectly, individually or on behalf of any other person, firm, corporation or other entity: (i) solicit, aid or induce any customer of the Company to curtail, reduce or terminate its business relationship with the Company, or in any other way interfere with any such business relationships with the Company; (ii) solicit, aid or induce any employee, representative or agent of the Company to leave such employment or retention or to accept employment with or render services to or with any other person, firm, corporation or other entity unaffiliated with the Company or hire or retain any such employee, representative or agent or take any action to materially assist or aid any other person, firm, corporation or other entity in identifying, hiring or soliciting any such employee, representative or agent; or (iii) interfere, or aid or induce any other person or entity in interfering, with the relationship between the Company and any of their
    5


respective vendors, joint venturers or licensors. An employee, representative or agent shall be deemed covered by this Section 7.1 while so employed or retained and for a period of ninety (90) days thereafter.
1.2Non-Competition. The Executive acknowledges and agrees that he performs services of a unique nature for the Company that are irreplaceable, and that the Executive’s performance of such services to a competing business will result in irreparable harm to the Company. Accordingly, during the Initial Term and each Subsequent Term, and for a period of two (2) years thereafter, the Executive agrees that the Executive will not, directly or indirectly, own, manage, operate, control, be employed by (whether as an employee, consultant, independent contractor or otherwise, and whether or not for compensation) or render services to any person, firm, corporation or other entity, in whatever form, engaged in the business of sales, installation, marketing, or distribution of insulation, insulation materials or acoustic products, or shower enclosures, shelving, mirrors, blinds or bath accessories, or with respect to any other business or products that the Company engages in or manufactures as the case may be (regardless of whether such activity is at the manufacturing, distribution or retail level) on the date of termination or in which they have planned to engage or manufacture as the case may be, on or prior to such termination date, to be engaged in or manufacture on or after such date as the case may be, in any case within a one hundred (100) mile radius of any of the Company’s (or any of its affiliates’) existing or future branch operations. Notwithstanding the foregoing provisions, for so long as the Real Estate Business does not compete with the Company’s business, this Section 7.2 shall not apply with respect to Executive’s engagement in the Real Estate Business. The Executive acknowledges that his skills are such that he can be gainfully employed in noncompetitive employment and that the agreement not to compete will in no way prevent him from earning a living.
1.3Confidentiality. The Executive shall not, during the Initial Term and each Subsequent Term and at any time thereafter, without the prior express written consent of the Company, directly or indirectly divulge, disclose or make available or accessible any Confidential Information (as defined below) to any person, firm, partnership, corporation, trust or any other entity or third party (other than when required to do so in good faith to perform the Executive’s duties and responsibilities under this Agreement or when (i) required to do so by a lawful order of a court of competent jurisdiction, any governmental authority or agency, or any recognized subpoena power, or (ii) necessary to prosecute the Executive’s rights against the Company or to defend himself against any allegations). In addition, the Executive shall not create any derivative work or other product based on or resulting from any Confidential Information (except in the good faith performance of his duties under this Agreement). The Executive shall also proffer to the Board’s designee, no later than the effective date of any termination of his employment with the Company for any reason, and without retaining any copies, notes or excerpts thereof, all memoranda, computer disks or other media, computer programs, diaries, notes, records, data, customer or client lists, marketing plans and strategies, and any other documents consisting of or containing Confidential Information that are in the Executive’s actual or constructive possession or which are subject to his control at such time. For purposes of this Agreement, “Confidential Information” shall mean all information respecting the business and activities of the Company, including, without limitation, the terms and provisions of this Agreement, the clients, customers (including the identity and lists of former, current or potential customers), suppliers, employees, consultants, computer or other files, projects, products, product designs, services, inventions, patents, patent applications, trade secrets, computer disks or other media, computer hardware or computer software programs, marketing plans, marketing methods, financial information, technical information, sales and distribution information, price lists, methodologies, know-how, processes, practices, approaches, projections, forecasts, formats, systems, techniques, data gathering methods and/or strategies of the Company. Notwithstanding the immediately preceding sentence, Confidential Information
    6


shall not include any information that is, or becomes, generally available to the public (unless such availability occurs as a result of the Executive’s breach of any portion of this Section 7.3).
1.4Non-Disparagement. During the Initial Term and each Subsequent Term and at any time thereafter, the Executive agrees, and the Company shall instruct its executive officers, not to make any defamatory or disparaging remarks, comments or statements regarding the other party (and, if applicable, any of the other party’s subsidiaries or affiliates, or any of its or their respective officers, directors, employees, shareholders, agents or products), in any manner reasonably likely to be harmful to any of them or, if applicable, their respective products, services, business, business reputation or personal reputation. The foregoing shall not be violated by truthful statements in response to legal process, required governmental testimony or filings, or administrative or arbitral proceedings (including, without limitation, depositions in connection with such proceedings).
1.5Injunctive Relief. The Executive acknowledges and agrees that the restrictions set forth in this Section 7 are necessary for the reasonable and proper protection of the Company’s business, and that each such term, condition, restriction and provision is fair and reasonable with respect to the subject matter thereof. The Executive further acknowledges and agrees that the Company will have no adequate remedy at law, and would be irreparably harmed, if the Executive breaches or threatens to breach any of the provisions of this Section 7 of this Agreement. The Executive agrees that, in addition to any and all other legal remedies available, the Company shall be entitled to equitable and/or injunctive relief to prevent any breach or threatened breach of this Section 7, and to specific performance of each of the terms of such Section in addition to any other legal or equitable remedies that the Company may have. The Executive further agrees that he shall not, in any equity proceeding relating to the enforcement of the terms of this Section 7, raise the defense that the Company has an adequate remedy at law.
1.6Reformation. It is the intention of the parties to this Agreement that the potential restrictions on the Executive’s future employment imposed by this Section 7 be reasonable in both duration and geographic scope and in all other respects. If for any reason any court of competent jurisdiction shall find any provisions of this Section 7 unreasonable in duration or geographic scope or otherwise, the Executive and the Company agree that the restrictions and prohibitions contained herein shall be effective to the fullest extent allowed under applicable law in such jurisdiction, and such court shall have the power to reduce the scope or duration of such provision, as the case may be, and, in its reduced form, such provision shall then be enforceable.
1.7Inventions.
1.1.1The Executive acknowledges and agrees that all ideas, methods, inventions, discoveries, improvements, work products or developments (“Inventions”), whether patentable or unpatentable, (A) that relate to the Executive’s work with the Company, made or conceived by the Executive, solely or jointly with others, during the Initial Term and each Subsequent Term, or (B) suggested by any work that the Executive performs in connection with the Company, either while performing the Executive’s duties with the Company or on the Executive’s own time, but only insofar as the Inventions are related to the Executive’s work as an employee or other service provider to the Company, shall belong exclusively to the Company (or its designee), whether or not patent applications are filed thereon. The Executive will keep full and complete written records (the “Records”), in the manner prescribed by the Company, of all Inventions, and will promptly disclose all Inventions completely and in writing to the Company. The Records shall be the sole and exclusive property of the Company, and the Executive will surrender them upon the termination of the
    7


Initial Term or any Subsequent Term, or upon the Company’s request. The Executive will assign to the Company the Inventions and all patents that may issue thereon in any and all countries, whether during or subsequent to the Initial Term or any Subsequent Term, together with the right to file, in the Executive’s name or in the name of the Company (or its designee), applications for patents and equivalent rights (the “Applications”). The Executive will, at any time during and subsequent to the Initial Term and each Subsequent Term, make such applications, sign such papers, take all rightful oaths, and perform all acts as may be requested from time to time by the Company with respect to the Inventions. The Executive will also execute assignments to the Company (or its designee) of the Applications, and give the Company and its attorneys all reasonable assistance (including the giving of testimony) to obtain the Inventions for its benefit, all without additional compensation to the Executive from the Company, but entirely at the Company’s expense.
1.1.2In addition, the Inventions will be deemed Work for Hire, as such term is defined under the copyright laws of the United States, on behalf of the Company, and the Executive agrees that the Company will be the sole owner of the Inventions, and all underlying rights therein, in all media now known or hereinafter devised, throughout the universe and in perpetuity without any further obligations to the Executive. If the Inventions, or any portion thereof, are deemed not to be Work for Hire, the Executive hereby irrevocably conveys, transfers and assigns to the Company, all rights, in all media now known or hereinafter devised, throughout the universe and in perpetuity, in and to the Inventions, including, without limitation, all of the Executive’s right, title and interest in the copyrights (and all renewals, revivals and extensions thereof) to the Inventions, including, without limitation, all rights of any kind or any nature now or hereafter recognized, including without limitation, the unrestricted right to make modifications, adaptations and revisions to the Inventions, to exploit and allow others to exploit the Inventions and all rights to sue at law or in equity for any infringement, or other unauthorized use or conduct in derogation of the Inventions, known or unknown, prior to the date hereof, including, without limitation, the right to receive all proceeds and damages therefrom. In addition, the Executive hereby waives any so-called “moral rights” with respect to the Inventions. The Executive hereby waives any and all currently existing and future monetary rights in and to the Inventions and all patents that may issue thereon, including, without limitation, any rights that would otherwise accrue to the Executive’s benefit by virtue of the Executive being an employee of or other service provider to the Company.
1.8Return of Company Property. On the date of the Executive’s termination of employment with the Company for any reason (or at any time prior thereto at the Company’s request), the Executive shall return all property belonging to the Company or its affiliates (including, but not limited to, any Company-provided laptops, computers, cell phones, wireless electronic mail devices or other equipment, or documents and property belonging to the Company).
8.Representations of the Executive. The Executive represents and warrants to the Company that (i) the Executive has the legal right to enter into this Agreement and to perform all of the obligations on the Executive’s part to be performed hereunder in accordance with its terms, and (ii) the Executive is not a party to any agreement or understanding, written or oral, and is not subject to any restriction, which, in either case, could prevent the Executive from entering into this Agreement or performing all of the Executive’s duties and obligations hereunder.
    8


9.Miscellaneous.
1.1Applicable Law. This Agreement shall be governed by and construed in accordance with the laws of the State of Ohio, applied without reference to principles of conflict of laws. All of the parties hereto agree to appear before and submit exclusively to the jurisdiction of the state and federal courts located within Ohio with respect to any controversy, dispute, or claim arising out of or relating to this Agreement.
1.2Amendments. This Agreement may not be amended or modified otherwise than by a written agreement executed by the parties hereto or their respective successors and legal representatives.
1.3Notices. For purposes of this Agreement, notices and all other communications provided for in this Agreement shall be in writing and shall be deemed to have been duly given (i) on the date of delivery, if delivered by hand, (ii) on the date of transmission, if delivered by confirmed facsimile or electronic mail, (iii) on the first business day following the date of deposit, if delivered by guaranteed overnight delivery service, or (iv) on the fourth business day following the date delivered or mailed by United States registered or certified mail, return receipt requested, postage prepaid, addressed as follows:
To the Company:    Installed Building Products, Inc.
    495 South High Street, Suite 50
    Columbus, OH 43215
    Attn: General Counsel
To the Executive:    At the address shown on the records
    of the Company
or to such other address as either party may have furnished to the other in writing in accordance herewith, except that notices of change of address shall be effective only upon receipt.
1.4No Assignment. This Agreement is personal to the Executive and he may not assign or delegate any rights or obligations hereunder without first obtaining the written consent of the Company.
1.5Withholding Taxes. The Company may withhold from any amounts payable under this Agreement such federal, foreign state and local taxes as may be required to be withheld pursuant to any applicable law or regulation.
1.6Severability. The invalidity or unenforceability of any provision of this Agreement shall not affect the validity or enforceability of any other provision of this Agreement.
1.7Counterparts. This Agreement may be executed in two or more counterparts, each of which shall be deemed an original instrument, but all of which together shall constitute one and the same Agreement.
1.8Entire Agreement. This Agreement contains the entire agreement between the parties concerning the subject matter hereof and supersedes all prior agreements, understandings, discussions, negotiations and undertakings, whether written or oral, between the parties with respect thereto.
    9


1.9Headings. The headings in this Agreement are intended solely for convenience of reference and shall be given no effect in the construction or interpretation of this Agreement.
1.10Waivers. The failure of the Company at any time, or from time to time, to require performance of any of the Executive’s obligations under this Agreement shall in no manner affect the Company’s right to enforce any provisions of this Agreement at a subsequent time. The waiver by the Company of any right arising out of any breach shall not be construed as a waiver of any right arising out of any subsequent breach.
1.11Survivorship. The respective rights and obligations of the parties hereunder shall survive any termination of this Agreement or the Initial Term or any Subsequent Term hereunder for any reason to the extent necessary to the intended provision of such rights and the intended performance of such obligations.
10.Code Section 409A Compliance.
1.1The intent of the parties is that payments and benefits under this Agreement comply with, or be exempt from, Internal Revenue Code Section 409A and the regulations and guidance promulgated thereunder (collectively “Code Section 409A”) and, accordingly, to the maximum extent permitted, this Agreement shall be interpreted to be in compliance therewith. In no event whatsoever shall the Company be liable for any additional tax, interest or penalty that may be imposed on the Executive by Code Section 409A or any damages for failing to comply with Code Section 409A.
1.2Notwithstanding anything to the contrary in this Agreement, (i) a termination of employment shall not be deemed to have occurred for purposes of any provision of this Agreement providing for the payment of any amounts or benefits upon or following a termination of employment that are considered “non-qualified deferred compensation” under Code Section 409A unless such termination is also a “separation from service” within the meaning of Code Section 409A and, for purposes of any such provision of this Agreement, references to a “termination,” “termination of employment” or like terms shall mean “separation from service,” (ii) if the Executive is deemed on the date of termination to be a “specified employee” within the meaning of that term under Code Section 409A(a)(2)(B), then with regard to any payment that is considered non-qualified deferred compensation under Code Section 409A payable on account of a “separation from service,” such payment or benefit shall be made or provided at the date which is the earlier of (i) the date that is immediately following the date of the expiration of the six (6)-month period measured from the date of such “separation from service” of the Executive, and (ii) the date of the Executive’s death (the “Delay Period”), and (iii) upon the expiration of the Delay Period, all payments and benefits delayed pursuant to this Section (whether they would have otherwise been payable in a single sum or in installments in the absence of such delay) shall be paid or reimbursed to the Executive in a lump sum and any remaining payments and benefits due under this Agreement shall be paid or provided in accordance with the normal payment dates specified for them herein.
1.3Notwithstanding anything to the contrary in this Agreement, with regard to any provision herein that provides for reimbursement of costs and expenses or in-kind benefits, except as permitted by Code Section 409A, (i) the right to reimbursement or in-kind benefits shall not be subject to liquidation or exchange for another benefit, (ii) the amount of expenses eligible for reimbursement, or in-kind benefits, provided during any taxable year shall not affect the expenses eligible for reimbursement, or in-kind benefits to be provided, in any other taxable year, and (iii) such payments shall be made on or before the last day of Executive’s taxable year following the taxable year in which the expense occurred.
    10


1.4For purposes of Code Section 409A, the Executive’s right to receive any installment payments pursuant to this Agreement shall be treated as a right to receive a series of separate and distinct payments. In no event may the Executive, directly or indirectly, designate the calendar year of any payment to be made under this Agreement that is considered nonqualified deferred compensation.
[Remainder of Page Intentionally Left Blank]

    11


IN WITNESS WHEREOF, the parties hereto have executed this Agreement as of the Effective Date.
INSTALLED BUILDING PRODUCTS, INC.
    /s/ Michael T. Miller    
By:     Michael T. Miller
    CFO
EXECUTIVE
/s/ Jeffrey W. Edwards    
Jeffrey W. Edwards

    12
EX-31.1 3 ibp-20230331xex311.htm EX-31.1 Document

Exhibit 31.1
INSTALLED BUILDING PRODUCTS, INC.
Certification Required by Rule 13a-14(a) or 15d-14(a)
of the Securities Exchange Act of 1934
I, Jeffrey W. Edwards, certify that:
1.I have reviewed this quarterly report on Form 10-Q of Installed Building Products, Inc.;
2.Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this report;
3.Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this report;
4.The registrant’s other certifying officer and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have:
a)designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this report is being prepared;
b)designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles;
c)evaluated the effectiveness of the registrant’s disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation; and
d)disclosed in this report any change in the registrant’s internal control over financial reporting that occurred during the registrant’s most recent fiscal quarter (the registrant’s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant’s internal control over financial reporting;
5.The registrant’s other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant’s auditors and the audit committee of the registrant’s board of directors (or persons performing the equivalent functions):
a)all significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant’s ability to record, process, summarize and report financial information; and
b)any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant’s internal control over financial reporting.
Dated:May 4, 2023By: /s/ Jeffrey W. Edwards
 Jeffrey W. Edwards
 President and Chief Executive Officer

EX-31.2 4 ibp-20230331xex312.htm EX-31.2 Document

Exhibit 31.2
INSTALLED BUILDING PRODUCTS, INC.
Certification Required by Rule 13a-14(a) or 15d-14(a)
of the Securities Exchange Act of 1934
I, Michael T. Miller, certify that:
1.I have reviewed this quarterly report on Form 10-Q of Installed Building Products, Inc.;
2.Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this report;
3.Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this report;
4.The registrant’s other certifying officer and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have:
a)designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this report is being prepared;
b)designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles;
c)evaluated the effectiveness of the registrant’s disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation; and
d)disclosed in this report any change in the registrant’s internal control over financial reporting that occurred during the registrant’s most recent fiscal quarter (the registrant’s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant’s internal control over financial reporting;
5.The registrant’s other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant’s auditors and the audit committee of the registrant’s board of directors (or persons performing the equivalent functions):
a)all significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant’s ability to record, process, summarize and report financial information; and
b)any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant’s internal control over financial reporting.
Dated:May 4, 2023By: /s/ Michael T. Miller
 Michael T. Miller
 Executive Vice President and Chief Financial Officer

EX-32.1 5 ibp-20230331xex321.htm EX-32.1 Document

Exhibit 32.1
INSTALLED BUILDING PRODUCTS, INC.
Certification Required by Rule 13a-14(b) or 15d-14(b)
of the Securities Exchange Act of 1934 and
Section 1350 of Chapter 63 of Title 18 of the
United States Code
The certification set forth below is being submitted in connection with the Installed Building Products, Inc. Quarterly Report on Form 10-Q for the quarterly period ended March 31, 2023 (the “Report”) for the purpose of complying with Rule 13a-14(b) or Rule 15d-14(b) of the Securities Exchange Act of 1934 (the “Exchange Act”) and Section 1350 of Chapter 63 of Title 18 of the United States Code.
Jeffrey W. Edwards, the President and Chief Executive Officer, of Installed Building Products, Inc., certifies that, to the best of his knowledge:
1.The Report fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934; and
2.The information contained in the Report fairly presents, in all material respects, the consolidated financial condition and results of operations of Installed Building Products, Inc.
Dated:May 4, 2023By: /s/ Jeffrey W. Edwards
 Jeffrey W. Edwards
 President and Chief Executive Officer


EX-32.2 6 ibp-20230331xex322.htm EX-32.2 Document

Exhibit 32.2
INSTALLED BUILDING PRODUCTS, INC.
Certification Required by Rule 13a-14(b) or 15d-14(b)
of the Securities Exchange Act of 1934 and
Section 1350 of Chapter 63 of Title 18 of the
United States Code
The certification set forth below is being submitted in connection with the Installed Building Products, Inc. Quarterly Report on Form 10-Q for the quarterly period ended March 31, 2023 (the “Report”) for the purpose of complying with Rule 13a-14(b) or Rule 15d-14(b) of the Securities Exchange Act of 1934 (the “Exchange Act”) and Section 1350 of Chapter 63 of Title 18 of the United States Code.
Michael T. Miller, the Executive Vice President and Chief Financial Officer, of Installed Building Products, Inc., certifies that, to the best of his knowledge:
1. The Report fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934; and
2.The information contained in the Report fairly presents, in all material respects, the consolidated financial condition and results of operations of Installed Building Products, Inc.
Dated:May 4, 2023By: /s/ Michael T. Miller
 Michael T. Miller
 Executive Vice President and Chief Financial Officer


EX-101.SCH 7 ibp-20230331.xsd XBRL TAXONOMY EXTENSION SCHEMA DOCUMENT 0000001 - Document - Cover Page link:presentationLink link:calculationLink link:definitionLink 0000002 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS (UNAUDITED) link:presentationLink link:calculationLink link:definitionLink 0000003 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS (UNAUDITED) (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 0000004 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME (UNAUDITED) link:presentationLink link:calculationLink link:definitionLink 0000005 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME (UNAUDITED) (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 0000006 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY (UNAUDITED) link:presentationLink link:calculationLink link:definitionLink 0000007 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY (UNAUDITED) (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 0000008 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS (UNAUDITED) link:presentationLink link:calculationLink link:definitionLink 0000009 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS (UNAUDITED) (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 0000010 - Disclosure - Organization link:presentationLink link:calculationLink link:definitionLink 0000011 - Disclosure - Significant Accounting Policies link:presentationLink link:calculationLink link:definitionLink 0000012 - Disclosure - Revenue Recognition link:presentationLink link:calculationLink link:definitionLink 0000013 - Disclosure - Credit Losses link:presentationLink link:calculationLink link:definitionLink 0000014 - Disclosure - Investments and Cash and Cash Equivalents link:presentationLink link:calculationLink link:definitionLink 0000015 - Disclosure - Goodwill and Intangibles link:presentationLink link:calculationLink link:definitionLink 0000016 - Disclosure - Long-Term Debt link:presentationLink link:calculationLink link:definitionLink 0000017 - Disclosure - Leases link:presentationLink link:calculationLink link:definitionLink 0000018 - Disclosure - Fair Value Measurements link:presentationLink link:calculationLink link:definitionLink 0000019 - Disclosure - Information on Segments link:presentationLink link:calculationLink link:definitionLink 0000020 - Disclosure - Derivatives and Hedging Activities link:presentationLink link:calculationLink link:definitionLink 0000021 - Disclosure - Stockholders' Equity link:presentationLink link:calculationLink link:definitionLink 0000022 - Disclosure - Employee Benefits link:presentationLink link:calculationLink link:definitionLink 0000023 - Disclosure - Income Taxes link:presentationLink link:calculationLink link:definitionLink 0000024 - Disclosure - Related Party Transactions link:presentationLink link:calculationLink link:definitionLink 0000025 - Disclosure - Commitments and Contingencies link:presentationLink link:calculationLink link:definitionLink 0000026 - Disclosure - Business Combinations link:presentationLink link:calculationLink link:definitionLink 0000027 - Disclosure - Income Per Common Share link:presentationLink link:calculationLink link:definitionLink 0000028 - Disclosure - Subsequent Events link:presentationLink link:calculationLink link:definitionLink 0000029 - Disclosure - Significant Accounting Policies (Policies) link:presentationLink link:calculationLink link:definitionLink 0000030 - Disclosure - Significant Accounting Policies (Tables) link:presentationLink link:calculationLink link:definitionLink 0000031 - Disclosure - Revenue Recognition (Tables) link:presentationLink link:calculationLink link:definitionLink 0000032 - Disclosure - Credit Losses (Tables) link:presentationLink link:calculationLink link:definitionLink 0000033 - Disclosure - Goodwill and Intangibles (Tables) link:presentationLink link:calculationLink link:definitionLink 0000034 - Disclosure - Long-Term Debt (Tables) link:presentationLink link:calculationLink link:definitionLink 0000035 - Disclosure - Leases (Tables) link:presentationLink link:calculationLink link:definitionLink 0000036 - Disclosure - Fair Value Measurements (Tables) link:presentationLink link:calculationLink link:definitionLink 0000037 - Disclosure - Information on Segments (Tables) link:presentationLink link:calculationLink link:definitionLink 0000038 - Disclosure - Derivative and Hedging Activities (Tables) link:presentationLink link:calculationLink link:definitionLink 0000039 - Disclosure - Stockholders' Equity (Tables) link:presentationLink link:calculationLink link:definitionLink 0000040 - Disclosure - Employee Benefits (Tables) link:presentationLink link:calculationLink link:definitionLink 0000041 - Disclosure - Related Party Transactions (Tables) link:presentationLink link:calculationLink link:definitionLink 0000042 - Disclosure - Commitments and Contingencies (Tables) link:presentationLink link:calculationLink link:definitionLink 0000043 - Disclosure - Business Combinations (Tables) link:presentationLink link:calculationLink link:definitionLink 0000044 - Disclosure - Organization - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 0000045 - Disclosure - Revenue Recognition - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 0000045 - Disclosure - Revenue Recognition - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 0000046 - Disclosure - Revenue Recognition - Summary of Revenues Disaggregated by End Market and Product (Details) link:presentationLink link:calculationLink link:definitionLink 0000047 - Disclosure - Revenue Recognition - Summary of Assets and Liabilities Related to Uncompleted Contracts and Customer Deposits (Details) link:presentationLink link:calculationLink link:definitionLink 0000048 - Disclosure - Revenue Recognition - Schedule of Cost and Estimated Earnings on Uncompleted Contracts (Details) link:presentationLink link:calculationLink link:definitionLink 0000049 - Disclosure - Revenue Recognition - Schedule of Net Under (Over) Billings (Details) link:presentationLink link:calculationLink link:definitionLink 0000050 - Disclosure - Credit Losses (Details) link:presentationLink link:calculationLink link:definitionLink 0000051 - Disclosure - Investments and Cash and Cash Equivalents (Details) link:presentationLink link:calculationLink link:definitionLink 0000052 - Disclosure - Goodwill and Intangibles - Summary of Change in Carrying Amount of Goodwill (Details) link:presentationLink link:calculationLink link:definitionLink 0000053 - Disclosure - Goodwill and Intangibles - Schedule of Gross Carrying Amount and Accumulated Amortization (Details) link:presentationLink link:calculationLink link:definitionLink 0000054 - Disclosure - Goodwill and Intangibles - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 0000055 - Disclosure - Goodwill and Intangibles - Schedule of Estimated Aggregate Annual Amortization (Details) link:presentationLink link:calculationLink link:definitionLink 0000056 - Disclosure - Long-Term Debt - Schedule of Debt (Details) link:presentationLink link:calculationLink link:definitionLink 0000057 - Disclosure - Long-Term Debt - Schedule Of Maturities Of Long Term Debt (Details) link:presentationLink link:calculationLink link:definitionLink 0000058 - Disclosure - Leases - Schedule of Supplemental Balance Sheet Information Related To Leases (Details) link:presentationLink link:calculationLink link:definitionLink 0000059 - Disclosure - Leases - Lease Costs (Details) link:presentationLink link:calculationLink link:definitionLink 0000060 - Disclosure - Leases - Other Information (Details) link:presentationLink link:calculationLink link:definitionLink 0000061 - Disclosure - Leases - Undiscounted Cash Flows (Details) link:presentationLink link:calculationLink link:definitionLink 0000062 - Disclosure - Fair Value Measurements - Schedule of Fair Values of Financial Assets and Liabilities (Details) link:presentationLink link:calculationLink link:definitionLink 0000063 - Disclosure - Fair Value Measurements - Summary of Change in Fair Value of Contingent Consideration (Details) link:presentationLink link:calculationLink link:definitionLink 0000064 - Disclosure - Fair Value Measurements - Summary of Carrying Values and Associated Fair Values of Financial Assets and Liabilities (Details) link:presentationLink link:calculationLink link:definitionLink 0000065 - Disclosure - Information on Segments (Details) link:presentationLink link:calculationLink link:definitionLink 0000066 - Disclosure - Derivative and Hedging Activities - Open Interest Swap Contract Summary (Details) link:presentationLink link:calculationLink link:definitionLink 0000067 - Disclosure - Derivative and Hedging Activities - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 0000068 - Disclosure - Derivative and Hedging Activities - Interest Rate Swap Summary (Details) link:presentationLink link:calculationLink link:definitionLink 0000069 - Disclosure - Stockholders' Equity - Change in AOCI (Details) link:presentationLink link:calculationLink link:definitionLink 0000070 - Disclosure - Stockholders' Equity - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 0000071 - Disclosure - Stockholders' Equity - Cash Dividends (Details) link:presentationLink link:calculationLink link:definitionLink 0000072 - Disclosure - Employee Benefits - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 0000073 - Disclosure - Employee Benefits - Summary of Workers' Compensation Known Claims and IBNR Reserves (Details) link:presentationLink link:calculationLink link:definitionLink 0000074 - Disclosure - Employee Benefits - Schedule of Insurance Receivable for Claims (Details) link:presentationLink link:calculationLink link:definitionLink 0000075 - Disclosure - Employee Benefits - Summary of Equity-Based Awards for Employees (Details) link:presentationLink link:calculationLink link:definitionLink 0000076 - Disclosure - Employee Benefits - Summary of Share-Based Compensation Expense Under the 2014 Omnibus Incentive Plan (Details) link:presentationLink link:calculationLink link:definitionLink 0000077 - Disclosure - Employee Benefits - Summary of Stock Compensation Expense (Details) link:presentationLink link:calculationLink link:definitionLink 0000078 - Disclosure - Employee Benefits - Unrecognized Share-Based Compensation Expense Related to Unvested Awards (Details) link:presentationLink link:calculationLink link:definitionLink 0000079 - Disclosure - Income Taxes (Details) link:presentationLink link:calculationLink link:definitionLink 0000080 - Disclosure - Related Party Transactions - Schedule of Related Party Transactions (Details) link:presentationLink link:calculationLink link:definitionLink 0000081 - Disclosure - Related Party Transactions - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 0000082 - Disclosure - Commitments and Contingencies - Schedule of Accrued General Insurance Reserves (Details) link:presentationLink link:calculationLink link:definitionLink 0000083 - Disclosure - Commitments and Contingencies - Schedule of Insurance Receivable for Claims (Details) link:presentationLink link:calculationLink link:definitionLink 0000084 - Disclosure - Commitments and Contingencies - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 0000085 - Disclosure - Business Combinations - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 0000086 - Disclosure - Business Combinations - Summary of Business Acquisitions (Details) link:presentationLink link:calculationLink link:definitionLink 0000087 - Disclosure - Business Combinations - Summary of Estimated Fair Value of Assets Acquired and Liabilities Assumed (Details) link:presentationLink link:calculationLink link:definitionLink 0000088 - Disclosure - Business Combinations - Estimates of Acquired Intangible Assets (Details) link:presentationLink link:calculationLink link:definitionLink 0000089 - Disclosure - Business Combinations - Pro Forma Results of Operations (Details) link:presentationLink link:calculationLink link:definitionLink 0000090 - Disclosure - Income Per Common Share - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 0000091 - Disclosure - Subsequent Events (Details) link:presentationLink link:calculationLink link:definitionLink EX-101.CAL 8 ibp-20230331_cal.xml XBRL TAXONOMY EXTENSION CALCULATION LINKBASE DOCUMENT EX-101.DEF 9 ibp-20230331_def.xml XBRL TAXONOMY EXTENSION DEFINITION LINKBASE DOCUMENT EX-101.LAB 10 ibp-20230331_lab.xml XBRL TAXONOMY EXTENSION LABEL LINKBASE DOCUMENT Business Acquisition [Axis] Business Acquisition [Axis] Reclassifications of realized net losses to earnings Reclassification from Accumulated Other Comprehensive Income, Current Period, Net of Tax Revision of Prior Period [Axis] Revision of Prior Period [Axis] Increase (Decrease) in Stockholders' Equity [Roll Forward] Increase (Decrease) in Stockholders' Equity [Roll Forward] Total minimum lease payments Lessee, Operating Lease, Liability, to be Paid Net income Net Income (Loss), Including Portion Attributable to Noncontrolling Interest Related Party Transactions [Abstract] Related Party Transactions [Abstract] Provision for credit losses Accounts Receivable, Credit Loss Expense (Reversal) Entity Address, Postal Zip Code Entity Address, Postal Zip Code Insulation Insulation [Member] Insulation. Finance Finance Lease, Right-of-Use Asset, after Accumulated Amortization ABL Credit Agreement ABL Credit Agreement [Member] ABL credit agreement. Preferred stock, shares outstanding (in shares) Preferred Stock, Shares Outstanding 2025 Long-Term Debt, Maturity, Year Two Other Other Segments [Member] Debt Instrument [Axis] Debt Instrument [Axis] Finite Lived Intangible Assets Net Amortization Expense Rolling Maturity [Abstract] Finite-Lived Intangible Assets, Net, Amortization Expense, Rolling Maturity [Abstract] Present value of future minimum lease payments Finance Lease, Liability Rent Related Party Transaction, Expenses from Transactions with Related Party Income Tax Disclosure [Abstract] Income Tax Disclosure [Abstract] Commitments And Contingencies Disclosure [Line Items] Commitments And Contingencies Disclosure [Line Items] Commitments and contingencies disclosure. 2023 (in pounds) Purchase Obligation, Pounds To Be Purchased, Remainder Of Fiscal Year Purchase Obligation, Pounds To Be Purchased, Remainder Of Fiscal Year Investments and Cash and Cash Equivalents Investment [Text Block] Fair Value Measurement [Domain] Fair Value Measurement [Domain] Total lease assets Lease Assets Represents aggregate of operating and finance lease assets. Margin interest rate (as percent) Debt Instrument, Basis Spread on Variable Rate Other Payments for (Proceeds from) Other Investing Activities 2027 Finance Lease, Liability, to be Paid, Year Four Statistical Measurement [Domain] Statistical Measurement [Domain] Maturities of Long-term Debt [Abstract] Maturities of Long-Term Debt [Abstract] Issuance of awards previously classified as liability awards (in shares) Stock Issued During Period, Shares, Restricted Stock Award, Net of Forfeitures Pension Plans Postretirement And Other Employee Benefits [Table] Pension Plans Postretirement And Other Employee Benefits [Table] Pension Plans Postretirement And Other Employee Benefits [Table] Operating leases (as percent) Operating Lease, Weighted Average Discount Rate, Percent Notes payable interest rate (as a percent) Debt Instrument, Interest Rate, Stated Percentage Derivative Instruments, Gain (Loss) Derivative Instruments, Gain (Loss) [Table Text Block] Additional paid in capital Additional Paid in Capital, Common Stock Schedule of Business Combinations Schedule of Business Acquisitions, by Acquisition [Table Text Block] Cash paid for amounts included in the measurement of lease liabilities: Cash Paid For Amounts Included In Measurement Of Lease Liabilities [Abstract] Cash paid for amounts included in measurement of lease liabilities. Other, net Other Noncash Income (Expense) Non-Current NonCurrent Lease Liabilities [Abstract] Represents non-current lease liabilities abstract. Property and equipment, net Property, Plant, and Equipment and Finance Lease Right-of-Use Asset, after Accumulated Depreciation and Amortization Common stock repurchase Share repurchase, amount Treasury Stock, Value, Acquired, Cost Method 2026 Finance Lease, Liability, to be Paid, Year Three Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table] Net income Net income Net Income (Loss) Attributable to Parent Finite-Lived Intangible Assets Acquired as Part of Business Combination [Table] Finite-Lived Intangible Assets Acquired as Part of Business Combination [Table] Lessee, Lease, Description [Table] Lessee, Lease, Description [Table] Common stock shares excluded from calculation of diluted net income per common share (in shares) Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount Leases Lessee, Finance Leases [Text Block] Other intangibles, net Other Intangible Assets [Member] Remainder of 2022 Finance Lease, Liability, to be Paid, Remainder of Fiscal Year Schedule of Maturities of Long-term Debt Schedule of Maturities of Long-Term Debt [Table Text Block] Subsequent Event Type [Axis] Subsequent Event Type [Axis] Interest Rate Swap Four, Effective December 31, 2025 Interest Rate Swap Four, Effective December 31, 2025 [Member] Interest Rate Swap Four, Effective December 31, 2025 Waterproofing Waterproofing [Member] Waterproofing. Surrender of common stock awards Shares Issued, Value, Share-Based Payment Arrangement, Forfeited Basic net income per share (in USD per share) Business Acquisition, Pro Forma Earnings Per Share, Basic Revenue from Contract with Customer, Product and Service Benchmark Revenue from Contract with Customer, Product and Service Benchmark [Member] Equity Component [Domain] Equity Component [Domain] Subsequent Event Type [Domain] Subsequent Event Type [Domain] Acquired Finite-Lived Intangible Assets [Line Items] Acquired Finite-Lived Intangible Assets [Line Items] Total financial assets Assets, Fair Value Disclosure Leases Lessee, Operating Leases [Text Block] Amortization of leased assets Finance Lease, Right-of-Use Asset, Amortization Related Party [Domain] Related Party [Domain] Lessee, Lease, Description [Line Items] Lessee, Lease, Description [Line Items] Treasury stock; at cost: 5,123,656 and 5,123,075 shares at March 31, 2023 and December 31, 2022, respectively BEGINING BALANCE, Treasury Stock ENDING BALANCE, Treasury Stock Treasury Stock, Common, Value Plan Name [Axis] Plan Name [Axis] Schedule of Net Under Billings Long-Term Contract or Program Disclosure [Table Text Block] Contract assets Contract with Customer, Asset, after Allowance for Credit Loss Hedging Designation [Domain] Hedging Designation [Domain] Other Other Customer Installation [Member] Other Customer Installation Supplemental disclosures of cash flow information Supplemental Cash Flow Information [Abstract] Derivative Instrument [Axis] Derivative Instrument [Axis] Number of operating segment Number of Operating Segments Billings in excess of costs and estimated earnings on uncompleted contracts (contract liabilities) Billings In Excess Of Cost On Uncompleted Contracts Billings In Excess Of Cost On Uncompleted Contracts Lease Contractual Term [Domain] Lease Contractual Term [Domain] Plan Name [Domain] Plan Name [Domain] Remainder of 2022 Lessee, Operating Lease, Liability, to be Paid, Remainder of Fiscal Year Goodwill [Line Items] Goodwill [Line Items] Statement of Cash Flows [Abstract] Statement of Cash Flows [Abstract] Entity Address, State or Province Entity Address, State or Province Level 1 Fair Value, Inputs, Level 1 [Member] Schedule of Notional Amounts of Outstanding Derivative Positions Schedule of Notional Amounts of Outstanding Derivative Positions [Table Text Block] Administration expense related to employee contribution plan Defined Contribution Plan, Administrative Expense Award Type [Axis] Award Type [Axis] New Accounting Pronouncements or Change in Accounting Principle [Line Items] New Accounting Pronouncements or Change in Accounting Principle [Line Items] Net cash provided by operating activities Net Cash Provided by (Used in) Operating Activities Current maturities of operating lease obligations Operating Less: Current obligation under leases Operating Lease, Liability, Current Derivative financial instruments Derivative Asset Revenue Business Combination, Pro Forma Information, Revenue of Acquiree since Acquisition Date, Actual Amounts paid to sellers Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Liability, Settlements Finance lease cost: Lease, Cost [Abstract] Forfeited/Cancelled (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Nonvested Options Forfeited, Number of Shares Accounts receivable Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Receivables Term Loan Agreement Term Loan Agreement [Member] Term loan agreement. Property and equipment Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Property, Plant, and Equipment Recoveries collected and additions Accounts Receivable, Allowance for Credit Loss, Recovery Long-term debt Long-term debt, less current maturities Long-Term Debt, Excluding Current Maturities Total liabilities Liabilities Operating leases (in years) Operating Lease, Weighted Average Remaining Lease Term Share-based Compensation Arrangement by Share-based Payment Award [Line Items] Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items] Segment gross profit percentage Adjusted Gross Profit, Percentage Adjusted Gross Profit, Percentage Change in goodwill due to tax election Goodwill, Purchase Accounting Adjustments Estimates of Acquired Intangible Assets Finite-Lived and Indefinite-Lived Intangible Assets Acquired as Part of Business Combination [Table Text Block] Cash flows from investing activities Net Cash Provided by (Used in) Investing Activities [Abstract] Cash Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Cash and Equivalents Entity Common Stock, Shares Outstanding Entity Common Stock, Shares Outstanding Fair Value Hierarchy and NAV [Domain] Fair Value Hierarchy and NAV [Domain] Total lease liabilities Lease Liabilities Represents total lease liabilities. Medical IBNR Included in Accrued Compensation Postretirement Health Coverage [Member] Revenue from Contract with Customer Revenue from Contract with Customer [Policy Text Block] Other building products Other Building Products [Member] Other building products. Preferred stock, shares issued (in shares) Preferred Stock, Shares Issued Document Type Document Type Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member] Long-Term Debt Long-Term Debt [Text Block] Awards Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number of Shares [Roll Forward] Concentration Risk Benchmark [Domain] Concentration Risk Benchmark [Domain] Financial assets: Assets, Fair Value Disclosure [Abstract] Finite-Lived Intangible Assets, Major Class Name [Domain] Finite-Lived Intangible Assets, Major Class Name [Domain] Operating Lease Operating Lease [Member] Operating Lease Nonvested performance-based stock awards/units, Beginning balance (in USD per share) Nonvested performance-based stock awards/units, Ending balance (in USD per share) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value Segments [Axis] Segments [Axis] Employee Benefits Compensation and Employee Benefit Plans [Text Block] Product and Service [Domain] Product and Service [Domain] Entity Shell Company Entity Shell Company Investments [Abstract] 2024 Lessee, Operating Lease, Liability, to be Paid, Year One Commitments And Contingencies Disclosure [Table] Commitments And Contingencies Disclosure [Table] Commitments And Contingencies Disclosure [Table] Accounts receivable, related parties Accounts Receivable, Related Parties, Current Medium-term Notes Medium-term Notes [Member] 2026 Long-Term Debt, Maturity, Year Three Affiliated Entity Affiliated Entity [Member] Subsequent Event Subsequent Event [Member] Consolidation Items [Domain] Consolidation Items [Domain] Non-Employee Common Stock Awards Share-Based Payment Arrangement, Nonemployee [Member] Summary of Assets and Liabilities Related to Uncompleted Contracts and Customer Deposits Contract with Customer, Contract Asset, Contract Liability, and Receivable [Table Text Block] Document Period End Date Document Period End Date (Benefit) expense associated with swap net settlements Other Comprehensive Income (Loss), Cash Flow Hedge, Reclassification For Settlement, Before Tax Other Comprehensive Income (Loss), Cash Flow Hedge, Reclassification For Settlement, Before Tax Total assets Assets Amounts written off Accounts Receivable, Allowance for Credit Loss, Writeoff Debt Disclosure [Abstract] Debt Disclosure [Abstract] Earnings Per Share [Abstract] Earnings Per Share [Abstract] Income Statement Location [Axis] Income Statement Location [Axis] Diluted net income per share (in USD per share) Business Acquisition, Pro Forma Earnings Per Share, Diluted Interest Rate Swap Interest Rate Swap [Member] Included in other long-term liabilities Workers' Compensation Liability, Noncurrent Current maturities of long-term debt Less: current maturities Long-Term Debt, Current Maturities Estimated Fair Value Finite-Lived Intangible Assets Acquired Net cash used in financing activities Net Cash Provided by (Used in) Financing Activities Senior Notes Long-Term Debt, Fair Value Accounting Policies [Abstract] Accounting Policies [Abstract] Stock repurchase program, authorized Stock Repurchase Program, Authorized Amount Surrender of common stock awards (in shares) Shares Issued, Shares, Share-Based Payment Arrangement, Forfeited Interest Period [Domain] Interest Period [Domain] Interest Period [Domain] Accrued compensation Employee-related Liabilities, Current Variable lease costs Variable Lease, Cost Income before income taxes Income before income taxes Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest Stockholders’ equity Stockholders' Equity Attributable to Parent [Abstract] Prepaid expenses and other current assets Prepaid Expense and Other Assets, Current 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] 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] 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] Segments [Domain] Segments [Domain] Schedule of Goodwill [Table] Schedule of Goodwill [Table] Amortization of deferred financing costs and debt discount Amortization of Debt Issuance Costs and Discounts Income Per Common Share Earnings Per Share [Text Block] Customer [Axis] Customer [Axis] 2024 (in pounds) Purchase Obligation, Pounds To Be Purchased, Year One Purchase Obligation, Pounds To Be Purchased, Year One Finance lease obligations Financing Finance Lease, Liability, Noncurrent Goodwill (gross), beginning balance Goodwill (gross), ending balance Goodwill, Gross Related Party Transaction [Line Items] Related Party Transaction [Line Items] Amortization of unrealized loss Expense associated with amortization of amended/terminated swaps Other Comprehensive Income (Loss), Cash Flow Hedge, Reclassification for Discontinuance, before Tax Award Type [Domain] Award Type [Domain] Grantee Status [Axis] Grantee Status [Axis] Weighted Average Remaining Vesting Period (in years) Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition Income taxes receivable/payable Increase (Decrease) in Income Taxes Schedule of Gross Carrying Amount, Accumulated Amortization and Net Book Value Schedule of Finite-Lived Intangible Assets [Table Text Block] Interest Period [Axis] Interest Period [Axis] Interest Period Cash Paid Payments to Acquire Businesses, Gross Unrealized (losses) gains in fair value Other Comprehensive Income (Loss), before Reclassifications, Net of Tax Summary of Carrying Values and Associated Fair Values of Financial Assets and Liabilities Fair Value, by Balance Sheet Grouping [Table Text Block] Derivative Contract [Domain] Derivative Contract [Domain] Gross profit Gross profit Gross Profit Total Receivables, Long-Term Contracts or Programs Installation Installation Segment [Member] Installation Segment Entity Registrant Name Entity Registrant Name Statement Of Shareholders Equity [Table] Statement Of Shareholders Equity [Table] Statement Of Shareholders Equity [Table] Subsequent Events Subsequent Events [Text Block] Inventories Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Inventory Combined Business Acquisitions Series of Individually Immaterial Business Acquisitions [Member] Customer relationships Customer Relationships [Member] Entity Address, City or Town Entity Address, City or Town Accumulated Gain (Loss), Net, Cash Flow Hedge, Parent Accumulated Gain (Loss), Net, Cash Flow Hedge, Parent [Member] 2025 (in pounds) Purchase Obligation, Pounds To Be Purchased, Year Two Purchase Obligation, Pounds To Be Purchased, Year Two Leases [Abstract] Leases [Abstract] Operating expenses Operating Expenses [Abstract] Issuance of awards previously classified as liability awards Stock Issued During Period, Value, Restricted Stock Award, Net of Forfeitures Eliminations Intersegment Eliminations [Member] Consolidation Consolidation, Policy [Policy Text Block] Other Other Acquisitions [Member] Other Acquisitions Minimum Minimum [Member] Statement of Financial Position [Abstract] Statement of Financial Position [Abstract] Entity Emerging Growth Company Entity Emerging Growth Company Interest Rate Swap Three, Effective December 31, 2021 Interest Rate Swap Three, Effective December 31, 2021 [Member] Interest Rate Swap Three, Effective December 31, 2021 Common stock, par value (in USD per share) Common Stock, Par or Stated Value Per Share Estimated earnings Estimated Earnings On Long Term Contracts Estimated earnings on long term contracts. Intangibles Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Intangible Assets, Other than Goodwill Amortized interest expense of financing element Other Comprehensive Income (Loss) before Reclassifications, Tax Commitments and Contingencies Disclosure [Abstract] Commitments and Contingencies Disclosure [Abstract] Schedule of Segment Reporting Information, by Segment [Table] Schedule of Segment Reporting Information, by Segment [Table] Treasury Stock Treasury Stock, Common [Member] Fair Value Measurements Fair Value Disclosures [Text Block] AOCI Including Portion Attributable to Noncontrolling Interest, Net of Tax [Roll Forward] AOCI Including Portion Attributable to Noncontrolling Interest, Net of Tax [Roll Forward] Trading Symbol Trading Symbol Entity File Number Entity File Number Share repurchase, price per share (in usd per share) Treasury Stock Acquired, Average Cost Per Share Treasury stock (in shares) BEGINING BALANCE, Treasury Stock (in shares) ENDING BALANCE, Treasury Stock (in shares) Treasury Stock, Common, Shares Accumulated Other Comprehensive Income (Loss) [Line Items] Accumulated Other Comprehensive Income (Loss) [Line Items] 2027 Finite-Lived Intangible Asset, Expected Amortization, Year Four Credit Losses Allowance for Credit Losses [Text Block] Insurance Type and Tier Identifier [Axis] Insurance Type and Tier Identifier [Axis] OCI, Cash Flow Hedge, Reclassification for Discontinuance, Statement of Income or Comprehensive Income [Extensible Enumeration] OCI, Cash Flow Hedge, Reclassification for Discontinuance, Statement of Income or Comprehensive Income [Extensible Enumeration] Derivative Instruments and Hedging Activities Disclosures [Table] Derivative Instruments and Hedging Activities Disclosures [Table] Title of Individual [Axis] Title of Individual [Axis] Share-based awards granted (in shares) Granted (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period Effective tax rate (as percent) Effective Income Tax Rate Reconciliation, Percent Concentration Risk Benchmark [Axis] Concentration Risk Benchmark [Axis] Cash equivalents Cash and Cash Equivalents, Fair Value Disclosure Business Combinations Business Combination Disclosure [Text Block] Other expense, net Other Nonoperating Income (Expense) [Abstract] Included in other current liabilities Accrued Insurance, Current Accounts payable Increase (Decrease) in Accounts Payable Fair value of assets acquired and purchase price Business Combination, Recognized Identifiable Assets Acquired, Goodwill, and Liabilities Assumed, Net Beginning balance Ending balance Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Liability Value Concentration risk (percent) Concentration Risk, Percentage Subsequent Events [Abstract] Subsequent Events [Abstract] Net change on cash flow hedges, net of tax benefit (provision) of $2,252 and $(6,430) for the three months ended March 31, 2023 and 2022, respectively. Other comprehensive (loss), net of tax Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), after Reclassification and Tax Seller obligations in connection with acquisition of businesses Business Combination, Consideration Transferred, Liabilities Incurred Net income Business Acquisition, Pro Forma Net Income (Loss) Liability Performance-Based Stock Awards Liability Performance-based Stock Awards [Member] Liability Performance-based Stock Awards Income Taxes Income Tax Disclosure [Text Block] Sales Related party sales Revenue from Related Parties Amortization Amortization of intangibles Amortization of Intangible Assets Summary of Change in Carrying Amount of Goodwill Schedule of Goodwill [Table Text Block] Interest Interest Paid, Excluding Capitalized Interest, Operating Activities Basic (in USD per share) Earnings Per Share, Basic Amortization of unrealized gain (loss) Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), Reclassification, Tax 2026 Lessee, Operating Lease, Liability, to be Paid, Year Three Selling Selling Expense Concentration Risk Type [Domain] Concentration Risk Type [Domain] Total stockholders’ equity BEGINNING BALANCE ENDING BALANCE Stockholders' Equity Attributable to Parent Derivatives and Hedging Activities Derivative Instruments and Hedging Activities Disclosure [Text Block] Forfeited/Cancelled (in USD per share) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeitures, Weighted Average Grant Date Fair Value Lease Contractual Term [Axis] Lease Contractual Term [Axis] Entity Interactive Data Current Entity Interactive Data Current Performance-Based Restricted Stock Units Performance Based Stock Units [Member] Performance Based Stock Units [Member]. Fair Value, by Balance Sheet Grouping [Table] Fair Value, by Balance Sheet Grouping [Table] Accumulated Amortization Finite-Lived Intangible Assets, Accumulated Amortization Thereafter Lessee, Operating Lease, Liability, to be Paid, After Year Four Lessee, Operating Lease, Liability, to be Paid, After Year Four Changes in assets and liabilities, excluding effects of acquisitions Increase (Decrease) in Operating Capital [Abstract] 2026 Finite-Lived Intangible Asset, Expected Amortization, Year Three Summary of Change in Fair Value of Contingent Consideration Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation [Table Text Block] Portion at Fair Value Measurement Portion at Fair Value Measurement [Member] Dividends paid Amount Paid Payments of Dividends Retained Earnings Retained Earnings [Member] Segment Reporting Information [Line Items] Segment Reporting Information [Line Items] Dividends declared Amount Declared Dividends, Common Stock, Cash Total lease costs Lease, Cost Common Stock Common Stock [Member] Cash and cash equivalents Money Market Funds, at Carrying Value Summary of Stock Compensation Expenses Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Table Text Block] Thereafter Finance Lease, Liability, to be Paid, After Year Four Finance Lease, Liability, to be Paid, After Year Four Share-based compensation issued to directors Shares Issued, Value, Share-Based Payment Arrangement, after Forfeiture Number of reportable segment Number of Reportable Segments Schedule of Lease Costs for Finance and Operating Leases Lease, Cost [Table Text Block] Repurchase of common stock Payments for Repurchase of Common Stock Common stock shares available for issuance (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Available for Grant Contingent consideration Business Combination, Contingent Consideration, Liability Statement [Table] Statement [Table] Principal payments on long-term debt Repayments of Other Long-Term Debt One Month One Month [Member] One Month Insurance receivables for claims that exceeded the stop loss limit Insurance Receivable For Claims Exceeding Stop Loss Limit Insurance receivable for claims exceeding stop loss limit. Vested (in USD per share) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period, Weighted Average Grant Date Fair Value Document Quarterly Report Document Quarterly Report 2023 Acquisitions 2023 Acquisitions [Member] 2023 Acquisitions Term Loan Term Loan [Member] Term loan. Schedule of Cost and Estimated Earnings on Uncompleted Contracts Costs And Estimated Earnings On Uncompleted Contracts [Table Text Block] Costs And Estimated Earnings On Uncompleted Contracts Table [Text Block] Current assets Assets, Current [Abstract] Operating Leases Operating Lease, Liability [Abstract] Operating lease obligations Operating Operating Lease, Liability, Noncurrent Statistical Measurement [Axis] Statistical Measurement [Axis] Common stock repurchase (in shares) Treasury Stock, Shares, Acquired Included in other non-current assets Total insurance receivables and indemnification assets included in other non-current assets Insurance Settlements Receivable, Noncurrent Grantee Status [Domain] Grantee Status [Domain] Retained earnings Retained Earnings (Accumulated Deficit) Accounts receivable (less allowance for credit losses of $10,059 and $9,549 at March 31, 2023 and December 31, 2022, respectively) Accounts Receivable, after Allowance for Credit Loss, Current Less: Amounts representing executory costs Finance Lease Executory Costs Represents executory costs of finance leases. Schedule of Finite-Lived Intangible Assets [Table] Schedule of Finite-Lived Intangible Assets [Table] Operating Lease Executory Cost Operating Lease Executory Cost Operating Lease Executory Cost Equity Components [Axis] Equity Components [Axis] Repair and remodel Repair and Remodel[Member] Repair and remodel. Dividends Payable [Table] Dividends Payable [Table] Related Party Transactions Related Party Transactions Disclosure [Text Block] Pro Forma Results of Operations Business Acquisition, Pro Forma Information [Table Text Block] Revision of Prior Period [Domain] Revision of Prior Period [Domain] Document Fiscal Year Focus Document Fiscal Year Focus Cost of sales (1) Cost of Goods and Service, Excluding Depreciation, Depletion, and Amortization Number of equal installments for common stock Share Based Compensation Arrangement By Share Based Payment Award Number Of Equal Installments For Vesting Of Stock Awards Number of equal installments for vesting restricted stock. Cash flows from operating activities Net Cash Provided by (Used in) Operating Activities [Abstract] Statement [Line Items] Statement [Line Items] Other Other Party Operating Leases [Member] Principal payments on finance lease obligations Financing cash flows for finance leases Finance Lease, Principal Payments Nonvested performance-based stock awards/units, Beginning balance (in shares) Nonvested performance-based stock awards/units, Ending balance (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number Number of swaps Number Of Swaps Number of swaps. Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis] Variable Rate [Domain] Variable Rate [Domain] Fair Value Hierarchy and NAV [Axis] Fair Value Hierarchy and NAV [Axis] Gross Carrying Amount Finite-Lived Intangible Assets, Gross Operating lease right-of-use assets Operating Operating Lease, Right-of-Use Asset Accumulated  Other Comprehensive (Loss) Income AOCI Attributable to Parent [Member] Thereafter Long-Term Debt, Maturity, After Year Four Long-Term Debt, Maturity, After Year Four Document Transition Report Document Transition Report Local Phone Number Local Phone Number Operating income Operating income Operating Income (Loss) Inventories Increase (Decrease) in Inventories Fireproofing/firestopping Fireproofing And Firestopping [Member] Fireproofing And Firestopping Surrender of common stock awards by employees Payments for Repurchase of Other Equity Common stock, shares outstanding (in shares) Common Stock, Shares, Outstanding Schedule of Accrued General Insurance Reserves Schedule Of Accrued Insurance Reserves [Table Text Block] Schedule of accrued insurance reserves. Goodwill Goodwill (net) Goodwill Total financial liabilities Liabilities, Fair Value Disclosure Name of Property [Domain] Name of Property [Domain] Adjustments to reconcile net income to net cash provided by operating activities Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract] Goodwill and Intangibles Goodwill and Intangible Assets Disclosure [Text Block] Income tax provision Income tax expense Income Tax Expense (Benefit) Finance Lease, Right-of-Use Asset, Statement of Financial Position [Extensible List] Finance Lease, Right-of-Use Asset, Statement of Financial Position [Extensible Enumeration] Deferred income taxes Deferred Income Tax Liabilities, Net Preferred stock, par value (in USD per share) Preferred Stock, Par or Stated Value Per Share 2027 Lessee, Operating Lease, Liability, to be Paid, Year Four Income Statement [Abstract] Income Statement [Abstract] Granted (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Gross Hedging Relationship [Axis] Hedging Relationship [Axis] Credit Loss [Abstract] Credit Loss [Abstract] Additional Paid In Capital Additional Paid-in Capital [Member] Document Fiscal Period Focus Document Fiscal Period Focus Window Blinds Window Blinds [Member] Window Blinds Earnings Per Share: Earnings Per Share, Basic [Abstract] Cost of sales Cost of Goods and Services Sold Issuance of common stock awards to employees Shares Issued, Value, Share-Based Payment Arrangement, before Forfeiture Diluted (in shares) Weighted Average Number of Shares Outstanding, Diluted Derivative financial instruments Derivative Liability Less: Billings to date Billed Contracts Receivable Recently Adopted Accounting Pronouncements Accounting Standards Update and Change in Accounting Principle [Table Text Block] Pension Plans, Postretirement and Other Employee Benefits [Line Items] Pension Plans, Postretirement and Other Employee Benefits [Line Items] Pension plans, postretirement and other employee benefits. Accounts Receivable, Allowance for Credit Loss [Roll Forward] Accounts Receivable, Allowance for Credit Loss [Roll Forward] Common stock; $0.01 par value: 100,000,000 authorized, 33,498,693 and 33,429,557 issued and 28,375,037 and 28,306,482 shares outstanding at March 31, 2023 and December 31, 2022, respectively Common Stock, Value, Issued Carrying Value Reported Value Measurement [Member] Debt Instrument, Name [Domain] Debt Instrument, Name [Domain] Business Acquisition, Acquiree [Domain] Business Acquisition, Acquiree [Domain] Senior Notes Senior Notes [Member] Granted (in USD per share) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value Other expense, net Other Operating Income (Expense), Net Schedule of Cash Flow Hedges Included in Accumulated Other Comprehensive Income (Loss) Schedule of Cash Flow Hedges Included in Accumulated Other Comprehensive Income (Loss) [Table Text Block] Schedule of Fair Values of Financial Assets and Liabilities Schedule of Fair Value, Assets and Liabilities Measured on Recurring Basis [Table Text Block] Operating segments Operating Segments [Member] Short-term lease costs Short-Term Lease, Cost Preferred stock, shares authorized (in shares) Preferred Stock, Shares Authorized Product Concentration Risk Product Concentration Risk [Member] Weighted-average remaining lease term: Weighted Average Remaining Lease Term Of Operating Finance Leases [Abstract] Represents weighted average remaining lease term of operating finance leases abstract. Cash and cash equivalents at beginning of period Cash and cash equivalents at end of period Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents Commitments and Contingencies Commitments and Contingencies Disclosure [Text Block] Accumulated impairment losses Goodwill, Impaired, Accumulated Impairment Loss Current liabilities Liabilities, Current [Abstract] Common stock, shares issued (in shares) BEGINNING BALANCE (in shares) ENDING BALANCE (in shares) Common Stock, Shares, Issued Unrealized loss on cash flow hedge, tax benefit Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), after Reclassification, Tax Interest on finance lease obligations Finance Lease, Interest Expense Net revenue, Installation Customer Installation [Member] Customer Installation Unpaid purchases of property and equipment included in accounts payable Capital Expenditures Incurred but Not yet Paid Retirement Plan Type [Domain] Retirement Plan Type [Domain] Acquisition-related costs Business Combination, Acquisition Related Costs Income Statement Location [Domain] Income Statement Location [Domain] Cash Flow Hedging Cash Flow Hedging [Member] Current maturities of finance lease obligations Financing Less: Current obligation under leases Finance Lease, Liability, Current Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] Current Current Lease Liabilities [Abstract] Represents current lease liabilities abstract. Amendment Flag Amendment Flag Net cash used in investing activities Net Cash Provided by (Used in) Investing Activities Operating lease costs Operating Lease, Cost Property and equipment obtained in exchange for finance lease obligations Finance Lease Obligations Incurred The increase during the period in finance lease obligations due to entering into new capital leases. Debt instrument, face amount Debt Instrument, Face Amount Finance Leases Finance Lease, Liability [Abstract] Accounts payable and other current liabilities Business Combination Recognized Identifiable Assets Acquired And Liabilities Assumed Accounts Payable And Other Current Liabilities Business combination recognized identifiable assets acquired and liabilities assumed accounts payable and other current liabilities Comprehensive income Comprehensive Income (Loss), Net of Tax, Attributable to Parent Workers' compensation liability Workers' Compensation Liability Business combinations Goodwill, Acquired During Period Net revenue Business Acquisition, Pro Forma Revenue Schedule of Segment Information Schedule of Segment Reporting Information, by Segment [Table Text Block] Acquisition-related obligations Payments of Merger Related Costs, Financing Activities Entity Current Reporting Status Entity Current Reporting Status Goodwill and Intangible Assets Disclosure [Abstract] Goodwill and Intangible Assets Disclosure [Abstract] Other current liabilities Other Liabilities, Current Other non-current assets Other Assets, Noncurrent Purchases Related Party Transaction, Purchases from Related Party Depreciation and amortization (1) Depreciation, Depletion and Amortization 2024 Finance Lease, Liability, to be Paid, Year One Disaggregation of Revenue [Table] Disaggregation of Revenue [Table] Garage doors Garage Doors [Member] Garage doors Summary of Estimated Fair Value of Assets Acquired and Liabilities Assumed Schedule of Recognized Identified Assets Acquired and Liabilities Assumed [Table Text Block] Schedule of Common or Related Party Transactions Schedule of Related Party Transactions [Table Text Block] Dividend Two Dividend Two [Member] Dividend Two Accumulated Other Comprehensive Income (Loss) [Table] Accumulated Other Comprehensive Income (Loss) [Table] Summary of Workers' Compensation Known Claims and IBNR Reserves Schedule Of Employee Related Liabilities [Table Text Block] Schedule of employee related liabilities. Performance-Based Restricted Stock Units Performance Based Restricted Stock Units [Member] Number of derivatives Derivative, Number of Instruments Held Entity Incorporation, State or Country Code Entity Incorporation, State or Country Code 2025 Finance Lease, Liability, to be Paid, Year Two Basis of Presentation Basis of Accounting, Policy [Policy Text Block] Operating cash flows for operating leases Operating Lease, Payments Schedule of Insurance Receivable for Claims Insurance Receivable Claims [Table Text Block] 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. Schedule of Estimated Aggregate Annual Amortization Schedule of Finite-Lived Intangible Assets, Future Amortization Expense [Table Text Block] Increase in gross carrying amount of intangibles Finite-Lived Intangible Assets, Period Increase (Decrease) Selling Selling and Marketing Expense [Member] Dividends Declared and Paid Dividends Declared [Table Text Block] Postemployment Benefits [Abstract] Postemployment Benefits [Abstract] Relationship to Entity [Domain] Title of Individual [Domain] Notes Payable Notes Payable, Other Payables [Member] Allowance for credit losses Accounts Receivable, Allowance for Credit Loss, Current Forfeited/Cancelled (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeited in Period Total long term debt Long-Term Debt Other (income) expense Other Nonoperating Income (Expense) General Liability General Liability [Member] Common stock, shares authorized (in shares) Common Stock, Shares Authorized Schedule of Related Party Transactions, by Related Party [Table] Schedule of Related Party Transactions, by Related Party [Table] Selling Operating Expenses Maximum Maximum [Member] Derivative Instruments and Hedging Activities Disclosures [Line Items] Derivative Instruments and Hedging Activities Disclosures [Line Items] Accumulated Other Comprehensive Income (Loss), Net of Tax Accumulated Other Comprehensive Income (Loss), Net of Tax Issuance of common stock awards to employees (in shares) Shares Issued, Shares, Share-Based Payment Arrangement, before Forfeiture Schedule of Business Acquisitions, by Acquisition [Table] Schedule of Business Acquisitions, by Acquisition [Table] Cash and cash equivalents Cash and Cash Equivalents, at Carrying Value Schedule of Lease-Related Assets and Liabilities Assets And Liabilities, Lessee [Table Text Block] Assets And Liabilities, Lessee Total current assets Assets, Current Designated as Hedging Instrument Designated as Hedging Instrument [Member] Income taxes, net of refunds Income Taxes Paid, Net Weighted Average Grant Date Fair Value Per Share Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Nonvested, Weighted Average Grant Date Fair Value [Abstract] Contract liability revenue recognized Contract with Customer, Liability, Revenue Recognized Business Acquisition [Line Items] Business Acquisition [Line Items] Dividends Payable [Line Items] Dividends Payable [Line Items] Other Goodwill, Other Increase (Decrease) Entity Small Business Entity Small Business Measurement Basis [Axis] Measurement Basis [Axis] Stockholders' Equity Stockholders' Equity Note Disclosure [Text Block] Amortization of operating lease right-of-use assets Operating Lease, Right-of-Use Asset, Amortization Expense Cash dividends declared per share (in USD per share) Dividends declared (in USD per share) Common Stock, Dividends, Per Share, Declared Intangibles, net Net Book Value Finite-Lived Intangible Assets, Net Related Party Related Party Operating Leases [Member] Included in other current liabilities Workers' Compensation Liability, Current Significant Accounting Policies Significant Accounting Policies [Text Block] Unrecognized Compensation Expense on Unvested Awards Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount Seller Obligations Less seller obligations Seller Obligations In Connection With Acquisition Of Business It represents the non cash amount of seller obligations in connection with acquisition of business. Common Stock Awards Common Stock Awards [Member] Common stock awards. Included in other long-term liabilities Accrued Insurance, Noncurrent Liabilities Lease Liabilities [Abstract] Represents lease liabilities abstract. Accounts receivable Increase (Decrease) in Accounts Receivable Title of 12(b) Security Title of 12(b) Security Organization Organization, Consolidation and Presentation of Financial Statements Disclosure [Text Block] Costs incurred on uncompleted contracts Costs Incurred on Uncompleted Contracts Costs incurred on uncompleted contracts. Number of locations the company operates Number Of Locations In Operation Number Of Locations In Operation Payables and Accruals [Abstract] Awards Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Nonvested, Number of Shares [Roll Forward] Assets Lease Assets [Abstract] Represents lease assets abstract. Other Product and Service, Other [Member] Subsequent Event [Line Items] Subsequent Event [Line Items] Healthcare benefit expense, net of employee contributions Health Insurance Expense Health insurance expense. Debt Instrument [Line Items] Debt Instrument [Line Items] Business Combination and Asset Acquisition [Abstract] Impairment losses on contract assets Capitalized Contract Cost, Impairment Loss Share-based compensation issued to directors (in shares) Shares Issued, Shares, Share-Based Payment Arrangement, after Forfeiture Debt issuance costs Payments of Debt Issuance Costs Present value of future minimum lease payments Operating Lease, Liability Performance-Based Stock Awards Performance Based Awards [Member] Performance based awards. Information on Segments Segment Reporting Disclosure [Text Block] Officer Officer [Member] Interest Rate Swap One, Effective July 20, 2021 Interest Rate Swap One, Effective July 20, 2021 [Member] Interest Rate Swap One, Effective July 20, 2021 Total minimum lease payments Finance Lease, Liability, to be Paid Weighted-average discount rate: Weighted Average Discount rate Of Operating Finance Leases [Abstract] Represents weighted average discount rate of operating finance leases abstract. Schedule of Undiscounted Cash Flows Finance Lease Obligations Finance Lease, Liability, Fiscal Year Maturity [Table Text Block] Statement Of Shareholders Equity [Line Items] Statement Of Shareholders Equity [Line Items] Statement Of Shareholders Equity [Line Items] 2025 Finite-Lived Intangible Asset, Expected Amortization, Year Two LIABILITIES AND STOCKHOLDERS' EQUITY Liabilities and Equity [Abstract] Fair Value, Recurring and Nonrecurring [Table] Fair Value, Recurring and Nonrecurring [Table] Remainder of 2022 Long-Term Debt, Maturity, Remainder of Fiscal Year Weighted average shares outstanding: Weighted Average Number of Shares Outstanding, Diluted [Abstract] Gain on sale of property and equipment Gain (Loss) on Disposition of Property Plant Equipment, Excluding Oil and Gas Property and Timber Property Inventories Inventory, Net Accounts payable Accounts Payable, Current Other comprehensive (loss) income, net of tax: Comprehensive Income (Loss), Net of Tax, Attributable to Parent [Abstract] Number of businesses acquired Number of Businesses Acquired Other assets Increase (Decrease) in Other Operating Assets Unamortized debt issuance costs Debt Instrument, Unamortized Discount Rain gutters Rain Gutters [Member] Rain gutters. Hedging Relationship [Domain] Hedging Relationship [Domain] Segment gross profit Gross Profit, Excluding Depreciation, Amortization And Depletion Gross Profit, Excluding Depreciation, Amortization And Depletion 2027 Long-Term Debt, Maturity, Year Four Hedging Designation [Axis] Hedging Designation [Axis] Entity Filer Category Entity Filer Category Basic (in shares) Weighted Average Number of Shares Outstanding, Basic Six Months Six Months [Member] Six Months Net Income Business Combination, Pro Forma Information, Earnings or Loss of Acquiree since Acquisition Date, Actual Unrecognized Share-Based Compensation Expense Related to Unvested Awards Share-Based Payment Arrangement, Nonvested Award, Cost [Table Text Block] Payments on Term Loan Repayments of Medium-term Notes Financial liabilities: Liabilities, Fair Value Disclosure [Abstract] Three Months Three Months [Member] Three Months Share-based compensation expense Stock compensation expense Share-Based Payment Arrangement, Expense Supplemental disclosure of noncash activities Noncash Investing and Financing Items [Abstract] Commitments and contingencies Commitments and Contingencies Security Exchange Name Security Exchange Name Weighted Average Estimated Useful Life (in years) Acquired Finite-Lived Intangible Assets, Weighted Average Useful Life Notional amount of derivative instruments Derivative, Notional Amount Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items] Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items] Preferred Stock; $0.01 par value: 5,000,000 authorized and 0 shares issued and outstanding at March 31, 2023 and December 31, 2022, respectively Preferred Stock, Value, Issued Other long-term liabilities Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Noncurrent Liabilities, Other Schedule of Debt Schedule of Debt [Table Text Block] Administrative General and Administrative Expense [Member] Net revenue Revenue from Contract with Customer, Excluding Assessed Tax Other Other Segment [Member] Other Segment Dividends [Domain] Dividends [Domain] Cover [Abstract] Cover [Abstract] Schedule of Long-term Debt Instruments [Table] Schedule of Long-Term Debt Instruments [Table] Schedule of Insurance Receivable for Claims Schedule Of Insurance Loss Reserves For Insured Obligations [Table Text Block] Schedule of insurance loss reserves for insured obligations. Level 3 Fair Value, Inputs, Level 3 [Member] Depreciation and amortization of property and equipment Depreciation, Depletion and Amortization, Nonproduction Beginning balance Ending balance Accounts Receivable, Allowance for Credit Loss Backlog Order or Production Backlog [Member] Finance leases (as percent) Finance Lease, Weighted Average Discount Rate, Percent Revenue Recognition Revenue from Contract with Customer [Text Block] Segment Reporting [Abstract] Cash acquired, net Cash Acquired from Acquisition Workers' compensation expense Workers Compensation Expense All expenses associated with Worker's Compensation Insurance benefits incurred during the period. Finance Lease Finance Lease [Member] Finance Lease Nonvested performance-based stock awards, Beginning balance (in USD per share) Nonvested performance-based stock awards, Ending balance (in USD per share) Share-Based Compensation Arrangement by Share-Based Payment Award, Option, Nonvested, Weighted Average Exercise Price Expected time of revenue recognition (in months) Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Explanation Interest Rate Swap Five, Effective December 31, 2025 Interest Rate Swap Five, Effective December 31, 2025 [Member] Interest Rate Swap Five, Effective December 31, 2025 Total liabilities and stockholders’ equity Liabilities and Equity Term loan facility maturity period (in years) Debt Instrument, Term Related Party [Axis] Related Party [Axis] Long-term Debt, Type [Axis] Long-Term Debt, Type [Axis] Goodwill [Roll Forward] Goodwill [Roll Forward] Residential new construction Residential New Construction [Member] Residential new construction. Dilutive effect of outstanding restricted stock awards after application of the Treasury Stock Method (in shares) Incremental Common Shares Attributable to Dilutive Effect of Share-Based Payment Arrangements Organization, Consolidation and Presentation of Financial Statements [Abstract] Organization, Consolidation and Presentation of Financial Statements [Abstract] Acquisitions of businesses, net of cash acquired of $10 and $0 in 2023 and 2022, respectively Payments to Acquire Businesses, Net of Cash Acquired Goodwill deduction for tax purposes Business Acquisition, Goodwill, Expected Tax Deductible Amount Level 2 Fair Value, Inputs, Level 2 [Member] Purchases of investments Payments to Acquire Investments Current Fiscal Year End Date Current Fiscal Year End Date Less: Amounts representing interest Lessee, Operating Lease, Liability, Undiscounted Excess Amount Other current assets Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Other Finite-Lived Intangible Assets [Line Items] Finite-Lived Intangible Assets [Line Items] Diluted (in USD per share) Earnings Per Share, Diluted Proceeds from sale of property and equipment Proceeds from Sale of Property, Plant, and Equipment Trademarks and tradenames Trademarks and Trade Names [Member] 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] 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] 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] Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward] Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward] Share-based compensation expense APIC, Share-Based Payment Arrangement, Increase for Cost Recognition Consolidation Items [Axis] Consolidation Items [Axis] Interest Rate Swap Two, Effective December 31, 2021 Interest Rate Swap Two, Effective December 31, 2021 [Member] Interest Rate Swap Two, Effective December 31, 2021 Concentration Risk Type [Axis] Concentration Risk Type [Axis] Total current liabilities Liabilities, Current Vested (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested, Number of Shares 2025 Lessee, Operating Lease, Liability, to be Paid, Year Two Customer Concentration Risk Customer Concentration Risk [Member] Transaction price allocated to uncompleted contracts Revenue, Remaining Performance Obligation, Amount Schedule of Changes In Allowance for Credit Losses Accounts Receivable, Allowance for Credit Loss [Table Text Block] Business Acquisition, Pro Forma Information [Abstract] Business Acquisition, Pro Forma Information [Abstract] Revenue from Contract with Customer Benchmark Revenue from Contract with Customer Benchmark [Member] Schedule of Undiscounted Cash Flows Operating Lease Obligations Lessee, Operating Lease, Liability, Maturity [Table Text Block] Entity Address, Address Line Two Entity Address, Address Line Two Entity Address, Address Line One Entity Address, Address Line One 2014 Omnibus Incentive Plan Two Thousand And Fourteen Omnibus Incentive Plan [Member] Two thousand and fourteen omnibus incentive plan. Contract liabilities Contract with Customer, Liability Non-current assets Other Assets, Noncurrent [Abstract] Product and Service [Axis] Product and Service [Axis] Other non-current assets Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Other Noncurrent Assets Finance leases (in years) Finance Lease, Weighted Average Remaining Lease Term Fair Value Disclosures [Abstract] Fair Value Disclosures [Abstract] Interest expense, net Interest expense Interest Expense Derivative Instruments and Hedging Activities Disclosure [Abstract] Derivative Instruments and Hedging Activities Disclosure [Abstract] Reclassification from accumulated other comprehensive income to interest expense Derivative Instruments, Gain (Loss) Reclassification from Accumulated OCI to Income, Estimated Net Amount to be Transferred Vested (in USD per share) Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested, Weighted Average Grant Date Fair Value Costs and estimated earnings in excess of billings on uncompleted contracts (contract assets) Costs And Estimated Earnings In Excess Of Billing On Uncompleted Contracts Costs And Estimated Earnings In Excess Of Billing On Uncompleted Contracts Retirement Plan Type [Axis] Retirement Plan Type [Axis] Total Accrued Insurance Equity [Abstract] Equity [Abstract] Subsequent Event [Table] Subsequent Event [Table] Vested (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period Net revenue, Installation Product Installation [Member] Product Installation Entity Tax Identification Number Entity Tax Identification Number Common stock shares authorized (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Authorized Summary of Equity-based Awards for Employees Schedule of Nonvested Share Activity [Table Text Block] Dividend One Dividend One [Member] Dividend One 5.75% Senior Notes Due 2028 Five Point Seven Five Percentage Senior Notes Due Two Thousand Twenty Eight [Member] Five Point Seven Five Percentage Senior Notes Due Two Thousand Twenty Eight Member. Interest rate of derivative instruments (as a percent) Derivative, Fixed Interest Rate Summary of Revenues Disaggregated by End Market and Product Disaggregation of Revenue [Table Text Block] Revenue from Contract with Customer [Abstract] Revenue from Contract with Customer [Abstract] Remainder of 2022 Finite-Lived Intangible Asset, Expected Amortization, Remainder of Fiscal Year Proceeds from vehicle and equipment notes payable Proceeds from Notes Payable Number of shares surrendered to satisfy tax withholding obligations (in shares) Share-Based Payment Arrangement, Shares Withheld for Tax Withholding Obligation Covenants not-to-compete Noncompete Agreements [Member] Type and Tier Identifier [Domain] Type and Tier Identifier [Domain] Thereafter Finite Lived Intangible Assets Amortization Expense After Year Four Finite lived intangible assets amortization expense after year four. Net under billings Net under billings Cost and Estimated Earnings Under Over Billings Net Cost and estimated earnings under or over billings net. Operating cash flows for finance leases Finance Lease, Interest Payment on Liability Accretion in value Fair Value Measurement With Unobservable Inputs Reconciliation Recurring Basis Liability Accretion Expense Fair value measurement with unobservable inputs reconciliation recurring basis liability accretion expense. Net change in cash and cash equivalents Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect Entity Central Index Key Entity Central Index Key Anchor Anchor [Member] Anchor Weighted Average Grant Date Fair Value Per Share Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value [Abstract] Name of Property [Axis] Name of Property [Axis] Finite-Lived Intangible Assets by Major Class [Axis] Finite-Lived Intangible Assets by Major Class [Axis] Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table] Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table] Vehicle and Equipment Vehicle And Equipment Notes [Member] Vehicle and equipment notes. Total Purchase Price Business Combination, Consideration Transferred City Area Code City Area Code Current period provision Accounts Receivable, Allowance for Credit Loss, Period Increase (Decrease) Administrative General and Administrative Expense ASSETS Assets [Abstract] Retirement Benefits [Abstract] Retirement Benefits [Abstract] Adjustment Revision of Prior Period, Adjustment [Member] Long-term Debt, Type [Domain] Long-Term Debt, Type [Domain] Commercial Commercial [Member] Commercial. Nonvested common stock awards, Beginning balance (in shares) Nonvested common stock awards, Ending balance (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Nonvested, Number of Shares Statement of Stockholders' Equity [Abstract] Statement of Stockholders' Equity [Abstract] Insurance receivables and indemnification assets for claims under fully insured policies Insurance Receivable And Indemnification Asset For Claims Under Fully Insured Policy Insurance receivable and indemnification asset for claims under fully insured policy. Dividends [Axis] Dividends [Axis] Non-Current Non Current Lease Assets [Abstract] Represents Operating and fianance lease right of use assets abstract. Cash flows from financing activities Net Cash Provided by (Used in) Financing Activities [Abstract] 2024 Long-Term Debt, Maturity, Year One Noncash stock compensation Share-Based Payment Arrangement, Noncash Expense Granted (in USD per share) Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value Variable Rate [Axis] Variable Rate [Axis] Shower doors, shelving and mirrors Shower Doors Shelving And Mirrors [Member] Shower doors shelving and mirrors. Less: Amounts representing interest Finance Lease, Liability, Undiscounted Excess Amount Other long-term liabilities Other Liabilities, Noncurrent Other liabilities Increase (Decrease) in Other Operating Liabilities Purchases of property and equipment Payments to Acquire Property, Plant, and Equipment Operating lease right-of-use asset Business Combination, Recognized Identifiable Assets Acquired And Liabilities Assumed, Operating Lease, Right-Of-Use Asset Business Combination, Recognized Identifiable Assets Acquired And Liabilities Assumed, Operating Lease, Right-Of-Use Asset Disaggregation of Revenue [Line Items] Disaggregation of Revenue [Line Items] Weighted Average Weighted Average [Member] 2024 Finite-Lived Intangible Asset, Expected Amortization, Year One Forfeited/Cancelled (in USD per share) Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Nonvested Options Forfeited, Weighted Average Grant Date Fair Value Right-of-use assets obtained in exchange for operating lease obligations Right-of-Use Asset Obtained in Exchange for Operating Lease Liability Cost of sales Cost of Sales [Member] Customer [Domain] Customer [Domain] EX-101.PRE 11 ibp-20230331_pre.xml XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE DOCUMENT XML 12 R1.htm IDEA: XBRL DOCUMENT v3.23.1
Cover Page - shares
3 Months Ended
Mar. 31, 2023
Apr. 27, 2023
Cover [Abstract]    
Document Type 10-Q  
Document Quarterly Report true  
Document Period End Date Mar. 31, 2023  
Document Transition Report false  
Entity File Number 001-36307  
Entity Registrant Name Installed Building Products, Inc.  
Entity Incorporation, State or Country Code DE  
Entity Tax Identification Number 45-3707650  
Entity Address, Address Line One 495 South High Street  
Entity Address, Address Line Two Suite 50  
Entity Address, City or Town Columbus  
Entity Address, State or Province OH  
Entity Address, Postal Zip Code 43215  
City Area Code 614  
Local Phone Number 221-3399  
Title of 12(b) Security Common Stock,  
Trading Symbol IBP  
Security Exchange Name NYSE  
Entity Current Reporting Status Yes  
Entity Interactive Data Current Yes  
Entity Filer Category Large Accelerated Filer  
Entity Small Business false  
Entity Emerging Growth Company false  
Entity Shell Company false  
Entity Common Stock, Shares Outstanding   28,404,505
Amendment Flag false  
Document Fiscal Year Focus 2023  
Document Fiscal Period Focus Q1  
Entity Central Index Key 0001580905  
Current Fiscal Year End Date --12-31  
XML 13 R2.htm IDEA: XBRL DOCUMENT v3.23.1
CONDENSED CONSOLIDATED BALANCE SHEETS (UNAUDITED) - USD ($)
$ in Thousands
Mar. 31, 2023
Dec. 31, 2022
Current assets    
Cash and cash equivalents $ 218,690 $ 229,627
Accounts receivable (less allowance for credit losses of $10,059 and $9,549 at March 31, 2023 and December 31, 2022, respectively) 397,573 397,222
Inventories 170,115 176,629
Prepaid expenses and other current assets 76,217 80,933
Total current assets 862,595 884,411
Non-current assets    
Property and equipment, net 126,384 118,774
Operating lease right-of-use assets 74,602 76,174
Goodwill 392,625 373,555
Intangibles, net 289,601 283,473
Other non-current assets 33,756 42,545
Total assets 1,779,563 1,778,932
Current liabilities    
Current maturities of long-term debt 31,165 30,983
Current maturities of operating lease obligations 26,000 26,145
Current maturities of finance lease obligations 2,588 2,508
Accounts payable 134,836 149,186
Accrued compensation 45,613 51,608
Other current liabilities 76,136 67,631
Total current liabilities 316,338 328,061
Long-term debt 830,225 830,171
Operating lease obligations 48,339 49,789
Finance lease obligations 6,559 6,397
Deferred income taxes 25,993 28,458
Other long-term liabilities 46,887 42,557
Total liabilities 1,274,341 1,285,433
Commitments and contingencies
Stockholders’ equity    
Preferred Stock; $0.01 par value: 5,000,000 authorized and 0 shares issued and outstanding at March 31, 2023 and December 31, 2022, respectively 0 0
Common stock; $0.01 par value: 100,000,000 authorized, 33,498,693 and 33,429,557 issued and 28,375,037 and 28,306,482 shares outstanding at March 31, 2023 and December 31, 2022, respectively 335 334
Additional paid in capital 232,503 228,827
Retained earnings 527,468 513,095
Treasury stock; at cost: 5,123,656 and 5,123,075 shares at March 31, 2023 and December 31, 2022, respectively (289,335) (289,317)
Accumulated Other Comprehensive Income (Loss), Net of Tax 34,251 40,560
Total stockholders’ equity 505,222 493,499
Total liabilities and stockholders’ equity 1,779,563 1,778,932
Customer relationships    
Non-current assets    
Intangibles, net 194,850 192,328
Other intangibles, net    
Non-current assets    
Intangibles, net $ 94,751 $ 91,145
XML 14 R3.htm IDEA: XBRL DOCUMENT v3.23.1
CONDENSED CONSOLIDATED BALANCE SHEETS (UNAUDITED) (Parenthetical) - USD ($)
$ in Thousands
Mar. 31, 2023
Dec. 31, 2022
Current assets    
Allowance for credit losses $ 10,059 $ 9,549
Stockholders’ equity    
Preferred stock, par value (in USD per share) $ 0.01 $ 0.01
Preferred stock, shares authorized (in shares) 5,000,000 5,000,000
Preferred stock, shares issued (in shares) 0 0
Preferred stock, shares outstanding (in shares) 0 0
Common stock, par value (in USD per share) $ 0.01 $ 0.01
Common stock, shares authorized (in shares) 100,000,000 100,000,000
Common stock, shares issued (in shares) 33,498,693 33,429,557
Common stock, shares outstanding (in shares) 28,375,037 28,306,482
Treasury stock (in shares) 5,123,656 5,123,075
XML 15 R4.htm IDEA: XBRL DOCUMENT v3.23.1
CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME (UNAUDITED) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2023
Mar. 31, 2022
Income Statement [Abstract]    
Net revenue $ 659,309 $ 587,492
Cost of sales 448,887 415,089
Gross profit 210,422 172,403
Operating expenses    
Selling 32,607 25,192
Administrative 89,504 79,144
Amortization 11,435 11,097
Operating income 76,876 56,970
Other expense, net    
Interest expense, net 9,670 10,600
Other (income) expense (153) 145
Income before income taxes 67,359 46,225
Income tax provision 18,085 12,403
Net income 49,274 33,822
Other comprehensive (loss) income, net of tax:    
Net change on cash flow hedges, net of tax benefit (provision) of $2,252 and $(6,430) for the three months ended March 31, 2023 and 2022, respectively. (6,309) 18,111
Comprehensive income $ 42,965 $ 51,933
Earnings Per Share:    
Basic (in USD per share) $ 1.76 $ 1.15
Diluted (in USD per share) $ 1.74 $ 1.14
Weighted average shares outstanding:    
Basic (in shares) 28,075,678 29,302,396
Diluted (in shares) 28,278,220 29,580,731
Cash dividends declared per share (in USD per share) $ 1.23 $ 1.22
XML 16 R5.htm IDEA: XBRL DOCUMENT v3.23.1
CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME (UNAUDITED) (Parenthetical) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2023
Mar. 31, 2022
Income Statement [Abstract]    
Unrealized loss on cash flow hedge, tax benefit $ (2,252) $ 6,430
XML 17 R6.htm IDEA: XBRL DOCUMENT v3.23.1
CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY (UNAUDITED) - USD ($)
$ in Thousands
Total
Common Stock
Additional Paid In Capital
Retained Earnings
Treasury Stock
Accumulated  Other Comprehensive (Loss) Income
BEGINNING BALANCE (in shares) at Dec. 31, 2021   33,271,659        
BEGINNING BALANCE at Dec. 31, 2021 $ 416,840 $ 333 $ 211,430 $ 352,543   $ (227)
BEGINING BALANCE, Treasury Stock (in shares) at Dec. 31, 2021         (3,565,258)  
BEGINING BALANCE, Treasury Stock at Dec. 31, 2021         $ (147,239)  
Increase (Decrease) in Stockholders' Equity [Roll Forward]            
Net income 33,822     33,822    
Issuance of common stock awards to employees (in shares)   40,980        
Issuance of common stock awards to employees 0 $ 1 (1)      
Surrender of common stock awards (in shares)         (50)  
Surrender of common stock awards 0       $ 0  
Share-based compensation expense 3,089   3,089      
Share-based compensation issued to directors (in shares)          
Share-based compensation issued to directors 124   124      
Issuance of awards previously classified as liability awards (in shares)   39,204        
Issuance of awards previously classified as liability awards 4,000   4,000      
Dividends declared (35,890)     (35,890)    
Common stock repurchase (in shares)         (510,943)  
Common stock repurchase (49,865)       $ (49,865)  
Other comprehensive (loss), net of tax 18,111         18,111
ENDING BALANCE (in shares) at Mar. 31, 2022   33,351,843        
ENDING BALANCE at Mar. 31, 2022 $ 390,231 $ 334 218,642 350,475   17,884
ENDING BALANCE, Treasury Stock (in shares) at Mar. 31, 2022         (4,076,251)  
ENDING BALANCE, Treasury Stock at Mar. 31, 2022         $ (197,104)  
BEGINNING BALANCE (in shares) at Dec. 31, 2022 33,429,557 33,429,557        
BEGINNING BALANCE at Dec. 31, 2022 $ 493,499 $ 334 228,827 513,095   40,560
BEGINING BALANCE, Treasury Stock (in shares) at Dec. 31, 2022 (5,123,075)       (5,123,075)  
BEGINING BALANCE, Treasury Stock at Dec. 31, 2022 $ (289,317)       $ (289,317)  
Increase (Decrease) in Stockholders' Equity [Roll Forward]            
Net income 49,274     49,274    
Issuance of common stock awards to employees (in shares)   69,136        
Issuance of common stock awards to employees 0 $ 1 (1)      
Surrender of common stock awards (in shares)         (581)  
Surrender of common stock awards (18)       $ (18)  
Share-based compensation expense 3,529   3,529      
Share-based compensation issued to directors 148   148      
Dividends declared $ (34,901)     (34,901)    
Common stock repurchase (in shares) (511,000)          
Common stock repurchase $ (49,900)          
Other comprehensive (loss), net of tax $ (6,309)         (6,309)
ENDING BALANCE (in shares) at Mar. 31, 2023 33,498,693 33,498,693        
ENDING BALANCE at Mar. 31, 2023 $ 505,222 $ 335 $ 232,503 $ 527,468   $ 34,251
ENDING BALANCE, Treasury Stock (in shares) at Mar. 31, 2023 (5,123,656)       (5,123,656)  
ENDING BALANCE, Treasury Stock at Mar. 31, 2023 $ (289,335)       $ (289,335)  
XML 18 R7.htm IDEA: XBRL DOCUMENT v3.23.1
CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY (UNAUDITED) (Parenthetical) - $ / shares
3 Months Ended
Mar. 31, 2023
Mar. 31, 2022
Statement of Stockholders' Equity [Abstract]    
Dividends declared (in USD per share) $ 1.23 $ 1.22
XML 19 R8.htm IDEA: XBRL DOCUMENT v3.23.1
CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS (UNAUDITED) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2023
Mar. 31, 2022
Cash flows from operating activities    
Net income $ 49,274 $ 33,822
Adjustments to reconcile net income to net cash provided by operating activities    
Depreciation and amortization of property and equipment 12,525 11,329
Amortization of operating lease right-of-use assets 7,316 6,371
Amortization of intangibles 11,435 11,097
Amortization of deferred financing costs and debt discount 475 484
Provision for credit losses 1,678 653
Gain on sale of property and equipment (639) (92)
Noncash stock compensation 3,436 3,418
Other, net (2,523) 790
Changes in assets and liabilities, excluding effects of acquisitions    
Accounts receivable 1,716 (32,700)
Inventories 7,699 (16,300)
Other assets 4,434 169
Accounts payable (16,906) 16,486
Income taxes receivable/payable 16,450 11,433
Other liabilities (22,537) 1,265
Net cash provided by operating activities 73,833 48,225
Cash flows from investing activities    
Purchases of investments 0 (49,957)
Purchases of property and equipment (14,949) (10,362)
Acquisitions of businesses, net of cash acquired of $10 and $0 in 2023 and 2022, respectively (38,008) (8,050)
Proceeds from sale of property and equipment 741 265
Other 4,602 (614)
Net cash used in investing activities (47,614) (68,718)
Cash flows from financing activities    
Payments on Term Loan (1,250) (1,250)
Proceeds from vehicle and equipment notes payable 8,119 4,752
Debt issuance costs 0 (627)
Principal payments on long-term debt (7,024) (6,618)
Principal payments on finance lease obligations (727) (521)
Dividends paid (34,536) (35,426)
Acquisition-related obligations (1,720) (6,003)
Repurchase of common stock 0 (49,865)
Surrender of common stock awards by employees (18) 0
Net cash used in financing activities (37,156) (95,558)
Net change in cash and cash equivalents (10,937) (116,051)
Cash and cash equivalents at beginning of period 229,627 333,485
Cash and cash equivalents at end of period 218,690 217,434
Supplemental disclosures of cash flow information    
Interest 14,658 14,293
Income taxes, net of refunds 1,524 1,088
Supplemental disclosure of noncash activities    
Right-of-use assets obtained in exchange for operating lease obligations 5,650 5,514
Property and equipment obtained in exchange for finance lease obligations 957 544
Seller obligations in connection with acquisition of businesses 6,035 1,878
Unpaid purchases of property and equipment included in accounts payable $ 2,316 $ 1,884
XML 20 R9.htm IDEA: XBRL DOCUMENT v3.23.1
CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS (UNAUDITED) (Parenthetical) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2023
Mar. 31, 2022
Cash flows from investing activities    
Cash acquired, net $ 10 $ 0
XML 21 R10.htm IDEA: XBRL DOCUMENT v3.23.1
Organization
3 Months Ended
Mar. 31, 2023
Organization, Consolidation and Presentation of Financial Statements [Abstract]  
Organization ORGANIZATION
Installed Building Products (“IBP”), a Delaware corporation formed on October 28, 2011, and its wholly-owned subsidiaries (collectively referred to as the “Company,” and “we,” “us” and “our”) 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 more than 240 locations and its corporate office is located in Columbus, Ohio.
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, and see Note 10, Information on Segments, for information on how we segment the business.
XML 22 R11.htm IDEA: XBRL DOCUMENT v3.23.1
Significant Accounting Policies
3 Months Ended
Mar. 31, 2023
Accounting Policies [Abstract]  
Significant Accounting Policies SIGNIFICANT ACCOUNTING POLICIES
Basis of Presentation and Principles of Consolidation
The accompanying consolidated financial statements include all of our wholly-owned subsidiaries. All intercompany accounts and transactions have been eliminated.
The information furnished in the Condensed Consolidated Financial Statements includes normal recurring adjustments and reflects all adjustments which are, in the opinion of management, necessary for a fair presentation of the results of operations and statements of financial position for the interim periods presented. Certain information and footnote disclosures normally included in the consolidated financial statements prepared in accordance with accounting principles generally accepted in the United States of America (“U.S. GAAP”) and the rules and regulations of the Securities and Exchange Commission (the “SEC”) have been omitted pursuant to such rules and regulations. We believe that the disclosures are adequate to prevent the information presented from being misleading when read in conjunction with our audited consolidated financial statements and the notes thereto included in Part II, Item 8, Financial Statements and Supplementary Data, of our Annual Report on Form 10-K for the fiscal year ended December 31, 2022 (“2022 Form 10-K”), as filed with the SEC on February 22, 2023. The December 31, 2022 Condensed Consolidated Balance Sheet data herein was derived from the audited consolidated financial statements but the related footnotes do not include all disclosures required by U.S. GAAP.
Our interim operating results for the three months ended March 31, 2023 are not necessarily indicative of the results to be expected in future operating quarters.
Note 2 to the audited consolidated financial statements in our 2022 Form 10-K describes the significant accounting policies and estimates used in preparation of the audited consolidated financial statements. Other than the recently implemented accounting policy described below, there have been no changes to our significant accounting policies during the three months ended March 31, 2023.
Recently Adopted Accounting Pronouncements
StandardEffective DateAdoption
ASU 2021-08, Business Combinations (Topic 805): Accounting for contract assets and contract liabilities from contracts with customersDecember 15, 2022
This pronouncement amended 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. This did not have a material impact on our consolidated financial statements
Recently Issued Accounting Pronouncements Not Yet Adopted
We are currently evaluating the impact of the following Accounting Standards Update ("ASU") on our Condensed Consolidated Financial Statements or Notes to Condensed Consolidated Financial Statements:
Standard  Description  Effective Date  Effect on the financial statements or other significant matters
ASU 2023-01 Leases (Topic 842): Common Control Arrangements  This pronouncement amends Topic 842 to require all entities to amortize leasehold improvements associated with common control leases over the useful life to the common control group.  Annual periods beginning after December 15, 2023, including interim periods therein. Early adoption is permitted.  We are currently assessing the impact of adoption on our consolidated financial statements.
XML 23 R12.htm IDEA: XBRL DOCUMENT v3.23.1
Revenue Recognition
3 Months Ended
Mar. 31, 2023
Revenue from Contract with Customer [Abstract]  
Revenue Recognition REVENUE RECOGNITION
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):
Three months ended March 31,
2023
2022
Installation:
Residential new construction$475,095 72 %$442,404 75 %
Repair and remodel37,675 %32,641 %
Commercial109,972 16 %86,586 15 %
Net revenue, Installation$622,742 94 %$561,631 96 %
Other
36,567 %25,861 %
Net revenue, as reported$659,309 100 %$587,492 100 %
 Three months ended March 31,
20232022
Installation:
Insulation$394,043 60 %$364,943 63 %
Shower doors, shelving and mirrors45,513 %36,340 %
Garage doors43,312 %35,979 %
Waterproofing29,939 %29,022 %
Rain gutters27,800 %23,546 %
Window Blinds15,881 %13,058 %
Fireproofing/firestopping15,175 %15,922 %
Other building products51,079 %42,821 %
Net revenue, Installation$622,742 94 %$561,631 96 %
Other 36,567 %25,861 %
Net revenue, as reported$659,309 100 %$587,492 100 %
Contract Assets and Liabilities
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 Condensed 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 Condensed Consolidated Balance Sheets.
Contract assets and liabilities related to our uncompleted contracts and customer deposits were as follows (in thousands):
 March 31, 2023December 31, 2022
Contract assets$36,048 $29,431 
Contract liabilities(17,331)(18,884)
Uncompleted contracts were as follows (in thousands):
 March 31, 2023December 31, 2022
Costs incurred on uncompleted contracts$279,994 $273,788 
Estimated earnings116,621 114,781 
Total396,615 388,569 
Less: Billings to date369,686 368,009 
Net under billings$26,929 $20,560 
Net under billings were as follows (in thousands):
 March 31, 2023December 31, 2022
Costs and estimated earnings in excess of billings on uncompleted contracts (contract assets)$36,048 $29,431 
Billings in excess of costs and estimated earnings on uncompleted contracts (contract liabilities)(9,119)(8,871)
Net under billings$26,929 $20,560 
The difference between contract assets and contract liabilities as of March 31, 2023 compared to December 31, 2022 is primarily the result of timing differences between our performance of obligations under contracts and customer payments and billings. During three months ended March 31, 2023, we recognized $15.8 million of revenue that was included in the contract liability balance at December 31, 2022. We did not recognize any impairment losses on our receivables and contract assets during the three months ended March 31, 2023 or 2022.
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 March 31, 2023, the aggregate amount of the transaction price allocated to remaining uncompleted contracts was $154.3 million. We expect to satisfy remaining performance obligations and recognize revenue on substantially all of these uncompleted contracts over the next 18 months.
XML 24 R13.htm IDEA: XBRL DOCUMENT v3.23.1
Credit Losses
3 Months Ended
Mar. 31, 2023
Credit Loss [Abstract]  
Credit Losses CREDIT LOSSES
Our expected loss allowance methodology for accounts receivable is developed using historical experience, present economic conditions and other relevant factors management considers relevant to estimate expected credit losses. We also perform ongoing evaluations of creditworthiness of our existing and potential customers.
Changes in our allowance for credit losses were as follows (in thousands):
Balance as of January 1, 2023$9,549 
Current period provision1,678 
Recoveries collected and additions61 
Amounts written off(1,229)
Balance as of March 31, 2023$10,059 
XML 25 R14.htm IDEA: XBRL DOCUMENT v3.23.1
Investments and Cash and Cash Equivalents
3 Months Ended
Mar. 31, 2023
Investments [Abstract]  
Investments and Cash and Cash Equivalents 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 approximately $197.9 million and $191.9 million as of March 31, 2023 and December 31, 2022, respectively. See Note 9, Fair Value Measurements, for additional information.
XML 26 R15.htm IDEA: XBRL DOCUMENT v3.23.1
Goodwill and Intangibles
3 Months Ended
Mar. 31, 2023
Goodwill and Intangible Assets Disclosure [Abstract]  
Goodwill and Intangibles GOODWILL AND INTANGIBLES
Goodwill
The change in carrying amount of goodwill was as follows (in thousands):
InstallationOtherConsolidated
Goodwill (gross) - January 1, 2023$355,226 $88,333 $443,559 
Business combinations13,540 — 13,540 
Other257 5,273 5,530 
Goodwill (gross) - March 31, 2023369,023 93,606 462,629 
Accumulated impairment losses (70,004)— (70,004)
Goodwill (net) - March 31, 2023$299,019 $93,606 $392,625 
Other changes presented in the above table primarily include adjustments for the allocation of certain acquisitions still under measurement made during the three months ended March 31, 2023, including a change in tax election that resulted in a $4.9 million change in purchase price for a 2022 acquisition. For additional information regarding changes to goodwill resulting from acquisitions, see Note 17, Business Combinations.
We test goodwill for impairment annually during the fourth quarter of our fiscal year or earlier if there is an impairment indicator. Accumulated impairment losses included within the above table were incurred over multiple periods and were all associated with the Installation segment, with the latest impairment charge being recorded during the year ended December 31, 2010.
Intangibles, net
The following table provides the gross carrying amount, accumulated amortization and net book value for each major class of intangibles (in thousands):
 As of March 31,As of December 31,
 20232022
 Gross
Carrying
Amount
Accumulated
Amortization
Net
Book
Value
Gross
Carrying
Amount
Accumulated
Amortization
Net
Book
Value
Amortized intangibles:      
Customer relationships$349,019 $154,169 $194,850 $338,050 $145,722 $192,328 
Covenants not-to-compete31,207 21,028 10,179 30,899 20,086 10,813 
Trademarks and tradenames125,078 41,518 83,560 119,612 39,638 79,974 
Backlog21,635 20,623 1,012 20,815 20,457 358 
 $526,939 $237,338 $289,601 $509,376 $225,903 $283,473 
The gross carrying amount of intangibles increased approximately $17.6 million during the three months ended March 31, 2023 primarily due to business combinations. For more information, see Note 17, Business Combinations.
Remaining estimated aggregate annual amortization expense is as follows (amounts, in thousands, are for the fiscal year ended):
Remainder of 2023$32,834 
202439,843 
202534,301 
202630,350 
202726,064 
Thereafter126,209 
XML 27 R16.htm IDEA: XBRL DOCUMENT v3.23.1
Long-Term Debt
3 Months Ended
Mar. 31, 2023
Debt Disclosure [Abstract]  
Long-Term Debt LONG-TERM DEBT
Long-term debt consisted of the following (in thousands):
 As of March 31,As of December 31,
 20232022
Senior Notes due 2028, net of unamortized debt issuance costs of $2,887 and $3,036, respectively
$297,113 $296,964 
Term loan, net of unamortized debt issuance costs of $5,524 and $5,767, respectively
488,226 489,233 
Vehicle and equipment notes, maturing through March 2028; payable in various monthly installments, including interest rates ranging from 1.9% to 6.2%
74,078 72,984 
Various notes payable, maturing through April 2025; payable in various monthly installments, including interest rates ranging from 2.0% to 5.0%
1,973 1,973 
861,390 861,154 
Less: current maturities(31,165)(30,983)
Long-term debt, less current maturities$830,225 $830,171 
Remaining required repayments of debt principal, gross of unamortized debt issuance costs, as of March 31, 2023 are as follows (in thousands):
Remainder of 2023$23,976 
202427,027 
202521,201 
202616,250 
202711,002 
Thereafter770,345 
XML 28 R17.htm IDEA: XBRL DOCUMENT v3.23.1
Leases
3 Months Ended
Mar. 31, 2023
Leases [Abstract]  
Leases 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.
The table below presents the lease-related assets and liabilities recorded on the Condensed Consolidated Balance Sheets:
As of March 31,As of December 31,
(in thousands)Classification20232022
Assets   
Non-Current   
OperatingOperating lease right-of-use assets$74,602 $76,174 
FinanceProperty and equipment, net9,159 8,928 
Total lease assets $83,761 $85,102 
Liabilities 
Current 
OperatingCurrent maturities of operating lease obligations$26,000 $26,145 
FinancingCurrent maturities of finance lease obligations2,588 2,508 
Non-Current 
OperatingOperating lease obligations48,339 49,789 
FinancingFinance lease obligations6,559 6,397 
Total lease liabilities$83,486 $84,839 
Weighted-average remaining lease term:
Operating leases 3.9 years4.0 years
Finance leases 3.8 years3.6 years
Weighted-average discount rate:
Operating leases 4.60 %4.41 %
Finance leases 6.08 %5.76 %
Lease Costs
The table below presents certain information related to the lease costs for finance and operating leases:
Three months ended March 31,
(in thousands)Classification20232022
Operating lease cost(1)
Administrative$9,203 $7,759 
Finance lease cost:
Amortization of leased assets(2)
Cost of sales977 716 
Interest on finance lease obligationsInterest expense, net131 61 
Total lease costs$10,311 $8,536 
(1)Includes variable lease costs of $1.2 million and $0.9 million for the three months ended March 31, 2023 and 2022, respectively, and short-term lease costs of $0.3 million for each of the three months ended March 31, 2023 and 2022.
(2)Includes variable lease costs of $0.2 million for each of the three months ended March 31, 2023 and 2022.
Other Information
The table below presents supplemental cash flow information related to leases (in thousands):
 Three months ended March 31,
 20232022
Cash paid for amounts included in the measurement of lease liabilities:
Operating cash flows for operating leases$7,691 $6,463 
Operating cash flows for finance leases131 61 
Financing cash flows for finance leases727 521 
Undiscounted Cash Flows
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 Condensed Consolidated Balance Sheet as of March 31, 2023 (in thousands):
 Finance LeasesOperating Leases
  Related PartyOtherTotal Operating
Remainder of 2023$2,354 $1,068 $21,268 $22,336 
20242,668 1,175 21,565 22,740 
20252,299 1,017 14,742 15,759 
20261,968 — 9,616 9,616 
2027997 — 5,252 5,252 
Thereafter17 — 5,559 5,559 
Total minimum lease payments10,303 $3,260 $78,002 81,262 
Less: Amounts representing executory costs(2)— 
Less: Amounts representing interest(1,154)(6,923)
Present value of future minimum lease payments9,147 74,339 
Less: Current obligation under leases(2,588)(26,000)
Long-term lease obligations$6,559 $48,339 
Leases 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.
The table below presents the lease-related assets and liabilities recorded on the Condensed Consolidated Balance Sheets:
As of March 31,As of December 31,
(in thousands)Classification20232022
Assets   
Non-Current   
OperatingOperating lease right-of-use assets$74,602 $76,174 
FinanceProperty and equipment, net9,159 8,928 
Total lease assets $83,761 $85,102 
Liabilities 
Current 
OperatingCurrent maturities of operating lease obligations$26,000 $26,145 
FinancingCurrent maturities of finance lease obligations2,588 2,508 
Non-Current 
OperatingOperating lease obligations48,339 49,789 
FinancingFinance lease obligations6,559 6,397 
Total lease liabilities$83,486 $84,839 
Weighted-average remaining lease term:
Operating leases 3.9 years4.0 years
Finance leases 3.8 years3.6 years
Weighted-average discount rate:
Operating leases 4.60 %4.41 %
Finance leases 6.08 %5.76 %
Lease Costs
The table below presents certain information related to the lease costs for finance and operating leases:
Three months ended March 31,
(in thousands)Classification20232022
Operating lease cost(1)
Administrative$9,203 $7,759 
Finance lease cost:
Amortization of leased assets(2)
Cost of sales977 716 
Interest on finance lease obligationsInterest expense, net131 61 
Total lease costs$10,311 $8,536 
(1)Includes variable lease costs of $1.2 million and $0.9 million for the three months ended March 31, 2023 and 2022, respectively, and short-term lease costs of $0.3 million for each of the three months ended March 31, 2023 and 2022.
(2)Includes variable lease costs of $0.2 million for each of the three months ended March 31, 2023 and 2022.
Other Information
The table below presents supplemental cash flow information related to leases (in thousands):
 Three months ended March 31,
 20232022
Cash paid for amounts included in the measurement of lease liabilities:
Operating cash flows for operating leases$7,691 $6,463 
Operating cash flows for finance leases131 61 
Financing cash flows for finance leases727 521 
Undiscounted Cash Flows
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 Condensed Consolidated Balance Sheet as of March 31, 2023 (in thousands):
 Finance LeasesOperating Leases
  Related PartyOtherTotal Operating
Remainder of 2023$2,354 $1,068 $21,268 $22,336 
20242,668 1,175 21,565 22,740 
20252,299 1,017 14,742 15,759 
20261,968 — 9,616 9,616 
2027997 — 5,252 5,252 
Thereafter17 — 5,559 5,559 
Total minimum lease payments10,303 $3,260 $78,002 81,262 
Less: Amounts representing executory costs(2)— 
Less: Amounts representing interest(1,154)(6,923)
Present value of future minimum lease payments9,147 74,339 
Less: Current obligation under leases(2,588)(26,000)
Long-term lease obligations$6,559 $48,339 
XML 29 R18.htm IDEA: XBRL DOCUMENT v3.23.1
Fair Value Measurements
3 Months Ended
Mar. 31, 2023
Fair Value Disclosures [Abstract]  
Fair Value Measurements FAIR VALUE MEASUREMENTS
Assets and Liabilities Measured at Fair Value on a Recurring Basis
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.
Assets Measured at Fair Value on a Nonrecurring Basis
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 March 31, 2023 and December 31, 2022 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’s estimated fair value. Undiscounted cash flows, a Level 3 input, are utilized in determining estimated fair values. During each of the three months ended March 31, 2023 and 2022, we did not record any impairments on these assets required to be measured at fair value on a nonrecurring basis.
Estimated Fair Value of Financial Instruments
Accounts receivable, accounts payable and accrued liabilities as of March 31, 2023 and December 31, 2022 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 March 31, 2023 and December 31, 2022, 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 March 31, 2023 and December 31, 2022. 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.
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, calculated based on a weighted average of various future forecast scenarios, to their net present value.
Fair value in the Condensed Consolidated Balance Sheets and not described above were as follows (in thousands):
 As of March 31, 2023As of December 31, 2022
 TotalLevel 1Level 2Level 3TotalLevel 1Level 2Level 3
Financial assets:
Cash equivalents$197,910 $197,910 $— $— $191,881 $191,881 $— $— 
Derivative financial instruments30,020 30,020 — 38,671 38,671 — 
Total financial assets$227,930 $197,910 $30,020 $— $230,552 $191,881 $38,671 $— 
Financial liabilities:
Contingent consideration$968 $— $— $968 $1,858 $— $— $1,858 
Derivative financial instruments1,014 — 1,014 — — — — — 
Total financial liabilities$1,982 $— $1,014 $968 $1,858 $— $— $1,858 
See Note 5, Cash and Cash Equivalents, for more information on cash equivalents included in the table above. Also see Note 11, Derivatives and Hedging Activities, for more information on derivative financial instruments.
The change in fair value of the contingent consideration (a Level 3 input) was as follows (in thousands):
Contingent consideration liability - January 1, 2023$1,858 
Accretion in value110 
Amounts paid to sellers(1,000)
Contingent consideration liability - March 31, 2023$968 
The accretion in value of contingent consideration liabilities is included within administrative expenses on the Condensed Consolidated Statements of Operations and Comprehensive Income.
The carrying value and associated fair value of financial assets and liabilities that are not recorded at fair value in the Condensed Consolidated Balance Sheets and not described above include our Senior Notes. To estimate the 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):
 As of March 31, 2023As of December 31, 2022
 Carrying ValueFair ValueCarrying ValueFair Value
Senior Notes(1)
$300,000 $278,709 $300,000 $270,993 
(1)Excludes the impact of unamortized debt issuance costs.
See Note 5, Cash and Cash Equivalents, for more information on investments included in the table above. Also see Note 7, Long-Term Debt, for more information on our Senior Notes.
XML 30 R19.htm IDEA: XBRL DOCUMENT v3.23.1
Information on Segments
3 Months Ended
Mar. 31, 2023
Segment Reporting [Abstract]  
Information on Segments INFORMATION ON SEGMENTS
Our segment structure includes three operating segments consisting of Installation, Distribution and Manufacturing. 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 and therefore combine to form one operating segment.
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 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. 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.
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.
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 Chief Executive Officer, who is also our Chief Operating Decision Maker ("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 represent our segment information for the three months ended March 31, 2023 and 2022 (in thousands):
Three months ended March 31, 2023
InstallationOtherEliminationsConsolidated
Revenue$622,742 $38,722 $(2,155)$659,309 
Cost of sales (1)
410,384 28,459 (1,766)437,077 
Segment gross profit$212,358 $10,263 $(389)$222,232 
Segment gross profit percentage34.1 %26.5 %18.1 %33.7 %
Three months ended March 31, 2022
InstallationOtherEliminationsConsolidated
Revenue$561,631 $26,650 $(789)$587,492 
Cost of sales (1)
385,692 19,373 (609)404,456 
Segment gross profit$175,939 $7,277 $(180)$183,036 
Segment gross profit percentage31.3 %27.3 %22.8 %31.2 %
(1)Cost of sales included in segment gross profit is exclusive of depreciation and amortization for the three months ended March 31, 2023 and 2022.
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:
Three months ended March 31,
20232022
Segment gross profit - consolidated$222,232 $183,036 
Depreciation and amortization (1)
11,810 10,633 
Gross profit, as reported210,422 172,403 
Operating expenses133,546 115,433 
Operating income 76,876 56,970 
Other expense, net9,517 10,745 
Income before income taxes$67,359 $46,225 
(1)Depreciation and amortization is excluded from segment gross profit for the three months ended March 31, 2023 and 2022.
XML 31 R20.htm IDEA: XBRL DOCUMENT v3.23.1
Derivatives and Hedging Activities
3 Months Ended
Mar. 31, 2023
Derivative Instruments and Hedging Activities Disclosure [Abstract]  
Derivatives and Hedging Activities DERIVATIVES AND HEDGING ACTIVITIES
Cash Flow Hedges of Interest Rate Risk
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 three months ended March 31, 2023, 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 March 31, 2023, we have not posted any collateral related to these agreements.
As of March 31, 2023 and December 31, 2022, we had the following interest rate swap derivatives outstanding:
Effective DateNotional AmountFixed RateMaturity Date
(in millions)
July 30, 2021$200.0 0.51 %December 31, 2025
December 31, 2021100.0 1.37 %December 31, 2025
December 31, 2021100.0 1.37 %December 31, 2025
December 31, 2025300.0 3.09 %December 14, 2028
December 31, 2025100.0 2.98 %December 14, 2028
As of March 31, 2023, our two forward interest rate swaps, combined with our three active 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 long-term liabilities on the Consolidated Balance Sheets at their fair value amounts as described in Note 9, Fair Value Measurements.
In July 2022, we amended the maturity date of each of our three active interest rate swaps to December 31, 2025 with the other terms remaining unchanged. The remaining 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 three months ended March 31, 2023, we amortized $1.7 million of the remaining unrealized gains as a decrease to interest expense, net.
The amended swaps included off-market terms at inception. This other-than-insignificant financing element will be amortized as an increase to interest expense, net through the December 31, 2025 maturity date of the amended swaps. For the three months ended March 31, 2023, we amortized $1.8 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 Condensed Consolidated Statements of Cash Flows due to the other-than-insignificant financing element.
In August 2020, we terminated two then-existing interest rate swaps and one then-existing forward interest rate swap. During the three months ended March 31, 2023 and 2022 we amortized $1.0 million and $0.8 million, respectively, of the remaining unrealized loss as an increase to interest expense, net.
The changes in the fair value of derivatives designated, and that qualify, as cash flow hedges are recorded in other comprehensive income, net of tax on the Condensed Consolidated Statements of Operations and Comprehensive Income and in accumulated other comprehensive income on the Condensed 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 three months ended March 31, 2023 and 2022.
Amounts reported in accumulated other comprehensive income 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 $10.4 million will be reclassified as a decrease to interest expense, net.
The following table summarizes amounts recorded to interest expense, net included in the Condensed Consolidated Statements of Operations and Comprehensive Income related to our interest rate swaps (in thousands):
Three months ended March 31,
20232022
(Benefit) expense associated with swap net settlements$(3,593)$795 
Expense associated with amortization of amended/terminated swaps1,104 790 
LIBOR was 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 Financial Accounting Standards Board (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. 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. See Note 19, Subsequent Events, for information on a change regarding the reference rate for our interest rate swaps.
XML 32 R21.htm IDEA: XBRL DOCUMENT v3.23.1
Stockholders' Equity
3 Months Ended
Mar. 31, 2023
Equity [Abstract]  
Stockholders' Equity STOCKHOLDERS’ EQUITY
Accumulated other comprehensive income
The change in accumulated other comprehensive income related to our interest rate derivatives, net of taxes, was as follows (in thousands):
Three months ended March 31,
20232022
Accumulated gain (loss) at beginning of period$40,560 $(227)
Unrealized (losses) gains in fair value(7,126)17,527 
Reclassifications of realized net losses to earnings817 584 
Accumulated gain at end of period$34,251 $17,884 
The reclassifications of realized net losses to earnings in the above table are recorded within interest expense, net.
Share repurchases
During the three months ended March 31, 2023 we did not repurchase any common stock. During the three months ended March 31, 2022 we repurchased approximately 511 thousand shares of our common stock with an aggregate price of approximately $49.9 million, or $97.57 average price per share. The effect of these treasury shares in reducing the number of common shares outstanding is reflected in our earnings per share calculation.
On February 22, 2023, we announced that 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. The new program replaces the previous program and is in effect through March 1, 2024.
Dividends
During the three months ended March 31, 2023, we declared and paid the following cash dividends (amount declared and amount paid in thousands):
Declaration DateRecord DatePayment DateDividend Per ShareAmount DeclaredAmount Paid
2/22/20233/15/20233/31/2023$0.90 $25,537 $25,270 
2/22/20233/15/20233/31/20230.33 9,364 9,266 
During the three months ended March 31, 2022, we declared and paid the following cash dividends (amount declared and amount paid in thousands):
Declaration DateRecord DatePayment DateDividend Per ShareAmount DeclaredAmount Paid
2/24/20223/15/20223/31/2022$0.90 $26,585 $26,242 
2/24/20223/15/20223/31/20220.315 9,305 9,184 
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. 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.
XML 33 R22.htm IDEA: XBRL DOCUMENT v3.23.1
Employee Benefits
3 Months Ended
Mar. 31, 2023
Postemployment Benefits [Abstract]  
Employee Benefits EMPLOYEE BENEFITS
Healthcare
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 $7.4 million and $8.9 million for the three months ended March 31, 2023 and 2022, respectively. An accrual for estimated healthcare claims incurred but not reported (“IBNR”) is included within accrued compensation on the Condensed Consolidated Balance Sheets and was $4.3 million and $3.8 million as of March 31, 2023 and December 31, 2022, respectively.
Workers’ Compensation
Workers’ compensation expense totaled $5.8 million and $5.7 million for the three months ended March 31, 2023 and 2022, respectively. Workers’ compensation known claims and IBNR reserves included on the Condensed Consolidated Balance Sheets were as follows (in thousands):
 March 31, 2023December 31, 2022
Included in other current liabilities$8,782 $9,946 
Included in other long-term liabilities16,550 13,730 
$25,332 $23,676 
We also had an insurance receivable for claims that exceeded the stop loss limit under our self-insured policies as well as claims under our fully insured policies included on the Condensed Consolidated Balance Sheets. This receivable offsets an equal liability included within the reserve amounts noted above and was as follows (in thousands):
 March 31, 2023December 31, 2022
Included in other non-current assets$2,743 $2,318 
Retirement Plans
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. We recognized 401(k) plan expenses of $0.9 million and $0.8 million during the three months ended March 31, 2023 and 2022, respectively. These expenses are included in administrative expenses on the accompanying Condensed Consolidated Statements of Operations and Comprehensive Income.
Multiemployer Pension Plans
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.
Share-Based Compensation
Common Stock Awards
We periodically grant shares of our common stock to non-employee members of our board of directors and our employees. During the three months ended March 31, 2023 and 2022, we did not grant any such shares under our 2014 Omnibus Incentive Plan to non-employee members of our board of directors or employees.
Employees – Performance-Based Stock Awards
During the three months ended March 31, 2023, we issued approximately 61 thousand shares of our common stock to certain officers, which vest in two equal installments on each of April 20, 2024 and April 20, 2025. In addition, during the three months ended March 31, 2023, we established, and our board of directors approved, performance-based targets in connection with common stock awards to be issued to certain officers in 2024 contingent upon achievement of these targets.
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 Condensed Consolidated Balance Sheets. During the three months ended March 31, 2023 and 2022, we granted approximately 8 thousand and 39 thousand shares of our common stock, respectively. The shares granted in 2023 will vest in 2025, and the shares granted in 2022 vested in the second quarter of 2022.
Employees – Performance-Based Restricted Stock Units
During 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.
Share-Based Compensation Summary
Amounts and changes for each category of equity-based award were as follows:
 Common Stock AwardsPerformance-Based Stock AwardsPerformance-Based Restricted Stock Units
 AwardsWeighted Average Grant Date Fair Value Per ShareAwardsWeighted Average Grant Date Fair Value Per ShareUnitsWeighted Average Grant Date Fair Value Per Share
Nonvested awards/units at December 31, 2022
157,117 $77.31 126,053 $103.37 15,711 $80.55 
Granted7,690 109.76 69,281 109.09 — — 
Vested(569)82.14 — — — — 
Forfeited/Cancelled(398)86.72 — — (289)80.55 
Nonvested awards/units at March 31, 2023163,840 $78.79 195,334 $105.40 15,422 $80.55 
The following table summarizes the share-based compensation expense recognized under our 2014 Omnibus Incentive Plan (in thousands):
 Three months ended March 31,
 20232022
Common Stock Awards$1,393 $1,531 
Non-Employee Common Stock Awards148 124 
Performance-Based Stock Awards1,563 1,315 
Liability Performance-Based Stock Awards26 206 
Performance-Based Restricted Stock Units306 242 
$3,436 $3,418 
We recorded the following stock compensation expense by income statement category (in thousands):
 Three months ended March 31,
 20232022
Cost of sales$165 $149 
Selling136 62 
Administrative3,135 3,207 
$3,436 $3,418 
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.
Unrecognized share-based compensation expense related to unvested awards was as follows (in thousands):
 As of March 31, 2023
 Unrecognized
Compensation Expense
on Unvested Awards
Weighted Average
Remaining
Vesting Period
Common Stock Awards$5,561 1.7
Performance-Based Stock Awards11,112 2.1
Performance-Based Restricted Stock Units41 0.1
Total unrecognized compensation expense related to unvested awards$16,714 
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.
During the three months ended March 31, 2023, our employees surrendered approximately 200 shares of our common stock to satisfy tax withholding obligations arising in connection with the vesting of common stock awards issued under our 2014 Omnibus Incentive Plan.
As of March 31, 2023, approximately 1.6 million of the 3.0 million shares of common stock authorized for issuance were available for issuance under the 2014 Omnibus Incentive Plan.
XML 34 R23.htm IDEA: XBRL DOCUMENT v3.23.1
Income Taxes
3 Months Ended
Mar. 31, 2023
Income Tax Disclosure [Abstract]  
Income Taxes INCOME TAXESOur provision for income taxes as a percentage of pretax earnings is based on a current estimate of the annual effective income tax rate adjusted to reflect the impact of discrete items.During both the three months ended March 31, 2023 and 2022, our effective tax rate was 26.8%. The rates for each of the three months ended March 31, 2023 and 2022 were unfavorably impacted by certain expenses not being deductible for income tax reporting purposes
XML 35 R24.htm IDEA: XBRL DOCUMENT v3.23.1
Related Party Transactions
3 Months Ended
Mar. 31, 2023
Related Party Transactions [Abstract]  
Related Party Transactions RELATED PARTY TRANSACTIONS
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 affiliated ownership.
We lease our headquarters and certain other facilities from related parties. See Note 8, Leases, for future minimum lease payments to be paid to these related parties.
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):
 Three months ended March 31,
 20232022
Sales$4,015 $560 
Purchases666 407 
Rent352 314 
We had a related party balance of approximately $2.3 million and $3.3 million included in accounts receivable on our Condensed Consolidated Balance Sheets as of March 31, 2023 and December 31, 2022, respectively. 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, Chief Executive Officer and President rejoined our board of directors in July of 2022, accounted for $1.5 million and $2.5 million of the related party accounts receivable balance as of March 31, 2023 and December 31, 2022,
respectively. Additionally, M/I Homes, Inc. accounted for a significant portion of our related party sales during the three months ended March 31, 2023.
XML 36 R25.htm IDEA: XBRL DOCUMENT v3.23.1
Commitments and Contingencies
3 Months Ended
Mar. 31, 2023
Commitments and Contingencies Disclosure [Abstract]  
Commitments and Contingencies COMMITMENTS AND CONTINGENCIES
Accrued General Liability and Auto Insurance
Accrued general liability and auto insurance reserves included on the Condensed Consolidated Balance Sheets were as follows (in thousands):
 March 31, 2023December 31, 2022
Included in other current liabilities$7,162 $7,479 
Included in other long-term liabilities16,621 17,528 
$23,783 $25,007 
We also had insurance receivables and indemnification assets included on the Condensed Consolidated Balance Sheets that, in aggregate, offset equal liabilities included within the reserve amounts noted above. The amounts were as follows (in thousands):
 March 31, 2023December 31, 2022
Insurance receivables and indemnification assets for claims under fully insured policies$2,643 $4,933 
Insurance receivables for claims that exceeded the stop loss limit75 380 
Total insurance receivables and indemnification assets included in other non-current assets$2,718 $5,313 
Leases
See Note 8, Leases, for further information regarding our lease commitments.
Other Commitments and Contingencies
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.
During the three months ended March 31, 2023, we entered into an supply agreement with variable pricing with one of our suppliers to purchase a portion of the material we utilize in our business. This agreement is effective March 31, 2023 through March 31, 2026 with a purchase obligation of 12.0 million pounds for 2023, 14.4 million pounds for 2024 and 17.3 million pounds for 2025.
XML 37 R26.htm IDEA: XBRL DOCUMENT v3.23.1
Business Combinations
3 Months Ended
Mar. 31, 2023
Business Combination and Asset Acquisition [Abstract]  
Business Combinations BUSINESS COMBINATIONS
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 two business combinations during the three months ended March 31, 2023 and one business combination during the three months ended March 31, 2022.
The largest of our 2023 acquisitions was Anchor Insulation Co., Inc. (Anchor) in March 2023. Below is a summary of each significant acquisition by year, including revenue and net income since date of acquisition shown for the year of acquisition. Net income includes amortization and taxes when appropriate.
For the three months ended March 31, 2023 (in thousands):
Three months ended March 31, 2023
2023 AcquisitionsDateAcquisition TypeCash PaidSeller
Obligations
Total Purchase PriceRevenueNet Income
Anchor3/12/2023Share$35,928 $1,000 $36,928 $2,193 $51 
Other2/13/2023Asset2,090 131 2,221 444 15 
$38,018 $1,131 $39,149 $2,637 $66 
For the three months ended March 31, 2022 (in thousands):
Three months ended March 31, 2022
2022 AcquisitionsDateAcquisition TypeCash PaidSeller
Obligations
Total Purchase PriceRevenueNet Income
Other03/01/2022Share$8,050 $1,878 $9,928 $915 $97 
Acquisition-related costs recorded within administrative expenses on the Condensed Consolidated Statements of Operations and Comprehensive Income amounted to $0.6 million and $0.7 million for the three months ended March 31, 2023 and 2022, respectively. 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 approximately $13.0 million of goodwill for tax purposes as a result of 2023 acquisitions.
Purchase Price Allocations
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):
Three months ended March 31, 2023Three months ended March 31, 2022
AnchorOtherTotalOther
Estimated fair values:
Cash$10 $— $10 $87 
Accounts receivable3,661 — 3,661 772 
Inventories1,527 64 1,591 684 
Other current assets1,732 — 1,732 21 
Property and equipment2,428 381 2,809 1,049 
Operating lease right-of-use asset— 28 28 — 
Intangibles16,420 1,120 17,540 4,634 
Goodwill12,870 670 13,540 2,743 
Other non-current assets184 13 197 
Accounts payable and other current liabilities(1,904)(46)(1,950)(69)
Other long-term liabilities— (9)(9)— 
Fair value of assets acquired and purchase price36,928 2,221 39,149 9,928 
Less seller obligations1,000 131 1,131 1,878 
Cash paid$35,928 $2,090 $38,018 $8,050 
Contingent consideration, non-compete agreements and/or amounts based on working capital calculations are included as “seller obligations” in the above table or within “fair value of assets acquired” if subsequently paid during the period presented. Contingent consideration payments consist primarily of earnouts based on performance that are recorded at fair value at the time of acquisition. 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.
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 and customary post-closing reviews are concluded during the measurement period attributable to each individual business combination. As a result, 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. Any acquisition acquired after March 31, 2022 is deemed to be within the measurement period and its purchase price considered preliminary. Goodwill and intangibles per the above table may not agree to the total gross increases of these assets as shown in Note 6, Goodwill and Intangibles, during each of the three months ended March 31, 2023 and 2022 due to 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. All acquisitions during the three months ended March 31, 2023 and 2022 had their respective goodwill assigned to our Installation operating segment.
Estimates of acquired intangible assets related to the acquisitions are as follows (in thousands):
 
For the three months ended March 31,
 20232022
Acquired intangibles assetsEstimated
Fair Value
Weighted Average Estimated
Useful Life (yrs.)
Estimated
Fair Value
Weighted Average Estimated Useful Life (yrs.)
Customer relationships$10,969 12$3,125 12
Trademarks and tradenames5,466 151,136 15
Non-competition agreements285 5374 5
Backlog820 1— 0
Pro Forma Information
The unaudited pro forma information for the combined results of the Company has been prepared as if the 2023 acquisitions had taken place on January 1, 2022 and the 2022 acquisitions had taken place on January 1, 2021. 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, 2022 and 2021, respectively, and the unaudited pro forma information does not purport to be indicative of future financial operating results (in thousands, except per share data):

 Unaudited pro forma for the three months ended March 31,
 20232022
Net revenue$667,915 $623,603 
Net income49,590 34,974 
Basic net income per share1.77 1.19 
Diluted net income per share1.75 1.18 
Unaudited pro forma net income reflects additional intangible asset amortization expense of approximately $0.4 million and $1.9 million for the three months ended March 31, 2023 and 2022, respectively, as well as additional income tax expense of approximately $0.1 million and $0.4 million for the three months ended March 31, 2023 and 2022, respectively, that would have been recorded had the 2023 acquisitions taken place on January 1, 2022 and the 2022 acquisitions taken place on January 1, 2021.
XML 38 R27.htm IDEA: XBRL DOCUMENT v3.23.1
Income Per Common Share
3 Months Ended
Mar. 31, 2023
Earnings Per Share [Abstract]  
Income Per Common Share INCOME PER COMMON SHAREBasic 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.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 was approximately 203 thousand and 278 thousand shares for the three months ended March 31, 2023 and 2022, respectively. Approximately 4 thousand shares of potential common stock were not included in the calculation of diluted net income per common share for the three months ended March 31, 2023 because the effect would have been anti-dilutive. There were no shares that would have been considered anti-dilutive for the three months ended three months ended March 31, 2022.
XML 39 R28.htm IDEA: XBRL DOCUMENT v3.23.1
Subsequent Events
3 Months Ended
Mar. 31, 2023
Subsequent Events [Abstract]  
Subsequent Events SUBSEQUENT EVENTS
We announced on May 4th, 2023 that our board of directors declared a quarterly dividend, payable on June 30, 2023 to stockholders of record on June 15, 2023, at a rate of 33.0 cents per share.
In April 2023, we notified the lenders on our $500.0 million, seven-year term loan facility due December 2028 (the "Term Loan") under our credit agreement (the "Term Loan Agreement") that we have elected to trigger a benchmark replacement from LIBOR to the Secured Overnight Financing Rate ("Term SOFR"). This trigger includes a credit spread adjustment of 0.11%, 0.26% and 0.43% for interest periods of one month, three months and six months, respectively, and it is subject to the same floor as currently set forth in the Term Loan Agreement. The new Term SOFR rate was effective on April 28, 2023. Also in April 2023, we transitioned our interest rate swap derivatives to Term SOFR to avoid a mismatch of rates.
XML 40 R29.htm IDEA: XBRL DOCUMENT v3.23.1
Significant Accounting Policies (Policies)
3 Months Ended
Mar. 31, 2023
Accounting Policies [Abstract]  
Consolidation The accompanying consolidated financial statements include all of our wholly-owned subsidiaries. All intercompany accounts and transactions have been eliminated.
Basis of Presentation The information furnished in the Condensed Consolidated Financial Statements includes normal recurring adjustments and reflects all adjustments which are, in the opinion of management, necessary for a fair presentation of the results of operations and statements of financial position for the interim periods presented. Certain information and footnote disclosures normally included in the consolidated financial statements prepared in accordance with accounting principles generally accepted in the United States of America (“U.S. GAAP”) and the rules and regulations of the Securities and Exchange Commission (the “SEC”) have been omitted pursuant to such rules and regulations.
Revenue from Contract with Customer 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.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 Condensed 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 Condensed Consolidated Balance Sheets.
XML 41 R30.htm IDEA: XBRL DOCUMENT v3.23.1
Significant Accounting Policies (Tables)
3 Months Ended
Mar. 31, 2023
Accounting Policies [Abstract]  
Recently Adopted Accounting Pronouncements
Recently Adopted Accounting Pronouncements
StandardEffective DateAdoption
ASU 2021-08, Business Combinations (Topic 805): Accounting for contract assets and contract liabilities from contracts with customersDecember 15, 2022
This pronouncement amended 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. This did not have a material impact on our consolidated financial statements
Recently Issued Accounting Pronouncements Not Yet Adopted
We are currently evaluating the impact of the following Accounting Standards Update ("ASU") on our Condensed Consolidated Financial Statements or Notes to Condensed Consolidated Financial Statements:
Standard  Description  Effective Date  Effect on the financial statements or other significant matters
ASU 2023-01 Leases (Topic 842): Common Control Arrangements  This pronouncement amends Topic 842 to require all entities to amortize leasehold improvements associated with common control leases over the useful life to the common control group.  Annual periods beginning after December 15, 2023, including interim periods therein. Early adoption is permitted.  We are currently assessing the impact of adoption on our consolidated financial statements.
XML 42 R31.htm IDEA: XBRL DOCUMENT v3.23.1
Revenue Recognition (Tables)
3 Months Ended
Mar. 31, 2023
Revenue from Contract with Customer [Abstract]  
Summary of Revenues Disaggregated by End Market and Product The following tables present our net revenues disaggregated by end market and product (in thousands):
Three months ended March 31,
2023
2022
Installation:
Residential new construction$475,095 72 %$442,404 75 %
Repair and remodel37,675 %32,641 %
Commercial109,972 16 %86,586 15 %
Net revenue, Installation$622,742 94 %$561,631 96 %
Other
36,567 %25,861 %
Net revenue, as reported$659,309 100 %$587,492 100 %
 Three months ended March 31,
20232022
Installation:
Insulation$394,043 60 %$364,943 63 %
Shower doors, shelving and mirrors45,513 %36,340 %
Garage doors43,312 %35,979 %
Waterproofing29,939 %29,022 %
Rain gutters27,800 %23,546 %
Window Blinds15,881 %13,058 %
Fireproofing/firestopping15,175 %15,922 %
Other building products51,079 %42,821 %
Net revenue, Installation$622,742 94 %$561,631 96 %
Other 36,567 %25,861 %
Net revenue, as reported$659,309 100 %$587,492 100 %
Summary of Assets and Liabilities Related to Uncompleted Contracts and Customer Deposits
Contract assets and liabilities related to our uncompleted contracts and customer deposits were as follows (in thousands):
 March 31, 2023December 31, 2022
Contract assets$36,048 $29,431 
Contract liabilities(17,331)(18,884)
Schedule of Cost and Estimated Earnings on Uncompleted Contracts
Uncompleted contracts were as follows (in thousands):
 March 31, 2023December 31, 2022
Costs incurred on uncompleted contracts$279,994 $273,788 
Estimated earnings116,621 114,781 
Total396,615 388,569 
Less: Billings to date369,686 368,009 
Net under billings$26,929 $20,560 
Schedule of Net Under Billings
Net under billings were as follows (in thousands):
 March 31, 2023December 31, 2022
Costs and estimated earnings in excess of billings on uncompleted contracts (contract assets)$36,048 $29,431 
Billings in excess of costs and estimated earnings on uncompleted contracts (contract liabilities)(9,119)(8,871)
Net under billings$26,929 $20,560 
XML 43 R32.htm IDEA: XBRL DOCUMENT v3.23.1
Credit Losses (Tables)
3 Months Ended
Mar. 31, 2023
Credit Loss [Abstract]  
Schedule of Changes In Allowance for Credit Losses
Changes in our allowance for credit losses were as follows (in thousands):
Balance as of January 1, 2023$9,549 
Current period provision1,678 
Recoveries collected and additions61 
Amounts written off(1,229)
Balance as of March 31, 2023$10,059 
XML 44 R33.htm IDEA: XBRL DOCUMENT v3.23.1
Goodwill and Intangibles (Tables)
3 Months Ended
Mar. 31, 2023
Goodwill and Intangible Assets Disclosure [Abstract]  
Summary of Change in Carrying Amount of Goodwill
The change in carrying amount of goodwill was as follows (in thousands):
InstallationOtherConsolidated
Goodwill (gross) - January 1, 2023$355,226 $88,333 $443,559 
Business combinations13,540 — 13,540 
Other257 5,273 5,530 
Goodwill (gross) - March 31, 2023369,023 93,606 462,629 
Accumulated impairment losses (70,004)— (70,004)
Goodwill (net) - March 31, 2023$299,019 $93,606 $392,625 
Schedule of Gross Carrying Amount, Accumulated Amortization and Net Book Value
The following table provides the gross carrying amount, accumulated amortization and net book value for each major class of intangibles (in thousands):
 As of March 31,As of December 31,
 20232022
 Gross
Carrying
Amount
Accumulated
Amortization
Net
Book
Value
Gross
Carrying
Amount
Accumulated
Amortization
Net
Book
Value
Amortized intangibles:      
Customer relationships$349,019 $154,169 $194,850 $338,050 $145,722 $192,328 
Covenants not-to-compete31,207 21,028 10,179 30,899 20,086 10,813 
Trademarks and tradenames125,078 41,518 83,560 119,612 39,638 79,974 
Backlog21,635 20,623 1,012 20,815 20,457 358 
 $526,939 $237,338 $289,601 $509,376 $225,903 $283,473 
Schedule of Estimated Aggregate Annual Amortization
Remaining estimated aggregate annual amortization expense is as follows (amounts, in thousands, are for the fiscal year ended):
Remainder of 2023$32,834 
202439,843 
202534,301 
202630,350 
202726,064 
Thereafter126,209 
XML 45 R34.htm IDEA: XBRL DOCUMENT v3.23.1
Long-Term Debt (Tables)
3 Months Ended
Mar. 31, 2023
Debt Disclosure [Abstract]  
Schedule of Debt
Long-term debt consisted of the following (in thousands):
 As of March 31,As of December 31,
 20232022
Senior Notes due 2028, net of unamortized debt issuance costs of $2,887 and $3,036, respectively
$297,113 $296,964 
Term loan, net of unamortized debt issuance costs of $5,524 and $5,767, respectively
488,226 489,233 
Vehicle and equipment notes, maturing through March 2028; payable in various monthly installments, including interest rates ranging from 1.9% to 6.2%
74,078 72,984 
Various notes payable, maturing through April 2025; payable in various monthly installments, including interest rates ranging from 2.0% to 5.0%
1,973 1,973 
861,390 861,154 
Less: current maturities(31,165)(30,983)
Long-term debt, less current maturities$830,225 $830,171 
Schedule of Maturities of Long-term Debt
Remaining required repayments of debt principal, gross of unamortized debt issuance costs, as of March 31, 2023 are as follows (in thousands):
Remainder of 2023$23,976 
202427,027 
202521,201 
202616,250 
202711,002 
Thereafter770,345 
XML 46 R35.htm IDEA: XBRL DOCUMENT v3.23.1
Leases (Tables)
3 Months Ended
Mar. 31, 2023
Leases [Abstract]  
Schedule of Lease-Related Assets and Liabilities
The table below presents the lease-related assets and liabilities recorded on the Condensed Consolidated Balance Sheets:
As of March 31,As of December 31,
(in thousands)Classification20232022
Assets   
Non-Current   
OperatingOperating lease right-of-use assets$74,602 $76,174 
FinanceProperty and equipment, net9,159 8,928 
Total lease assets $83,761 $85,102 
Liabilities 
Current 
OperatingCurrent maturities of operating lease obligations$26,000 $26,145 
FinancingCurrent maturities of finance lease obligations2,588 2,508 
Non-Current 
OperatingOperating lease obligations48,339 49,789 
FinancingFinance lease obligations6,559 6,397 
Total lease liabilities$83,486 $84,839 
Weighted-average remaining lease term:
Operating leases 3.9 years4.0 years
Finance leases 3.8 years3.6 years
Weighted-average discount rate:
Operating leases 4.60 %4.41 %
Finance leases 6.08 %5.76 %
Schedule of Lease Costs for Finance and Operating Leases
The table below presents certain information related to the lease costs for finance and operating leases:
Three months ended March 31,
(in thousands)Classification20232022
Operating lease cost(1)
Administrative$9,203 $7,759 
Finance lease cost:
Amortization of leased assets(2)
Cost of sales977 716 
Interest on finance lease obligationsInterest expense, net131 61 
Total lease costs$10,311 $8,536 
(1)Includes variable lease costs of $1.2 million and $0.9 million for the three months ended March 31, 2023 and 2022, respectively, and short-term lease costs of $0.3 million for each of the three months ended March 31, 2023 and 2022.
(2)Includes variable lease costs of $0.2 million for each of the three months ended March 31, 2023 and 2022.
The table below presents supplemental cash flow information related to leases (in thousands):
 Three months ended March 31,
 20232022
Cash paid for amounts included in the measurement of lease liabilities:
Operating cash flows for operating leases$7,691 $6,463 
Operating cash flows for finance leases131 61 
Financing cash flows for finance leases727 521 
Schedule of Undiscounted Cash Flows Finance Lease Obligations
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 Condensed Consolidated Balance Sheet as of March 31, 2023 (in thousands):
 Finance LeasesOperating Leases
  Related PartyOtherTotal Operating
Remainder of 2023$2,354 $1,068 $21,268 $22,336 
20242,668 1,175 21,565 22,740 
20252,299 1,017 14,742 15,759 
20261,968 — 9,616 9,616 
2027997 — 5,252 5,252 
Thereafter17 — 5,559 5,559 
Total minimum lease payments10,303 $3,260 $78,002 81,262 
Less: Amounts representing executory costs(2)— 
Less: Amounts representing interest(1,154)(6,923)
Present value of future minimum lease payments9,147 74,339 
Less: Current obligation under leases(2,588)(26,000)
Long-term lease obligations$6,559 $48,339 
Schedule of Undiscounted Cash Flows Operating Lease Obligations
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 Condensed Consolidated Balance Sheet as of March 31, 2023 (in thousands):
 Finance LeasesOperating Leases
  Related PartyOtherTotal Operating
Remainder of 2023$2,354 $1,068 $21,268 $22,336 
20242,668 1,175 21,565 22,740 
20252,299 1,017 14,742 15,759 
20261,968 — 9,616 9,616 
2027997 — 5,252 5,252 
Thereafter17 — 5,559 5,559 
Total minimum lease payments10,303 $3,260 $78,002 81,262 
Less: Amounts representing executory costs(2)— 
Less: Amounts representing interest(1,154)(6,923)
Present value of future minimum lease payments9,147 74,339 
Less: Current obligation under leases(2,588)(26,000)
Long-term lease obligations$6,559 $48,339 
XML 47 R36.htm IDEA: XBRL DOCUMENT v3.23.1
Fair Value Measurements (Tables)
3 Months Ended
Mar. 31, 2023
Fair Value Disclosures [Abstract]  
Schedule of Fair Values of Financial Assets and Liabilities Fair value in the Condensed Consolidated Balance Sheets and not described above were as follows (in thousands):
 As of March 31, 2023As of December 31, 2022
 TotalLevel 1Level 2Level 3TotalLevel 1Level 2Level 3
Financial assets:
Cash equivalents$197,910 $197,910 $— $— $191,881 $191,881 $— $— 
Derivative financial instruments30,020 30,020 — 38,671 38,671 — 
Total financial assets$227,930 $197,910 $30,020 $— $230,552 $191,881 $38,671 $— 
Financial liabilities:
Contingent consideration$968 $— $— $968 $1,858 $— $— $1,858 
Derivative financial instruments1,014 — 1,014 — — — — — 
Total financial liabilities$1,982 $— $1,014 $968 $1,858 $— $— $1,858 
Summary of Change in Fair Value of Contingent Consideration
The change in fair value of the contingent consideration (a Level 3 input) was as follows (in thousands):
Contingent consideration liability - January 1, 2023$1,858 
Accretion in value110 
Amounts paid to sellers(1,000)
Contingent consideration liability - March 31, 2023$968 
Summary of Carrying Values and Associated Fair Values of Financial Assets and Liabilities The Senior Notes represent a Level 2 fair value measurement and are as follows (in thousands):
 As of March 31, 2023As of December 31, 2022
 Carrying ValueFair ValueCarrying ValueFair Value
Senior Notes(1)
$300,000 $278,709 $300,000 $270,993 
(1)Excludes the impact of unamortized debt issuance costs.
XML 48 R37.htm IDEA: XBRL DOCUMENT v3.23.1
Information on Segments (Tables)
3 Months Ended
Mar. 31, 2023
Segment Reporting [Abstract]  
Schedule of Segment Information The following tables represent our segment information for the three months ended March 31, 2023 and 2022 (in thousands):
Three months ended March 31, 2023
InstallationOtherEliminationsConsolidated
Revenue$622,742 $38,722 $(2,155)$659,309 
Cost of sales (1)
410,384 28,459 (1,766)437,077 
Segment gross profit$212,358 $10,263 $(389)$222,232 
Segment gross profit percentage34.1 %26.5 %18.1 %33.7 %
Three months ended March 31, 2022
InstallationOtherEliminationsConsolidated
Revenue$561,631 $26,650 $(789)$587,492 
Cost of sales (1)
385,692 19,373 (609)404,456 
Segment gross profit$175,939 $7,277 $(180)$183,036 
Segment gross profit percentage31.3 %27.3 %22.8 %31.2 %
(1)Cost of sales included in segment gross profit is exclusive of depreciation and amortization for the three months ended March 31, 2023 and 2022.
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:
Three months ended March 31,
20232022
Segment gross profit - consolidated$222,232 $183,036 
Depreciation and amortization (1)
11,810 10,633 
Gross profit, as reported210,422 172,403 
Operating expenses133,546 115,433 
Operating income 76,876 56,970 
Other expense, net9,517 10,745 
Income before income taxes$67,359 $46,225 
(1)Depreciation and amortization is excluded from segment gross profit for the three months ended March 31, 2023 and 2022.
XML 49 R38.htm IDEA: XBRL DOCUMENT v3.23.1
Derivative and Hedging Activities (Tables)
3 Months Ended
Mar. 31, 2023
Derivative Instruments and Hedging Activities Disclosure [Abstract]  
Schedule of Notional Amounts of Outstanding Derivative Positions
As of March 31, 2023 and December 31, 2022, we had the following interest rate swap derivatives outstanding:
Effective DateNotional AmountFixed RateMaturity Date
(in millions)
July 30, 2021$200.0 0.51 %December 31, 2025
December 31, 2021100.0 1.37 %December 31, 2025
December 31, 2021100.0 1.37 %December 31, 2025
December 31, 2025300.0 3.09 %December 14, 2028
December 31, 2025100.0 2.98 %December 14, 2028
Derivative Instruments, Gain (Loss)
The following table summarizes amounts recorded to interest expense, net included in the Condensed Consolidated Statements of Operations and Comprehensive Income related to our interest rate swaps (in thousands):
Three months ended March 31,
20232022
(Benefit) expense associated with swap net settlements$(3,593)$795 
Expense associated with amortization of amended/terminated swaps1,104 790 
XML 50 R39.htm IDEA: XBRL DOCUMENT v3.23.1
Stockholders' Equity (Tables)
3 Months Ended
Mar. 31, 2023
Equity [Abstract]  
Dividends Declared and Paid
During the three months ended March 31, 2023, we declared and paid the following cash dividends (amount declared and amount paid in thousands):
Declaration DateRecord DatePayment DateDividend Per ShareAmount DeclaredAmount Paid
2/22/20233/15/20233/31/2023$0.90 $25,537 $25,270 
2/22/20233/15/20233/31/20230.33 9,364 9,266 
During the three months ended March 31, 2022, we declared and paid the following cash dividends (amount declared and amount paid in thousands):
Declaration DateRecord DatePayment DateDividend Per ShareAmount DeclaredAmount Paid
2/24/20223/15/20223/31/2022$0.90 $26,585 $26,242 
2/24/20223/15/20223/31/20220.315 9,305 9,184 
Derivative Instruments, Gain (Loss)
The following table summarizes amounts recorded to interest expense, net included in the Condensed Consolidated Statements of Operations and Comprehensive Income related to our interest rate swaps (in thousands):
Three months ended March 31,
20232022
(Benefit) expense associated with swap net settlements$(3,593)$795 
Expense associated with amortization of amended/terminated swaps1,104 790 
Schedule of Cash Flow Hedges Included in Accumulated Other Comprehensive Income (Loss)
The change in accumulated other comprehensive income related to our interest rate derivatives, net of taxes, was as follows (in thousands):
Three months ended March 31,
20232022
Accumulated gain (loss) at beginning of period$40,560 $(227)
Unrealized (losses) gains in fair value(7,126)17,527 
Reclassifications of realized net losses to earnings817 584 
Accumulated gain at end of period$34,251 $17,884 
XML 51 R40.htm IDEA: XBRL DOCUMENT v3.23.1
Employee Benefits (Tables)
3 Months Ended
Mar. 31, 2023
Postemployment Benefits [Abstract]  
Summary of Workers' Compensation Known Claims and IBNR Reserves Workers’ compensation known claims and IBNR reserves included on the Condensed Consolidated Balance Sheets were as follows (in thousands):
 March 31, 2023December 31, 2022
Included in other current liabilities$8,782 $9,946 
Included in other long-term liabilities16,550 13,730 
$25,332 $23,676 
Schedule of Insurance Receivable for Claims This receivable offsets an equal liability included within the reserve amounts noted above and was as follows (in thousands):
 March 31, 2023December 31, 2022
Included in other non-current assets$2,743 $2,318 
Summary of Equity-based Awards for Employees
Amounts and changes for each category of equity-based award were as follows:
 Common Stock AwardsPerformance-Based Stock AwardsPerformance-Based Restricted Stock Units
 AwardsWeighted Average Grant Date Fair Value Per ShareAwardsWeighted Average Grant Date Fair Value Per ShareUnitsWeighted Average Grant Date Fair Value Per Share
Nonvested awards/units at December 31, 2022
157,117 $77.31 126,053 $103.37 15,711 $80.55 
Granted7,690 109.76 69,281 109.09 — — 
Vested(569)82.14 — — — — 
Forfeited/Cancelled(398)86.72 — — (289)80.55 
Nonvested awards/units at March 31, 2023163,840 $78.79 195,334 $105.40 15,422 $80.55 
Summary of Stock Compensation Expenses
The following table summarizes the share-based compensation expense recognized under our 2014 Omnibus Incentive Plan (in thousands):
 Three months ended March 31,
 20232022
Common Stock Awards$1,393 $1,531 
Non-Employee Common Stock Awards148 124 
Performance-Based Stock Awards1,563 1,315 
Liability Performance-Based Stock Awards26 206 
Performance-Based Restricted Stock Units306 242 
$3,436 $3,418 
We recorded the following stock compensation expense by income statement category (in thousands):
 Three months ended March 31,
 20232022
Cost of sales$165 $149 
Selling136 62 
Administrative3,135 3,207 
$3,436 $3,418 
Unrecognized Share-Based Compensation Expense Related to Unvested Awards
Unrecognized share-based compensation expense related to unvested awards was as follows (in thousands):
 As of March 31, 2023
 Unrecognized
Compensation Expense
on Unvested Awards
Weighted Average
Remaining
Vesting Period
Common Stock Awards$5,561 1.7
Performance-Based Stock Awards11,112 2.1
Performance-Based Restricted Stock Units41 0.1
Total unrecognized compensation expense related to unvested awards$16,714 
XML 52 R41.htm IDEA: XBRL DOCUMENT v3.23.1
Related Party Transactions (Tables)
3 Months Ended
Mar. 31, 2023
Related Party Transactions [Abstract]  
Schedule of Common or Related Party Transactions
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):
 Three months ended March 31,
 20232022
Sales$4,015 $560 
Purchases666 407 
Rent352 314 
XML 53 R42.htm IDEA: XBRL DOCUMENT v3.23.1
Commitments and Contingencies (Tables)
3 Months Ended
Mar. 31, 2023
Commitments and Contingencies Disclosure [Abstract]  
Schedule of Accrued General Insurance Reserves Accrued general liability and auto insurance reserves included on the Condensed Consolidated Balance Sheets were as follows (in thousands):
 March 31, 2023December 31, 2022
Included in other current liabilities$7,162 $7,479 
Included in other long-term liabilities16,621 17,528 
$23,783 $25,007 
Schedule of Insurance Receivable for Claims
We also had insurance receivables and indemnification assets included on the Condensed Consolidated Balance Sheets that, in aggregate, offset equal liabilities included within the reserve amounts noted above. The amounts were as follows (in thousands):
 March 31, 2023December 31, 2022
Insurance receivables and indemnification assets for claims under fully insured policies$2,643 $4,933 
Insurance receivables for claims that exceeded the stop loss limit75 380 
Total insurance receivables and indemnification assets included in other non-current assets$2,718 $5,313 
XML 54 R43.htm IDEA: XBRL DOCUMENT v3.23.1
Business Combinations (Tables)
3 Months Ended
Mar. 31, 2023
Business Combination and Asset Acquisition [Abstract]  
Schedule of Business Combinations
For the three months ended March 31, 2023 (in thousands):
Three months ended March 31, 2023
2023 AcquisitionsDateAcquisition TypeCash PaidSeller
Obligations
Total Purchase PriceRevenueNet Income
Anchor3/12/2023Share$35,928 $1,000 $36,928 $2,193 $51 
Other2/13/2023Asset2,090 131 2,221 444 15 
$38,018 $1,131 $39,149 $2,637 $66 
For the three months ended March 31, 2022 (in thousands):
Three months ended March 31, 2022
2022 AcquisitionsDateAcquisition TypeCash PaidSeller
Obligations
Total Purchase PriceRevenueNet Income
Other03/01/2022Share$8,050 $1,878 $9,928 $915 $97 
Summary of Estimated Fair Value of Assets Acquired and Liabilities Assumed
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):
Three months ended March 31, 2023Three months ended March 31, 2022
AnchorOtherTotalOther
Estimated fair values:
Cash$10 $— $10 $87 
Accounts receivable3,661 — 3,661 772 
Inventories1,527 64 1,591 684 
Other current assets1,732 — 1,732 21 
Property and equipment2,428 381 2,809 1,049 
Operating lease right-of-use asset— 28 28 — 
Intangibles16,420 1,120 17,540 4,634 
Goodwill12,870 670 13,540 2,743 
Other non-current assets184 13 197 
Accounts payable and other current liabilities(1,904)(46)(1,950)(69)
Other long-term liabilities— (9)(9)— 
Fair value of assets acquired and purchase price36,928 2,221 39,149 9,928 
Less seller obligations1,000 131 1,131 1,878 
Cash paid$35,928 $2,090 $38,018 $8,050 
Estimates of Acquired Intangible Assets
Estimates of acquired intangible assets related to the acquisitions are as follows (in thousands):
 
For the three months ended March 31,
 20232022
Acquired intangibles assetsEstimated
Fair Value
Weighted Average Estimated
Useful Life (yrs.)
Estimated
Fair Value
Weighted Average Estimated Useful Life (yrs.)
Customer relationships$10,969 12$3,125 12
Trademarks and tradenames5,466 151,136 15
Non-competition agreements285 5374 5
Backlog820 1— 0
Pro Forma Results of Operations 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, 2022 and 2021, respectively, and the unaudited pro forma information does not purport to be indicative of future financial operating results (in thousands, except per share data):
 Unaudited pro forma for the three months ended March 31,
 20232022
Net revenue$667,915 $623,603 
Net income49,590 34,974 
Basic net income per share1.77 1.19 
Diluted net income per share1.75 1.18 
XML 55 R44.htm IDEA: XBRL DOCUMENT v3.23.1
Organization - Additional Information (Details)
3 Months Ended
Mar. 31, 2023
location
segment
Organization, Consolidation and Presentation of Financial Statements [Abstract]  
Number of locations the company operates | location 240
Number of operating segment 3
Number of reportable segment 1
XML 56 R45.htm IDEA: XBRL DOCUMENT v3.23.1
Revenue Recognition - Additional Information (Details) - USD ($)
3 Months Ended
Mar. 31, 2023
Mar. 31, 2022
New Accounting Pronouncements or Change in Accounting Principle [Line Items]    
Contract liability revenue recognized $ 15,800,000  
Impairment losses on contract assets 0 $ 0
Transaction price allocated to uncompleted contracts $ 154,300,000  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2022-07-01    
New Accounting Pronouncements or Change in Accounting Principle [Line Items]    
Expected time of revenue recognition (in months) 18 months  
XML 57 R46.htm IDEA: XBRL DOCUMENT v3.23.1
Revenue Recognition - Summary of Revenues Disaggregated by End Market and Product (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2023
Mar. 31, 2022
Disaggregation of Revenue [Line Items]    
Net revenue $ 659,309 $ 587,492
Revenue from Contract with Customer Benchmark | Customer Concentration Risk    
Disaggregation of Revenue [Line Items]    
Concentration risk (percent) 100.00% 100.00%
Revenue from Contract with Customer, Product and Service Benchmark | Product Concentration Risk    
Disaggregation of Revenue [Line Items]    
Concentration risk (percent) 100.00% 100.00%
Net revenue, Installation    
Disaggregation of Revenue [Line Items]    
Net revenue $ 622,742 $ 561,631
Net revenue, Installation | Revenue from Contract with Customer, Product and Service Benchmark | Product Concentration Risk    
Disaggregation of Revenue [Line Items]    
Concentration risk (percent) 94.00% 96.00%
Insulation    
Disaggregation of Revenue [Line Items]    
Net revenue $ 394,043 $ 364,943
Insulation | Revenue from Contract with Customer, Product and Service Benchmark | Product Concentration Risk    
Disaggregation of Revenue [Line Items]    
Concentration risk (percent) 60.00% 63.00%
Shower doors, shelving and mirrors    
Disaggregation of Revenue [Line Items]    
Net revenue $ 45,513 $ 36,340
Shower doors, shelving and mirrors | Revenue from Contract with Customer, Product and Service Benchmark | Product Concentration Risk    
Disaggregation of Revenue [Line Items]    
Concentration risk (percent) 7.00% 6.00%
Garage doors    
Disaggregation of Revenue [Line Items]    
Net revenue $ 43,312 $ 35,979
Garage doors | Revenue from Contract with Customer, Product and Service Benchmark | Product Concentration Risk    
Disaggregation of Revenue [Line Items]    
Concentration risk (percent) 7.00% 6.00%
Waterproofing    
Disaggregation of Revenue [Line Items]    
Net revenue $ 29,939 $ 29,022
Waterproofing | Revenue from Contract with Customer, Product and Service Benchmark | Product Concentration Risk    
Disaggregation of Revenue [Line Items]    
Concentration risk (percent) 4.00% 5.00%
Rain gutters    
Disaggregation of Revenue [Line Items]    
Net revenue $ 27,800 $ 23,546
Rain gutters | Revenue from Contract with Customer, Product and Service Benchmark | Product Concentration Risk    
Disaggregation of Revenue [Line Items]    
Concentration risk (percent) 4.00% 4.00%
Window Blinds    
Disaggregation of Revenue [Line Items]    
Net revenue $ 15,881 $ 13,058
Window Blinds | Revenue from Contract with Customer, Product and Service Benchmark | Product Concentration Risk    
Disaggregation of Revenue [Line Items]    
Concentration risk (percent) 2.00% 2.00%
Fireproofing/firestopping    
Disaggregation of Revenue [Line Items]    
Net revenue $ 15,175 $ 15,922
Fireproofing/firestopping | Revenue from Contract with Customer, Product and Service Benchmark | Product Concentration Risk    
Disaggregation of Revenue [Line Items]    
Concentration risk (percent) 2.00% 3.00%
Other building products    
Disaggregation of Revenue [Line Items]    
Net revenue $ 51,079 $ 42,821
Other building products | Revenue from Contract with Customer, Product and Service Benchmark | Product Concentration Risk    
Disaggregation of Revenue [Line Items]    
Concentration risk (percent) 8.00% 7.00%
Other    
Disaggregation of Revenue [Line Items]    
Net revenue $ 36,567 $ 25,861
Other | Revenue from Contract with Customer, Product and Service Benchmark | Product Concentration Risk    
Disaggregation of Revenue [Line Items]    
Concentration risk (percent) 6.00% 4.00%
Net revenue, Installation    
Disaggregation of Revenue [Line Items]    
Net revenue $ 622,742 $ 561,631
Net revenue, Installation | Revenue from Contract with Customer Benchmark | Customer Concentration Risk    
Disaggregation of Revenue [Line Items]    
Concentration risk (percent) 94.00% 96.00%
Residential new construction    
Disaggregation of Revenue [Line Items]    
Net revenue $ 475,095 $ 442,404
Residential new construction | Revenue from Contract with Customer Benchmark | Customer Concentration Risk    
Disaggregation of Revenue [Line Items]    
Concentration risk (percent) 72.00% 75.00%
Repair and remodel    
Disaggregation of Revenue [Line Items]    
Net revenue $ 37,675 $ 32,641
Repair and remodel | Revenue from Contract with Customer Benchmark | Customer Concentration Risk    
Disaggregation of Revenue [Line Items]    
Concentration risk (percent) 6.00% 6.00%
Commercial    
Disaggregation of Revenue [Line Items]    
Net revenue $ 109,972 $ 86,586
Commercial | Revenue from Contract with Customer Benchmark | Customer Concentration Risk    
Disaggregation of Revenue [Line Items]    
Concentration risk (percent) 16.00% 15.00%
Other    
Disaggregation of Revenue [Line Items]    
Net revenue $ 36,567 $ 25,861
Other | Revenue from Contract with Customer Benchmark | Customer Concentration Risk    
Disaggregation of Revenue [Line Items]    
Concentration risk (percent) 6.00% 4.00%
XML 58 R47.htm IDEA: XBRL DOCUMENT v3.23.1
Revenue Recognition - Summary of Assets and Liabilities Related to Uncompleted Contracts and Customer Deposits (Details) - USD ($)
$ in Thousands
Mar. 31, 2023
Dec. 31, 2022
Revenue from Contract with Customer [Abstract]    
Contract assets $ 36,048 $ 29,431
Contract liabilities $ (17,331) $ (18,884)
XML 59 R48.htm IDEA: XBRL DOCUMENT v3.23.1
Revenue Recognition - Schedule of Cost and Estimated Earnings on Uncompleted Contracts (Details) - USD ($)
$ in Thousands
Mar. 31, 2023
Dec. 31, 2022
Revenue from Contract with Customer [Abstract]    
Costs incurred on uncompleted contracts $ 279,994 $ 273,788
Estimated earnings 116,621 114,781
Total 396,615 388,569
Less: Billings to date 369,686 368,009
Net under billings $ 26,929 $ 20,560
XML 60 R49.htm IDEA: XBRL DOCUMENT v3.23.1
Revenue Recognition - Schedule of Net Under (Over) Billings (Details) - USD ($)
$ in Thousands
Mar. 31, 2023
Dec. 31, 2022
Revenue from Contract with Customer [Abstract]    
Costs and estimated earnings in excess of billings on uncompleted contracts (contract assets) $ 36,048 $ 29,431
Billings in excess of costs and estimated earnings on uncompleted contracts (contract liabilities) (9,119) (8,871)
Net under billings $ 26,929 $ 20,560
XML 61 R50.htm IDEA: XBRL DOCUMENT v3.23.1
Credit Losses (Details)
$ in Thousands
3 Months Ended
Mar. 31, 2023
USD ($)
Accounts Receivable, Allowance for Credit Loss [Roll Forward]  
Beginning balance $ 9,549
Current period provision 1,678
Recoveries collected and additions 61
Amounts written off (1,229)
Ending balance $ 10,059
XML 62 R51.htm IDEA: XBRL DOCUMENT v3.23.1
Investments and Cash and Cash Equivalents (Details) - USD ($)
$ in Millions
Mar. 31, 2023
Dec. 31, 2022
Investments [Abstract]    
Cash and cash equivalents $ 197.9 $ 191.9
XML 63 R52.htm IDEA: XBRL DOCUMENT v3.23.1
Goodwill and Intangibles - Summary of Change in Carrying Amount of Goodwill (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2023
Dec. 31, 2022
Goodwill [Roll Forward]    
Goodwill (gross), beginning balance $ 443,559  
Business combinations 13,540  
Other 5,530  
Goodwill (gross), ending balance 462,629  
Accumulated impairment losses (70,004)  
Goodwill (net) 392,625 $ 373,555
Installation    
Goodwill [Roll Forward]    
Goodwill (gross), beginning balance 355,226  
Business combinations 13,540  
Other 257  
Goodwill (gross), ending balance 369,023  
Accumulated impairment losses (70,004)  
Goodwill (net) 299,019  
Other    
Goodwill [Roll Forward]    
Goodwill (gross), beginning balance 88,333  
Business combinations 0  
Other 5,273  
Goodwill (gross), ending balance 93,606  
Accumulated impairment losses 0  
Goodwill (net) $ 93,606  
XML 64 R53.htm IDEA: XBRL DOCUMENT v3.23.1
Goodwill and Intangibles - Schedule of Gross Carrying Amount and Accumulated Amortization (Details) - USD ($)
$ in Thousands
Mar. 31, 2023
Dec. 31, 2022
Finite-Lived Intangible Assets [Line Items]    
Gross Carrying Amount $ 526,939 $ 509,376
Accumulated Amortization 237,338 225,903
Net Book Value 289,601 283,473
Customer relationships    
Finite-Lived Intangible Assets [Line Items]    
Gross Carrying Amount 349,019 338,050
Accumulated Amortization 154,169 145,722
Net Book Value 194,850 192,328
Covenants not-to-compete    
Finite-Lived Intangible Assets [Line Items]    
Gross Carrying Amount 31,207 30,899
Accumulated Amortization 21,028 20,086
Net Book Value 10,179 10,813
Trademarks and tradenames    
Finite-Lived Intangible Assets [Line Items]    
Gross Carrying Amount 125,078 119,612
Accumulated Amortization 41,518 39,638
Net Book Value 83,560 79,974
Backlog    
Finite-Lived Intangible Assets [Line Items]    
Gross Carrying Amount 21,635 20,815
Accumulated Amortization 20,623 20,457
Net Book Value $ 1,012 $ 358
XML 65 R54.htm IDEA: XBRL DOCUMENT v3.23.1
Goodwill and Intangibles - Additional Information (Details) - USD ($)
$ in Thousands
3 Months Ended 12 Months Ended
Mar. 31, 2023
Dec. 31, 2022
Goodwill and Intangible Assets Disclosure [Abstract]    
Increase in gross carrying amount of intangibles $ 17,600  
Other    
Goodwill [Line Items]    
Change in goodwill due to tax election   $ 4,900
XML 66 R55.htm IDEA: XBRL DOCUMENT v3.23.1
Goodwill and Intangibles - Schedule of Estimated Aggregate Annual Amortization (Details)
$ in Thousands
Mar. 31, 2023
USD ($)
Finite Lived Intangible Assets Net Amortization Expense Rolling Maturity [Abstract]  
Remainder of 2022 $ 32,834
2024 39,843
2025 34,301
2026 30,350
2027 26,064
Thereafter $ 126,209
XML 67 R56.htm IDEA: XBRL DOCUMENT v3.23.1
Long-Term Debt - Schedule of Debt (Details) - USD ($)
$ in Thousands
Mar. 31, 2023
Dec. 31, 2022
Debt Instrument [Line Items]    
Total long term debt $ 861,390 $ 861,154
Less: current maturities (31,165) (30,983)
Long-term debt, less current maturities 830,225 830,171
Senior Notes | 5.75% Senior Notes Due 2028    
Debt Instrument [Line Items]    
Total long term debt 297,113 296,964
Unamortized debt issuance costs 2,887 3,036
Medium-term Notes | Term Loan Agreement    
Debt Instrument [Line Items]    
Total long term debt 488,226 489,233
Unamortized debt issuance costs 5,524 5,767
Notes Payable    
Debt Instrument [Line Items]    
Total long term debt $ 1,973 $ 1,973
Notes Payable | Minimum    
Debt Instrument [Line Items]    
Notes payable interest rate (as a percent) 2.00% 2.00%
Notes Payable | Maximum    
Debt Instrument [Line Items]    
Notes payable interest rate (as a percent) 5.00% 5.00%
Notes Payable | Vehicle and Equipment    
Debt Instrument [Line Items]    
Total long term debt $ 74,078 $ 72,984
Notes Payable | Vehicle and Equipment | Minimum    
Debt Instrument [Line Items]    
Notes payable interest rate (as a percent) 1.90% 1.90%
Notes Payable | Vehicle and Equipment | Maximum    
Debt Instrument [Line Items]    
Notes payable interest rate (as a percent) 6.20% 6.20%
XML 68 R57.htm IDEA: XBRL DOCUMENT v3.23.1
Long-Term Debt - Schedule Of Maturities Of Long Term Debt (Details)
$ in Thousands
Mar. 31, 2023
USD ($)
Maturities of Long-term Debt [Abstract]  
Remainder of 2022 $ 23,976
2024 27,027
2025 21,201
2026 16,250
2027 11,002
Thereafter $ 770,345
XML 69 R58.htm IDEA: XBRL DOCUMENT v3.23.1
Leases - Schedule of Supplemental Balance Sheet Information Related To Leases (Details) - USD ($)
$ in Thousands
Mar. 31, 2023
Dec. 31, 2022
Non-Current    
Operating $ 74,602 $ 76,174
Finance 9,159 8,928
Total lease assets $ 83,761 $ 85,102
Finance Lease, Right-of-Use Asset, Statement of Financial Position [Extensible List] Property and equipment, net Property and equipment, net
Current    
Operating $ 26,000 $ 26,145
Financing 2,588 2,508
Non-Current    
Operating 48,339 49,789
Financing 6,559 6,397
Total lease liabilities $ 83,486 $ 84,839
Weighted-average remaining lease term:    
Operating leases (in years) 3 years 10 months 24 days 4 years
Finance leases (in years) 3 years 9 months 18 days 3 years 7 months 6 days
Weighted-average discount rate:    
Operating leases (as percent) 4.60% 4.41%
Finance leases (as percent) 6.08% 5.76%
XML 70 R59.htm IDEA: XBRL DOCUMENT v3.23.1
Leases - Lease Costs (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2023
Mar. 31, 2022
Lessee, Lease, Description [Line Items]    
Operating lease costs $ 9,203 $ 7,759
Finance lease cost:    
Amortization of leased assets 977 716
Interest on finance lease obligations 131 61
Total lease costs 10,311 8,536
Operating Lease    
Finance lease cost:    
Variable lease costs 1,200 900
Short-term lease costs 300 300
Finance Lease    
Finance lease cost:    
Variable lease costs $ 200 $ 200
XML 71 R60.htm IDEA: XBRL DOCUMENT v3.23.1
Leases - Other Information (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2023
Mar. 31, 2022
Cash paid for amounts included in the measurement of lease liabilities:    
Operating cash flows for operating leases $ 7,691 $ 6,463
Operating cash flows for finance leases 131 61
Financing cash flows for finance leases $ 727 $ 521
XML 72 R61.htm IDEA: XBRL DOCUMENT v3.23.1
Leases - Undiscounted Cash Flows (Details) - USD ($)
$ in Thousands
Mar. 31, 2023
Dec. 31, 2022
Finance Leases    
Remainder of 2022 $ 2,354  
2024 2,668  
2025 2,299  
2026 1,968  
2027 997  
Thereafter 17  
Total minimum lease payments 10,303  
Less: Amounts representing executory costs (2)  
Less: Amounts representing interest (1,154)  
Present value of future minimum lease payments 9,147  
Less: Current obligation under leases (2,588) $ (2,508)
Finance lease obligations 6,559 6,397
Operating Leases    
Remainder of 2022 22,336  
2024 22,740  
2025 15,759  
2026 9,616  
2027 5,252  
Thereafter 5,559  
Total minimum lease payments 81,262  
Operating Lease Executory Cost 0  
Less: Amounts representing interest (6,923)  
Present value of future minimum lease payments 74,339  
Less: Current obligation under leases (26,000) (26,145)
Operating lease obligations 48,339 $ 49,789
Related Party    
Operating Leases    
Remainder of 2022 1,068  
2024 1,175  
2025 1,017  
2026 0  
2027 0  
Thereafter 0  
Total minimum lease payments 3,260  
Other    
Operating Leases    
Remainder of 2022 21,268  
2024 21,565  
2025 14,742  
2026 9,616  
2027 5,252  
Thereafter 5,559  
Total minimum lease payments $ 78,002  
XML 73 R62.htm IDEA: XBRL DOCUMENT v3.23.1
Fair Value Measurements - Schedule of Fair Values of Financial Assets and Liabilities (Details) - USD ($)
$ in Thousands
Mar. 31, 2023
Dec. 31, 2022
Financial assets:    
Cash equivalents $ 197,910 $ 191,881
Derivative financial instruments 30,020 38,671
Total financial assets 227,930 230,552
Financial liabilities:    
Contingent consideration 968 1,858
Derivative financial instruments 1,014 0
Total financial liabilities 1,982 1,858
Level 1    
Financial assets:    
Cash equivalents 197,910 191,881
Derivative financial instruments 0 0
Total financial assets 197,910 191,881
Financial liabilities:    
Contingent consideration 0 0
Derivative financial instruments 0 0
Total financial liabilities 0 0
Level 2    
Financial assets:    
Cash equivalents 0 0
Derivative financial instruments 30,020 38,671
Total financial assets 30,020 38,671
Financial liabilities:    
Contingent consideration 0 0
Derivative financial instruments 1,014 0
Total financial liabilities 1,014 0
Level 3    
Financial assets:    
Cash equivalents 0 0
Derivative financial instruments 0 0
Total financial assets 0 0
Financial liabilities:    
Contingent consideration 968 1,858
Derivative financial instruments 0 0
Total financial liabilities $ 968 $ 1,858
XML 74 R63.htm IDEA: XBRL DOCUMENT v3.23.1
Fair Value Measurements - Summary of Change in Fair Value of Contingent Consideration (Details)
$ in Thousands
3 Months Ended
Mar. 31, 2023
USD ($)
Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward]  
Beginning balance $ 1,858
Accretion in value 110
Amounts paid to sellers (1,000)
Ending balance $ 968
XML 75 R64.htm IDEA: XBRL DOCUMENT v3.23.1
Fair Value Measurements - Summary of Carrying Values and Associated Fair Values of Financial Assets and Liabilities (Details) - 5.75% Senior Notes Due 2028 - USD ($)
$ in Thousands
Mar. 31, 2023
Dec. 31, 2022
Level 2    
Financial assets:    
Senior Notes $ 278,709 $ 270,993
Carrying Value    
Financial assets:    
Senior Notes $ 300,000 $ 300,000
XML 76 R65.htm IDEA: XBRL DOCUMENT v3.23.1
Information on Segments (Details)
$ in Thousands
3 Months Ended
Mar. 31, 2023
USD ($)
segment
Mar. 31, 2022
USD ($)
Segment Reporting Information [Line Items]    
Number of operating segment | segment 3  
Number of reportable segment | segment 1  
Net revenue $ 659,309 $ 587,492
Cost of sales (1) 437,077 404,456
Gross profit 210,422 172,403
Income before income taxes 67,359 46,225
Operating income $ 76,876 $ 56,970
Segment gross profit percentage 33.70% 31.20%
Adjustment    
Segment Reporting Information [Line Items]    
Segment gross profit $ 222,232 $ 183,036
Depreciation and amortization (1) 11,810 10,633
Gross profit 210,422 172,403
Selling 133,546 115,433
Other expense, net 9,517 10,745
Income before income taxes 67,359 46,225
Operating income 76,876 56,970
Eliminations    
Segment Reporting Information [Line Items]    
Net revenue (2,155) (789)
Cost of sales (1) (1,766) $ (609)
Segment gross profit $ (389)  
Segment gross profit percentage 18.10% 22.80%
Eliminations | Adjustment    
Segment Reporting Information [Line Items]    
Segment gross profit   $ (180)
Installation    
Segment Reporting Information [Line Items]    
Number of operating segment | segment 1  
Installation | Operating segments    
Segment Reporting Information [Line Items]    
Net revenue $ 622,742 561,631
Cost of sales (1) 410,384 385,692
Segment gross profit $ 212,358 $ 175,939
Segment gross profit percentage 34.10% 31.30%
Other    
Segment Reporting Information [Line Items]    
Number of operating segment | segment 2  
Other | Operating segments    
Segment Reporting Information [Line Items]    
Net revenue $ 38,722 $ 26,650
Cost of sales (1) 28,459 19,373
Segment gross profit $ 10,263 $ 7,277
Segment gross profit percentage 26.50% 27.30%
XML 77 R66.htm IDEA: XBRL DOCUMENT v3.23.1
Derivative and Hedging Activities - Open Interest Swap Contract Summary (Details) - Cash Flow Hedging - Designated as Hedging Instrument
$ in Millions
Mar. 31, 2023
USD ($)
Interest Rate Swap One, Effective July 20, 2021  
Derivative Instruments and Hedging Activities Disclosures [Line Items]  
Notional amount of derivative instruments $ 200.0
Interest rate of derivative instruments (as a percent) 0.51%
Interest Rate Swap Two, Effective December 31, 2021  
Derivative Instruments and Hedging Activities Disclosures [Line Items]  
Notional amount of derivative instruments $ 100.0
Interest rate of derivative instruments (as a percent) 1.37%
Interest Rate Swap Three, Effective December 31, 2021  
Derivative Instruments and Hedging Activities Disclosures [Line Items]  
Notional amount of derivative instruments $ 100.0
Interest rate of derivative instruments (as a percent) 1.37%
Interest Rate Swap Four, Effective December 31, 2025  
Derivative Instruments and Hedging Activities Disclosures [Line Items]  
Notional amount of derivative instruments $ 300.0
Interest rate of derivative instruments (as a percent) 3.09%
Interest Rate Swap Five, Effective December 31, 2025  
Derivative Instruments and Hedging Activities Disclosures [Line Items]  
Notional amount of derivative instruments $ 100.0
Interest rate of derivative instruments (as a percent) 2.98%
XML 78 R67.htm IDEA: XBRL DOCUMENT v3.23.1
Derivative and Hedging Activities - Narrative (Details)
3 Months Ended
Mar. 31, 2023
USD ($)
Mar. 31, 2022
USD ($)
Jul. 08, 2022
instrument
Aug. 31, 2020
swap
Derivative Instruments and Hedging Activities Disclosures [Line Items]        
Number of swaps | swap       2
Designated as Hedging Instrument        
Derivative Instruments and Hedging Activities Disclosures [Line Items]        
Amortization of unrealized gain (loss) $ 1,700,000      
Amortized interest expense of financing element 1,800,000      
Amortization of unrealized loss 1,000,000 $ 800,000    
Interest Rate Swap        
Derivative Instruments and Hedging Activities Disclosures [Line Items]        
Amortization of unrealized loss 1,104,000 $ 790,000    
Interest Rate Swap | Cash Flow Hedging        
Derivative Instruments and Hedging Activities Disclosures [Line Items]        
Notional amount of derivative instruments 400,000,000      
Interest Rate Swap | Designated as Hedging Instrument        
Derivative Instruments and Hedging Activities Disclosures [Line Items]        
Number of derivatives | instrument     3  
Reclassification from accumulated other comprehensive income to interest expense $ 10,400,000      
XML 79 R68.htm IDEA: XBRL DOCUMENT v3.23.1
Derivative and Hedging Activities - Interest Rate Swap Summary (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2023
Mar. 31, 2022
Derivative Instruments and Hedging Activities Disclosures [Line Items]    
OCI, Cash Flow Hedge, Reclassification for Discontinuance, Statement of Income or Comprehensive Income [Extensible Enumeration] Interest expense Interest expense
Interest Rate Swap    
Derivative Instruments and Hedging Activities Disclosures [Line Items]    
(Benefit) expense associated with swap net settlements $ (3,593) $ 795
Expense associated with amortization of amended/terminated swaps $ 1,104 $ 790
XML 80 R69.htm IDEA: XBRL DOCUMENT v3.23.1
Stockholders' Equity - Change in AOCI (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2023
Mar. 31, 2022
AOCI Including Portion Attributable to Noncontrolling Interest, Net of Tax [Roll Forward]    
BEGINNING BALANCE $ 493,499 $ 416,840
ENDING BALANCE 505,222 390,231
Accumulated Gain (Loss), Net, Cash Flow Hedge, Parent    
AOCI Including Portion Attributable to Noncontrolling Interest, Net of Tax [Roll Forward]    
BEGINNING BALANCE 40,560 (227)
Unrealized (losses) gains in fair value (7,126) 17,527
Reclassifications of realized net losses to earnings 817 584
ENDING BALANCE $ 34,251 $ 17,884
XML 81 R70.htm IDEA: XBRL DOCUMENT v3.23.1
Stockholders' Equity - Additional Information (Details) - USD ($)
$ / shares in Units, shares in Thousands, $ in Thousands
3 Months Ended
Mar. 31, 2023
Mar. 31, 2022
Feb. 24, 2022
Statement Of Shareholders Equity [Line Items]      
Common stock repurchase (in shares) (511)    
Share repurchase, amount $ 49,900 $ 49,865  
Share repurchase, price per share (in usd per share) $ 97,570    
Stock repurchase program, authorized     $ 200,000
Amount Paid $ 34,536 $ 35,426  
XML 82 R71.htm IDEA: XBRL DOCUMENT v3.23.1
Stockholders' Equity - Cash Dividends (Details) - USD ($)
$ / shares in Units, $ in Thousands
1 Months Ended 3 Months Ended
Feb. 22, 2023
Mar. 31, 2022
Feb. 24, 2022
Feb. 23, 2022
Mar. 31, 2023
Mar. 31, 2022
Mar. 31, 2023
Mar. 31, 2022
Dividends Payable [Line Items]                
Cash dividends declared per share (in USD per share)             $ 1.23 $ 1.22
Amount Declared             $ 34,901 $ 35,890
Amount Paid             $ 34,536 $ 35,426
Dividend One                
Dividends Payable [Line Items]                
Cash dividends declared per share (in USD per share) $ 0.90   $ 0.90          
Amount Declared $ 25,537   $ 26,585          
Amount Paid         $ 25,270 $ 26,242    
Dividend Two                
Dividends Payable [Line Items]                
Cash dividends declared per share (in USD per share) $ 0.33   $ 0.315          
Amount Declared $ 9,364     $ 9,305        
Amount Paid   $ 9,184     $ 9,266      
XML 83 R72.htm IDEA: XBRL DOCUMENT v3.23.1
Employee Benefits - Additional Information (Details)
$ in Thousands
3 Months Ended
Mar. 31, 2023
USD ($)
installment
shares
Mar. 31, 2022
USD ($)
shares
Dec. 31, 2022
USD ($)
Pension Plans, Postretirement and Other Employee Benefits [Line Items]      
Healthcare benefit expense, net of employee contributions | $ $ 7,400 $ 8,900  
Accrued compensation | $ 45,613   $ 51,608
Administration expense related to employee contribution plan | $ $ 900 $ 800  
Number of shares surrendered to satisfy tax withholding obligations (in shares) 200    
2014 Omnibus Incentive Plan      
Pension Plans, Postretirement and Other Employee Benefits [Line Items]      
Common stock shares available for issuance (in shares) 1,600,000    
Common stock shares authorized (in shares) 3,000,000    
Performance-Based Stock Awards      
Pension Plans, Postretirement and Other Employee Benefits [Line Items]      
Share-based awards granted (in shares) 69,281    
Liability Performance-Based Stock Awards      
Pension Plans, Postretirement and Other Employee Benefits [Line Items]      
Share-based awards granted (in shares) 8,000 5,000  
Common Stock Awards | Non-Employee Common Stock Awards      
Pension Plans, Postretirement and Other Employee Benefits [Line Items]      
Share-based awards granted (in shares) 0    
Officer | Performance-Based Stock Awards      
Pension Plans, Postretirement and Other Employee Benefits [Line Items]      
Share-based awards granted (in shares) 61,000    
Officer | Performance-Based Stock Awards | Common Stock      
Pension Plans, Postretirement and Other Employee Benefits [Line Items]      
Number of equal installments for common stock | installment 2    
Cost of sales      
Pension Plans, Postretirement and Other Employee Benefits [Line Items]      
Workers' compensation expense | $ $ 5,800 $ 5,700  
Medical IBNR Included in Accrued Compensation      
Pension Plans, Postretirement and Other Employee Benefits [Line Items]      
Accrued compensation | $ $ 4,300   $ 3,800
XML 84 R73.htm IDEA: XBRL DOCUMENT v3.23.1
Employee Benefits - Summary of Workers' Compensation Known Claims and IBNR Reserves (Details) - USD ($)
$ in Thousands
Mar. 31, 2023
Dec. 31, 2022
Postemployment Benefits [Abstract]    
Included in other current liabilities $ 8,782 $ 9,946
Included in other long-term liabilities 16,550 13,730
Workers' compensation liability $ 25,332 $ 23,676
XML 85 R74.htm IDEA: XBRL DOCUMENT v3.23.1
Employee Benefits - Schedule of Insurance Receivable for Claims (Details) - USD ($)
$ in Thousands
Mar. 31, 2023
Dec. 31, 2022
Postemployment Benefits [Abstract]    
Included in other non-current assets $ 2,743 $ 2,318
XML 86 R75.htm IDEA: XBRL DOCUMENT v3.23.1
Employee Benefits - Summary of Equity-Based Awards for Employees (Details)
3 Months Ended
Mar. 31, 2023
$ / shares
shares
Common Stock Awards  
Awards  
Nonvested common stock awards, Beginning balance (in shares) | shares 157,117
Granted (in shares) | shares 7,690
Vested (in shares) | shares (569)
Forfeited/Cancelled (in shares) | shares (398)
Nonvested common stock awards, Ending balance (in shares) | shares 163,840
Weighted Average Grant Date Fair Value Per Share  
Nonvested performance-based stock awards, Beginning balance (in USD per share) | $ / shares $ 77.31
Granted (in USD per share) | $ / shares 109.76
Vested (in USD per share) | $ / shares 82.14
Forfeited/Cancelled (in USD per share) | $ / shares 86.72
Nonvested performance-based stock awards, Ending balance (in USD per share) | $ / shares $ 78.79
Performance-Based Stock Awards  
Awards  
Nonvested performance-based stock awards/units, Beginning balance (in shares) | shares 126,053
Granted (in shares) | shares 69,281
Forfeited/Cancelled (in shares) | shares 0
Vested (in shares) | shares 0
Nonvested performance-based stock awards/units, Ending balance (in shares) | shares 195,334
Weighted Average Grant Date Fair Value Per Share  
Nonvested performance-based stock awards/units, Beginning balance (in USD per share) | $ / shares $ 103.37
Granted (in USD per share) | $ / shares 109.09
Vested (in USD per share) | $ / shares 0
Forfeited/Cancelled (in USD per share) | $ / shares 0
Nonvested performance-based stock awards/units, Ending balance (in USD per share) | $ / shares $ 105.40
Performance-Based Restricted Stock Units  
Awards  
Nonvested performance-based stock awards/units, Beginning balance (in shares) | shares 15,711
Granted (in shares) | shares 0
Forfeited/Cancelled (in shares) | shares (289)
Vested (in shares) | shares 0
Nonvested performance-based stock awards/units, Ending balance (in shares) | shares 15,422
Weighted Average Grant Date Fair Value Per Share  
Nonvested performance-based stock awards/units, Beginning balance (in USD per share) | $ / shares $ 80.55
Granted (in USD per share) | $ / shares 0
Vested (in USD per share) | $ / shares 0
Forfeited/Cancelled (in USD per share) | $ / shares 80.55
Nonvested performance-based stock awards/units, Ending balance (in USD per share) | $ / shares $ 80.55
XML 87 R76.htm IDEA: XBRL DOCUMENT v3.23.1
Employee Benefits - Summary of Share-Based Compensation Expense Under the 2014 Omnibus Incentive Plan (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2023
Mar. 31, 2022
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]    
Share-based compensation expense $ 3,436 $ 3,418
2014 Omnibus Incentive Plan    
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]    
Share-based compensation expense 3,436 3,418
2014 Omnibus Incentive Plan | Common Stock Awards    
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]    
Share-based compensation expense 1,393 1,531
2014 Omnibus Incentive Plan | Common Stock Awards | Non-Employee Common Stock Awards    
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]    
Share-based compensation expense 148 124
2014 Omnibus Incentive Plan | Performance-Based Stock Awards    
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]    
Share-based compensation expense 1,563 1,315
2014 Omnibus Incentive Plan | Liability Performance-Based Stock Awards    
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]    
Share-based compensation expense 26 206
2014 Omnibus Incentive Plan | Performance-Based Restricted Stock Units    
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]    
Share-based compensation expense $ 306 $ 242
XML 88 R77.htm IDEA: XBRL DOCUMENT v3.23.1
Employee Benefits - Summary of Stock Compensation Expense (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2023
Mar. 31, 2022
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]    
Stock compensation expense $ 3,436 $ 3,418
Cost of sales    
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]    
Stock compensation expense 165 149
Selling    
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]    
Stock compensation expense 136 62
Administrative    
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]    
Stock compensation expense $ 3,135 $ 3,207
XML 89 R78.htm IDEA: XBRL DOCUMENT v3.23.1
Employee Benefits - Unrecognized Share-Based Compensation Expense Related to Unvested Awards (Details)
$ in Thousands
3 Months Ended
Mar. 31, 2023
USD ($)
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]  
Unrecognized Compensation Expense on Unvested Awards $ 16,714
Common Stock Awards  
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]  
Unrecognized Compensation Expense on Unvested Awards $ 5,561
Weighted Average Remaining Vesting Period (in years) 1 year 8 months 12 days
Performance-Based Stock Awards  
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]  
Unrecognized Compensation Expense on Unvested Awards $ 11,112
Weighted Average Remaining Vesting Period (in years) 2 years 1 month 6 days
Performance-Based Restricted Stock Units  
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]  
Unrecognized Compensation Expense on Unvested Awards $ 41
Weighted Average Remaining Vesting Period (in years) 1 month 6 days
XML 90 R79.htm IDEA: XBRL DOCUMENT v3.23.1
Income Taxes (Details)
3 Months Ended
Mar. 31, 2022
Income Tax Disclosure [Abstract]  
Effective tax rate (as percent) 26.80%
XML 91 R80.htm IDEA: XBRL DOCUMENT v3.23.1
Related Party Transactions - Schedule of Related Party Transactions (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2023
Mar. 31, 2022
Related Party Transactions [Abstract]    
Sales $ 4,015 $ 560
Purchases 666 407
Rent $ 352 $ 314
XML 92 R81.htm IDEA: XBRL DOCUMENT v3.23.1
Related Party Transactions - Additional Information (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2023
Mar. 31, 2022
Dec. 31, 2022
Related Party Transaction [Line Items]      
Accounts receivable, related parties $ 2,300   $ 3,300
Related party sales 4,015 $ 560  
Affiliated Entity      
Related Party Transaction [Line Items]      
Accounts receivable, related parties $ 1,500   $ 2,500
XML 93 R82.htm IDEA: XBRL DOCUMENT v3.23.1
Commitments and Contingencies - Schedule of Accrued General Insurance Reserves (Details) - USD ($)
$ in Thousands
Mar. 31, 2023
Dec. 31, 2022
Commitments and Contingencies Disclosure [Abstract]    
Included in other current liabilities $ 7,162 $ 7,479
Included in other long-term liabilities 16,621 17,528
Total $ 23,783 $ 25,007
XML 94 R83.htm IDEA: XBRL DOCUMENT v3.23.1
Commitments and Contingencies - Schedule of Insurance Receivable for Claims (Details) - USD ($)
$ in Thousands
Mar. 31, 2023
Dec. 31, 2022
Commitments And Contingencies Disclosure [Line Items]    
Total insurance receivables and indemnification assets included in other non-current assets $ 2,743 $ 2,318
General Liability    
Commitments And Contingencies Disclosure [Line Items]    
Insurance receivables and indemnification assets for claims under fully insured policies 2,643 4,933
Insurance receivables for claims that exceeded the stop loss limit 75 380
Total insurance receivables and indemnification assets included in other non-current assets $ 2,718 $ 5,313
XML 95 R84.htm IDEA: XBRL DOCUMENT v3.23.1
Commitments and Contingencies - Additional Information (Details)
aluminumPound in Millions
Mar. 31, 2023
aluminumPound
Commitments and Contingencies Disclosure [Abstract]  
2023 (in pounds) 12.0
2024 (in pounds) 14.4
2025 (in pounds) 17.3
XML 96 R85.htm IDEA: XBRL DOCUMENT v3.23.1
Business Combinations - Additional Information (Details)
$ in Thousands
3 Months Ended
Mar. 31, 2023
USD ($)
acquistion
Mar. 31, 2022
USD ($)
acquistion
Business Acquisition [Line Items]    
Number of businesses acquired | acquistion 2 1
Acquisition-related costs $ 600 $ 700
Goodwill deduction for tax purposes 13,000  
Amortization 11,435 11,097
Income tax expense 18,085 12,403
Interest expense 9,670 10,600
Combined Business Acquisitions    
Business Acquisition [Line Items]    
Amortization 400 1,900
Income tax expense $ 100 $ 400
XML 97 R86.htm IDEA: XBRL DOCUMENT v3.23.1
Business Combinations - Summary of Business Acquisitions (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 12, 2023
Feb. 13, 2023
Mar. 01, 2022
Mar. 31, 2023
Mar. 31, 2022
Business Acquisition [Line Items]          
Cash Paid       $ 38,018  
Seller Obligations       1,131  
Total Purchase Price       39,149  
Revenue       2,637  
Net Income       66  
Anchor          
Business Acquisition [Line Items]          
Cash Paid $ 35,928     35,928  
Seller Obligations 1,000     1,000  
Total Purchase Price $ 36,928        
Revenue       2,193  
Net Income       51  
Other          
Business Acquisition [Line Items]          
Cash Paid   $ 2,090 $ 8,050 2,090 $ 8,050
Seller Obligations   131 1,878 131 1,878
Total Purchase Price   $ 2,221 $ 9,928    
Revenue       444 915
Net Income       $ 15 $ 97
XML 98 R87.htm IDEA: XBRL DOCUMENT v3.23.1
Business Combinations - Summary of Estimated Fair Value of Assets Acquired and Liabilities Assumed (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 12, 2023
Feb. 13, 2023
Mar. 01, 2022
Mar. 31, 2023
Mar. 31, 2022
Dec. 31, 2022
Business Acquisition [Line Items]            
Goodwill       $ 392,625   $ 373,555
Less seller obligations       1,131    
Cash Paid       38,018    
2023 Acquisitions            
Business Acquisition [Line Items]            
Cash       10    
Accounts receivable       3,661    
Inventories       1,591    
Other current assets       1,732    
Property and equipment       2,809    
Operating lease right-of-use asset       28    
Intangibles       17,540    
Goodwill       13,540    
Other non-current assets       197    
Accounts payable and other current liabilities       (1,950)    
Other long-term liabilities       (9)    
Fair value of assets acquired and purchase price       39,149    
Less seller obligations       1,131    
Cash Paid       38,018    
Anchor            
Business Acquisition [Line Items]            
Cash       10    
Accounts receivable       3,661    
Inventories       1,527    
Other current assets       1,732    
Property and equipment       2,428    
Operating lease right-of-use asset       0    
Intangibles       16,420    
Goodwill       12,870    
Other non-current assets       184    
Accounts payable and other current liabilities       (1,904)    
Other long-term liabilities       0    
Fair value of assets acquired and purchase price       36,928    
Less seller obligations $ 1,000     1,000    
Cash Paid $ 35,928     35,928    
Other            
Business Acquisition [Line Items]            
Cash       0 $ 87  
Accounts receivable       0 772  
Inventories       64 684  
Other current assets       0 21  
Property and equipment       381 1,049  
Operating lease right-of-use asset       28 0  
Intangibles       1,120 4,634  
Goodwill       670 2,743  
Other non-current assets       13 7  
Accounts payable and other current liabilities       (46) (69)  
Other long-term liabilities       (9) 0  
Fair value of assets acquired and purchase price       2,221 9,928  
Less seller obligations   $ 131 $ 1,878 131 1,878  
Cash Paid   $ 2,090 $ 8,050 $ 2,090 $ 8,050  
XML 99 R88.htm IDEA: XBRL DOCUMENT v3.23.1
Business Combinations - Estimates of Acquired Intangible Assets (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2023
Mar. 31, 2022
Customer relationships    
Acquired Finite-Lived Intangible Assets [Line Items]    
Estimated Fair Value $ 10,969 $ 3,125
Weighted Average Estimated Useful Life (in years) 12 years 12 years
Trademarks and tradenames    
Acquired Finite-Lived Intangible Assets [Line Items]    
Estimated Fair Value $ 5,466 $ 1,136
Weighted Average Estimated Useful Life (in years) 15 years 15 years
Covenants not-to-compete    
Acquired Finite-Lived Intangible Assets [Line Items]    
Estimated Fair Value $ 285 $ 374
Weighted Average Estimated Useful Life (in years) 5 years 5 years
Backlog    
Acquired Finite-Lived Intangible Assets [Line Items]    
Estimated Fair Value $ 820 $ 0
Weighted Average Estimated Useful Life (in years) 1 year 0 years
XML 100 R89.htm IDEA: XBRL DOCUMENT v3.23.1
Business Combinations - Pro Forma Results of Operations (Details) - USD ($)
$ / shares in Units, $ in Thousands
3 Months Ended
Mar. 31, 2023
Mar. 31, 2022
Business Acquisition, Pro Forma Information [Abstract]    
Net revenue $ 667,915 $ 623,603
Net income $ 49,590 $ 34,974
Basic net income per share (in USD per share) $ 1.77 $ 1.19
Diluted net income per share (in USD per share) $ 1.75 $ 1.18
XML 101 R90.htm IDEA: XBRL DOCUMENT v3.23.1
Income Per Common Share - Additional Information (Details) - shares
shares in Thousands
3 Months Ended
Mar. 31, 2023
Mar. 31, 2022
Earnings Per Share [Abstract]    
Dilutive effect of outstanding restricted stock awards after application of the Treasury Stock Method (in shares) 203 278
Common stock shares excluded from calculation of diluted net income per common share (in shares) 4  
XML 102 R91.htm IDEA: XBRL DOCUMENT v3.23.1
Subsequent Events (Details) - USD ($)
1 Months Ended 3 Months Ended
May 04, 2023
Apr. 30, 2023
Mar. 31, 2023
Mar. 31, 2022
Subsequent Event [Line Items]        
Cash dividends declared per share (in USD per share)     $ 1.23 $ 1.22
Subsequent Event        
Subsequent Event [Line Items]        
Cash dividends declared per share (in USD per share) $ 0.33      
Subsequent Event | Term Loan        
Subsequent Event [Line Items]        
Debt instrument, face amount   $ 500,000,000    
Term loan facility maturity period (in years)   7 years    
Subsequent Event | ABL Credit Agreement | Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate | One Month        
Subsequent Event [Line Items]        
Margin interest rate (as percent)   0.11%    
Subsequent Event | ABL Credit Agreement | Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate | Weighted Average | Three Months        
Subsequent Event [Line Items]        
Margin interest rate (as percent)   0.26%    
Subsequent Event | ABL Credit Agreement | Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate | Maximum | Six Months        
Subsequent Event [Line Items]        
Margin interest rate (as percent)   0.43%    
XML 103 ibp-20230331_htm.xml IDEA: XBRL DOCUMENT 0001580905 2023-01-01 2023-03-31 0001580905 2023-04-27 0001580905 2023-03-31 0001580905 2022-12-31 0001580905 us-gaap:CustomerRelationshipsMember 2023-03-31 0001580905 us-gaap:CustomerRelationshipsMember 2022-12-31 0001580905 us-gaap:OtherIntangibleAssetsMember 2023-03-31 0001580905 us-gaap:OtherIntangibleAssetsMember 2022-12-31 0001580905 2022-01-01 2022-03-31 0001580905 us-gaap:CommonStockMember 2021-12-31 0001580905 us-gaap:AdditionalPaidInCapitalMember 2021-12-31 0001580905 us-gaap:RetainedEarningsMember 2021-12-31 0001580905 us-gaap:TreasuryStockCommonMember 2021-12-31 0001580905 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-12-31 0001580905 2021-12-31 0001580905 us-gaap:RetainedEarningsMember 2022-01-01 2022-03-31 0001580905 us-gaap:CommonStockMember 2022-01-01 2022-03-31 0001580905 us-gaap:AdditionalPaidInCapitalMember 2022-01-01 2022-03-31 0001580905 us-gaap:TreasuryStockCommonMember 2022-01-01 2022-03-31 0001580905 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-01-01 2022-03-31 0001580905 us-gaap:CommonStockMember 2022-03-31 0001580905 us-gaap:AdditionalPaidInCapitalMember 2022-03-31 0001580905 us-gaap:RetainedEarningsMember 2022-03-31 0001580905 us-gaap:TreasuryStockCommonMember 2022-03-31 0001580905 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-03-31 0001580905 2022-03-31 0001580905 us-gaap:CommonStockMember 2022-12-31 0001580905 us-gaap:AdditionalPaidInCapitalMember 2022-12-31 0001580905 us-gaap:RetainedEarningsMember 2022-12-31 0001580905 us-gaap:TreasuryStockCommonMember 2022-12-31 0001580905 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-12-31 0001580905 us-gaap:RetainedEarningsMember 2023-01-01 2023-03-31 0001580905 us-gaap:CommonStockMember 2023-01-01 2023-03-31 0001580905 us-gaap:AdditionalPaidInCapitalMember 2023-01-01 2023-03-31 0001580905 us-gaap:TreasuryStockCommonMember 2023-01-01 2023-03-31 0001580905 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-01-01 2023-03-31 0001580905 us-gaap:CommonStockMember 2023-03-31 0001580905 us-gaap:AdditionalPaidInCapitalMember 2023-03-31 0001580905 us-gaap:RetainedEarningsMember 2023-03-31 0001580905 us-gaap:TreasuryStockCommonMember 2023-03-31 0001580905 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-03-31 0001580905 ibp:ResidentialNewConstructionMember 2023-01-01 2023-03-31 0001580905 ibp:ResidentialNewConstructionMember us-gaap:RevenueFromContractWithCustomerMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-03-31 0001580905 ibp:ResidentialNewConstructionMember 2022-01-01 2022-03-31 0001580905 ibp:ResidentialNewConstructionMember us-gaap:RevenueFromContractWithCustomerMember us-gaap:CustomerConcentrationRiskMember 2022-01-01 2022-03-31 0001580905 ibp:RepairAndRemodelMember 2023-01-01 2023-03-31 0001580905 ibp:RepairAndRemodelMember us-gaap:RevenueFromContractWithCustomerMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-03-31 0001580905 ibp:RepairAndRemodelMember 2022-01-01 2022-03-31 0001580905 ibp:RepairAndRemodelMember us-gaap:RevenueFromContractWithCustomerMember us-gaap:CustomerConcentrationRiskMember 2022-01-01 2022-03-31 0001580905 ibp:CommercialMember 2023-01-01 2023-03-31 0001580905 ibp:CommercialMember us-gaap:RevenueFromContractWithCustomerMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-03-31 0001580905 ibp:CommercialMember 2022-01-01 2022-03-31 0001580905 ibp:CommercialMember us-gaap:RevenueFromContractWithCustomerMember us-gaap:CustomerConcentrationRiskMember 2022-01-01 2022-03-31 0001580905 ibp:CustomerInstallationMember 2023-01-01 2023-03-31 0001580905 ibp:CustomerInstallationMember us-gaap:RevenueFromContractWithCustomerMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-03-31 0001580905 ibp:CustomerInstallationMember 2022-01-01 2022-03-31 0001580905 ibp:CustomerInstallationMember us-gaap:RevenueFromContractWithCustomerMember us-gaap:CustomerConcentrationRiskMember 2022-01-01 2022-03-31 0001580905 ibp:OtherCustomerInstallationMember 2023-01-01 2023-03-31 0001580905 ibp:OtherCustomerInstallationMember us-gaap:RevenueFromContractWithCustomerMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-03-31 0001580905 ibp:OtherCustomerInstallationMember 2022-01-01 2022-03-31 0001580905 ibp:OtherCustomerInstallationMember us-gaap:RevenueFromContractWithCustomerMember us-gaap:CustomerConcentrationRiskMember 2022-01-01 2022-03-31 0001580905 us-gaap:RevenueFromContractWithCustomerMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-03-31 0001580905 us-gaap:RevenueFromContractWithCustomerMember us-gaap:CustomerConcentrationRiskMember 2022-01-01 2022-03-31 0001580905 ibp:InsulationMember 2023-01-01 2023-03-31 0001580905 ibp:InsulationMember us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember us-gaap:ProductConcentrationRiskMember 2023-01-01 2023-03-31 0001580905 ibp:InsulationMember 2022-01-01 2022-03-31 0001580905 ibp:InsulationMember us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember us-gaap:ProductConcentrationRiskMember 2022-01-01 2022-03-31 0001580905 ibp:ShowerDoorsShelvingAndMirrorsMember 2023-01-01 2023-03-31 0001580905 ibp:ShowerDoorsShelvingAndMirrorsMember us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember us-gaap:ProductConcentrationRiskMember 2023-01-01 2023-03-31 0001580905 ibp:ShowerDoorsShelvingAndMirrorsMember 2022-01-01 2022-03-31 0001580905 ibp:ShowerDoorsShelvingAndMirrorsMember us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember us-gaap:ProductConcentrationRiskMember 2022-01-01 2022-03-31 0001580905 ibp:GarageDoorsMember 2023-01-01 2023-03-31 0001580905 ibp:GarageDoorsMember us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember us-gaap:ProductConcentrationRiskMember 2023-01-01 2023-03-31 0001580905 ibp:GarageDoorsMember 2022-01-01 2022-03-31 0001580905 ibp:GarageDoorsMember us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember us-gaap:ProductConcentrationRiskMember 2022-01-01 2022-03-31 0001580905 ibp:WaterproofingMember 2023-01-01 2023-03-31 0001580905 ibp:WaterproofingMember us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember us-gaap:ProductConcentrationRiskMember 2023-01-01 2023-03-31 0001580905 ibp:WaterproofingMember 2022-01-01 2022-03-31 0001580905 ibp:WaterproofingMember us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember us-gaap:ProductConcentrationRiskMember 2022-01-01 2022-03-31 0001580905 ibp:RainGuttersMember 2023-01-01 2023-03-31 0001580905 ibp:RainGuttersMember us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember us-gaap:ProductConcentrationRiskMember 2023-01-01 2023-03-31 0001580905 ibp:RainGuttersMember 2022-01-01 2022-03-31 0001580905 ibp:RainGuttersMember us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember us-gaap:ProductConcentrationRiskMember 2022-01-01 2022-03-31 0001580905 ibp:WindowBlindsMember 2023-01-01 2023-03-31 0001580905 ibp:WindowBlindsMember us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember us-gaap:ProductConcentrationRiskMember 2023-01-01 2023-03-31 0001580905 ibp:WindowBlindsMember 2022-01-01 2022-03-31 0001580905 ibp:WindowBlindsMember us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember us-gaap:ProductConcentrationRiskMember 2022-01-01 2022-03-31 0001580905 ibp:FireproofingAndFirestoppingMember 2023-01-01 2023-03-31 0001580905 ibp:FireproofingAndFirestoppingMember us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember us-gaap:ProductConcentrationRiskMember 2023-01-01 2023-03-31 0001580905 ibp:FireproofingAndFirestoppingMember 2022-01-01 2022-03-31 0001580905 ibp:FireproofingAndFirestoppingMember us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember us-gaap:ProductConcentrationRiskMember 2022-01-01 2022-03-31 0001580905 ibp:OtherBuildingProductsMember 2023-01-01 2023-03-31 0001580905 ibp:OtherBuildingProductsMember us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember us-gaap:ProductConcentrationRiskMember 2023-01-01 2023-03-31 0001580905 ibp:OtherBuildingProductsMember 2022-01-01 2022-03-31 0001580905 ibp:OtherBuildingProductsMember us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember us-gaap:ProductConcentrationRiskMember 2022-01-01 2022-03-31 0001580905 ibp:ProductInstallationMember 2023-01-01 2023-03-31 0001580905 ibp:ProductInstallationMember us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember us-gaap:ProductConcentrationRiskMember 2023-01-01 2023-03-31 0001580905 ibp:ProductInstallationMember 2022-01-01 2022-03-31 0001580905 ibp:ProductInstallationMember us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember us-gaap:ProductConcentrationRiskMember 2022-01-01 2022-03-31 0001580905 us-gaap:ProductAndServiceOtherMember 2023-01-01 2023-03-31 0001580905 us-gaap:ProductAndServiceOtherMember us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember us-gaap:ProductConcentrationRiskMember 2023-01-01 2023-03-31 0001580905 us-gaap:ProductAndServiceOtherMember 2022-01-01 2022-03-31 0001580905 us-gaap:ProductAndServiceOtherMember us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember us-gaap:ProductConcentrationRiskMember 2022-01-01 2022-03-31 0001580905 us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember us-gaap:ProductConcentrationRiskMember 2023-01-01 2023-03-31 0001580905 us-gaap:RevenueFromContractWithCustomerProductAndServiceBenchmarkMember us-gaap:ProductConcentrationRiskMember 2022-01-01 2022-03-31 0001580905 2022-07-01 2023-01-01 2023-03-31 0001580905 ibp:InstallationSegmentMember 2022-12-31 0001580905 ibp:OtherSegmentMember 2022-12-31 0001580905 ibp:InstallationSegmentMember 2023-01-01 2023-03-31 0001580905 ibp:OtherSegmentMember 2023-01-01 2023-03-31 0001580905 ibp:InstallationSegmentMember 2023-03-31 0001580905 ibp:OtherSegmentMember 2023-03-31 0001580905 ibp:OtherSegmentMember 2022-01-01 2022-12-31 0001580905 us-gaap:NoncompeteAgreementsMember 2023-03-31 0001580905 us-gaap:NoncompeteAgreementsMember 2022-12-31 0001580905 us-gaap:TrademarksAndTradeNamesMember 2023-03-31 0001580905 us-gaap:TrademarksAndTradeNamesMember 2022-12-31 0001580905 us-gaap:OrderOrProductionBacklogMember 2023-03-31 0001580905 us-gaap:OrderOrProductionBacklogMember 2022-12-31 0001580905 ibp:FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember us-gaap:SeniorNotesMember 2023-03-31 0001580905 ibp:FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember us-gaap:SeniorNotesMember 2022-12-31 0001580905 ibp:TermLoanAgreementMember us-gaap:MediumTermNotesMember 2023-03-31 0001580905 ibp:TermLoanAgreementMember us-gaap:MediumTermNotesMember 2022-12-31 0001580905 srt:MinimumMember ibp:VehicleAndEquipmentNotesMember us-gaap:NotesPayableOtherPayablesMember 2022-12-31 0001580905 srt:MinimumMember ibp:VehicleAndEquipmentNotesMember us-gaap:NotesPayableOtherPayablesMember 2023-03-31 0001580905 srt:MaximumMember ibp:VehicleAndEquipmentNotesMember us-gaap:NotesPayableOtherPayablesMember 2022-12-31 0001580905 srt:MaximumMember ibp:VehicleAndEquipmentNotesMember us-gaap:NotesPayableOtherPayablesMember 2023-03-31 0001580905 ibp:VehicleAndEquipmentNotesMember us-gaap:NotesPayableOtherPayablesMember 2023-03-31 0001580905 ibp:VehicleAndEquipmentNotesMember us-gaap:NotesPayableOtherPayablesMember 2022-12-31 0001580905 srt:MinimumMember us-gaap:NotesPayableOtherPayablesMember 2023-03-31 0001580905 srt:MinimumMember us-gaap:NotesPayableOtherPayablesMember 2022-12-31 0001580905 srt:MaximumMember us-gaap:NotesPayableOtherPayablesMember 2023-03-31 0001580905 srt:MaximumMember us-gaap:NotesPayableOtherPayablesMember 2022-12-31 0001580905 us-gaap:NotesPayableOtherPayablesMember 2023-03-31 0001580905 us-gaap:NotesPayableOtherPayablesMember 2022-12-31 0001580905 ibp:OperatingLeaseMember 2023-01-01 2023-03-31 0001580905 ibp:OperatingLeaseMember 2022-01-01 2022-03-31 0001580905 ibp:FinanceLeaseMember 2022-01-01 2022-03-31 0001580905 ibp:FinanceLeaseMember 2023-01-01 2023-03-31 0001580905 ibp:RelatedPartyOperatingLeasesMember 2023-03-31 0001580905 ibp:OtherPartyOperatingLeasesMember 2023-03-31 0001580905 us-gaap:FairValueInputsLevel1Member 2023-03-31 0001580905 us-gaap:FairValueInputsLevel2Member 2023-03-31 0001580905 us-gaap:FairValueInputsLevel3Member 2023-03-31 0001580905 us-gaap:FairValueInputsLevel1Member 2022-12-31 0001580905 us-gaap:FairValueInputsLevel2Member 2022-12-31 0001580905 us-gaap:FairValueInputsLevel3Member 2022-12-31 0001580905 ibp:FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember us-gaap:CarryingReportedAmountFairValueDisclosureMember 2023-03-31 0001580905 ibp:FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember us-gaap:FairValueInputsLevel2Member 2023-03-31 0001580905 ibp:FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember us-gaap:CarryingReportedAmountFairValueDisclosureMember 2022-12-31 0001580905 ibp:FivePointSevenFivePercentageSeniorNotesDueTwoThousandTwentyEightMember us-gaap:FairValueInputsLevel2Member 2022-12-31 0001580905 us-gaap:AllOtherSegmentsMember 2023-01-01 2023-03-31 0001580905 us-gaap:OperatingSegmentsMember ibp:InstallationSegmentMember 2023-01-01 2023-03-31 0001580905 us-gaap:OperatingSegmentsMember us-gaap:AllOtherSegmentsMember 2023-01-01 2023-03-31 0001580905 us-gaap:IntersegmentEliminationMember 2023-01-01 2023-03-31 0001580905 srt:RestatementAdjustmentMember 2023-01-01 2023-03-31 0001580905 us-gaap:OperatingSegmentsMember ibp:InstallationSegmentMember 2022-01-01 2022-03-31 0001580905 us-gaap:OperatingSegmentsMember us-gaap:AllOtherSegmentsMember 2022-01-01 2022-03-31 0001580905 us-gaap:IntersegmentEliminationMember 2022-01-01 2022-03-31 0001580905 us-gaap:IntersegmentEliminationMember srt:RestatementAdjustmentMember 2022-01-01 2022-03-31 0001580905 srt:RestatementAdjustmentMember 2022-01-01 2022-03-31 0001580905 ibp:InterestRateSwapOneEffectiveJuly202021Member us-gaap:CashFlowHedgingMember us-gaap:DesignatedAsHedgingInstrumentMember 2023-03-31 0001580905 ibp:InterestRateSwapTwoEffectiveDecember312021Member us-gaap:CashFlowHedgingMember us-gaap:DesignatedAsHedgingInstrumentMember 2023-03-31 0001580905 ibp:InterestRateSwapThreeEffectiveDecember312021Member us-gaap:CashFlowHedgingMember us-gaap:DesignatedAsHedgingInstrumentMember 2023-03-31 0001580905 ibp:InterestRateSwapFourEffectiveDecember312025Member us-gaap:CashFlowHedgingMember us-gaap:DesignatedAsHedgingInstrumentMember 2023-03-31 0001580905 ibp:InterestRateSwapFiveEffectiveDecember312025Member us-gaap:CashFlowHedgingMember us-gaap:DesignatedAsHedgingInstrumentMember 2023-03-31 0001580905 us-gaap:InterestRateSwapMember us-gaap:DesignatedAsHedgingInstrumentMember 2022-07-08 0001580905 us-gaap:InterestRateSwapMember us-gaap:CashFlowHedgingMember 2023-03-31 0001580905 us-gaap:DesignatedAsHedgingInstrumentMember 2023-01-01 2023-03-31 0001580905 2020-08-31 0001580905 us-gaap:DesignatedAsHedgingInstrumentMember 2022-01-01 2022-03-31 0001580905 us-gaap:InterestRateSwapMember us-gaap:DesignatedAsHedgingInstrumentMember 2023-01-01 2023-03-31 0001580905 us-gaap:InterestRateSwapMember 2023-01-01 2023-03-31 0001580905 us-gaap:InterestRateSwapMember 2022-01-01 2022-03-31 0001580905 us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember 2022-12-31 0001580905 us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember 2021-12-31 0001580905 us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember 2023-01-01 2023-03-31 0001580905 us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember 2022-01-01 2022-03-31 0001580905 us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember 2023-03-31 0001580905 us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember 2022-03-31 0001580905 2022-02-24 0001580905 ibp:DividendOneMember 2023-02-22 2023-02-22 0001580905 ibp:DividendOneMember 2023-02-22 2023-03-31 0001580905 ibp:DividendTwoMember 2023-02-22 2023-02-22 0001580905 ibp:DividendTwoMember 2023-02-22 2023-03-31 0001580905 ibp:DividendOneMember 2022-02-24 2022-02-24 0001580905 ibp:DividendOneMember 2022-02-23 2022-03-31 0001580905 ibp:DividendTwoMember 2022-02-24 2022-02-24 0001580905 ibp:DividendTwoMember 2022-02-23 2022-02-23 0001580905 ibp:DividendTwoMember 2022-03-31 2022-03-31 0001580905 us-gaap:DefinedBenefitPostretirementHealthCoverageMember 2023-03-31 0001580905 us-gaap:DefinedBenefitPostretirementHealthCoverageMember 2022-12-31 0001580905 us-gaap:CostOfSalesMember 2023-01-01 2023-03-31 0001580905 us-gaap:CostOfSalesMember 2022-01-01 2022-03-31 0001580905 srt:OfficerMember ibp:PerformanceBasedAwardsMember 2023-01-01 2023-03-31 0001580905 srt:OfficerMember ibp:PerformanceBasedAwardsMember us-gaap:CommonStockMember 2023-01-01 2023-03-31 0001580905 ibp:LiabilityPerformanceBasedStockAwardsMember 2023-01-01 2023-03-31 0001580905 ibp:CommonStockAwardsMember 2022-12-31 0001580905 ibp:PerformanceBasedAwardsMember 2022-12-31 0001580905 ibp:PerformanceBasedStockUnitsMember 2022-12-31 0001580905 ibp:CommonStockAwardsMember 2023-01-01 2023-03-31 0001580905 ibp:PerformanceBasedAwardsMember 2023-01-01 2023-03-31 0001580905 ibp:PerformanceBasedStockUnitsMember 2023-01-01 2023-03-31 0001580905 ibp:CommonStockAwardsMember 2023-03-31 0001580905 ibp:PerformanceBasedAwardsMember 2023-03-31 0001580905 ibp:PerformanceBasedStockUnitsMember 2023-03-31 0001580905 ibp:CommonStockAwardsMember ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember 2023-01-01 2023-03-31 0001580905 ibp:CommonStockAwardsMember ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember 2022-01-01 2022-03-31 0001580905 ibp:CommonStockAwardsMember us-gaap:ShareBasedPaymentArrangementNonemployeeMember ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember 2023-01-01 2023-03-31 0001580905 ibp:CommonStockAwardsMember us-gaap:ShareBasedPaymentArrangementNonemployeeMember ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember 2022-01-01 2022-03-31 0001580905 ibp:PerformanceBasedAwardsMember ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember 2023-01-01 2023-03-31 0001580905 ibp:PerformanceBasedAwardsMember ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember 2022-01-01 2022-03-31 0001580905 ibp:LiabilityPerformanceBasedStockAwardsMember ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember 2023-01-01 2023-03-31 0001580905 ibp:LiabilityPerformanceBasedStockAwardsMember ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember 2022-01-01 2022-03-31 0001580905 ibp:PerformanceBasedRestrictedStockUnitsMember ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember 2023-01-01 2023-03-31 0001580905 ibp:PerformanceBasedRestrictedStockUnitsMember ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember 2022-01-01 2022-03-31 0001580905 ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember 2023-01-01 2023-03-31 0001580905 ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember 2022-01-01 2022-03-31 0001580905 us-gaap:SellingAndMarketingExpenseMember 2023-01-01 2023-03-31 0001580905 us-gaap:SellingAndMarketingExpenseMember 2022-01-01 2022-03-31 0001580905 us-gaap:GeneralAndAdministrativeExpenseMember 2023-01-01 2023-03-31 0001580905 us-gaap:GeneralAndAdministrativeExpenseMember 2022-01-01 2022-03-31 0001580905 ibp:PerformanceBasedRestrictedStockUnitsMember 2023-03-31 0001580905 ibp:PerformanceBasedRestrictedStockUnitsMember 2023-01-01 2023-03-31 0001580905 ibp:TwoThousandAndFourteenOmnibusIncentivePlanMember 2023-03-31 0001580905 ibp:LiabilityPerformanceBasedStockAwardsMember 2022-01-01 2022-03-31 0001580905 ibp:CommonStockAwardsMember us-gaap:ShareBasedPaymentArrangementNonemployeeMember 2023-01-01 2023-03-31 0001580905 srt:AffiliatedEntityMember 2023-03-31 0001580905 srt:AffiliatedEntityMember 2022-12-31 0001580905 us-gaap:GeneralLiabilityMember 2023-03-31 0001580905 us-gaap:GeneralLiabilityMember 2022-12-31 0001580905 ibp:AnchorMember 2023-03-12 2023-03-12 0001580905 ibp:AnchorMember 2023-01-01 2023-03-31 0001580905 ibp:OtherAcquisitionsMember 2023-02-13 2023-02-13 0001580905 ibp:OtherAcquisitionsMember 2023-01-01 2023-03-31 0001580905 ibp:OtherAcquisitionsMember 2022-03-01 2022-03-01 0001580905 ibp:OtherAcquisitionsMember 2022-01-01 2022-03-31 0001580905 ibp:AnchorMember 2023-03-31 0001580905 ibp:OtherAcquisitionsMember 2023-03-31 0001580905 ibp:A2023AcquisitionsMember 2023-03-31 0001580905 ibp:OtherAcquisitionsMember 2022-03-31 0001580905 ibp:A2023AcquisitionsMember 2023-01-01 2023-03-31 0001580905 us-gaap:CustomerRelationshipsMember 2023-01-01 2023-03-31 0001580905 us-gaap:CustomerRelationshipsMember 2022-01-01 2022-03-31 0001580905 us-gaap:TrademarksAndTradeNamesMember 2023-01-01 2023-03-31 0001580905 us-gaap:TrademarksAndTradeNamesMember 2022-01-01 2022-03-31 0001580905 us-gaap:NoncompeteAgreementsMember 2023-01-01 2023-03-31 0001580905 us-gaap:NoncompeteAgreementsMember 2022-01-01 2022-03-31 0001580905 us-gaap:OrderOrProductionBacklogMember 2023-01-01 2023-03-31 0001580905 us-gaap:OrderOrProductionBacklogMember 2022-01-01 2022-03-31 0001580905 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember 2023-01-01 2023-03-31 0001580905 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember 2022-01-01 2022-03-31 0001580905 us-gaap:SubsequentEventMember 2023-05-04 2023-05-04 0001580905 ibp:TermLoanMember us-gaap:SubsequentEventMember 2023-04-30 0001580905 ibp:TermLoanMember us-gaap:SubsequentEventMember 2023-04-01 2023-04-30 0001580905 ibp:AblCreditAgreementMember us-gaap:SubsequentEventMember us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember ibp:OneMonthMember 2023-04-01 2023-04-30 0001580905 srt:WeightedAverageMember ibp:AblCreditAgreementMember us-gaap:SubsequentEventMember us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember ibp:ThreeMonthsMember 2023-04-01 2023-04-30 0001580905 srt:MaximumMember ibp:AblCreditAgreementMember us-gaap:SubsequentEventMember us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember ibp:SixMonthsMember 2023-04-01 2023-04-30 shares iso4217:USD iso4217:USD shares ibp:location ibp:segment pure ibp:instrument ibp:swap ibp:installment ibp:aluminumPound ibp:acquistion false 2023 Q1 0001580905 --12-31 http://fasb.org/us-gaap/2022#PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization http://fasb.org/us-gaap/2022#PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization http://fasb.org/us-gaap/2022#InterestExpense http://fasb.org/us-gaap/2022#InterestExpense http://fasb.org/us-gaap/2022#InterestExpense http://fasb.org/us-gaap/2022#InterestExpense 5000 0 10-Q true 2023-03-31 false 001-36307 Installed Building Products, Inc. DE 45-3707650 495 South High Street Suite 50 Columbus OH 43215 614 221-3399 Common Stock, IBP NYSE Yes Yes Large Accelerated Filer false false false 28404505 218690000 229627000 10059000 9549000 397573000 397222000 170115000 176629000 76217000 80933000 862595000 884411000 126384000 118774000 74602000 76174000 392625000 373555000 194850000 192328000 94751000 91145000 33756000 42545000 1779563000 1778932000 31165000 30983000 26000000 26145000 2588000 2508000 134836000 149186000 45613000 51608000 76136000 67631000 316338000 328061000 830225000 830171000 48339000 49789000 6559000 6397000 25993000 28458000 46887000 42557000 1274341000 1285433000 0.01 0.01 5000000 5000000 0 0 0 0 0 0 0.01 0.01 100000000 100000000 33498693 33429557 28375037 28306482 335000 334000 232503000 228827000 527468000 513095000 5123656 5123075 289335000 289317000 34251000 40560000 505222000 493499000 1779563000 1778932000 659309000 587492000 448887000 415089000 210422000 172403000 32607000 25192000 89504000 79144000 11435000 11097000 76876000 56970000 9670000 10600000 153000 -145000 67359000 46225000 18085000 12403000 49274000 33822000 2252000 -6430000 -6309000 18111000 42965000 51933000 1.76 1.15 1.74 1.14 28075678 29302396 28278220 29580731 1.23 1.22 33271659 333000 211430000 352543000 3565258 147239000 -227000 416840000 33822000 33822000 40980 1000 -1000 0 50 0 0 3089000 3089000 124000 124000 39204 4000000 4000000 1.22 35890000 35890000 510943 49865000 49865000 18111000 18111000 33351843 334000 218642000 350475000 4076251 197104000 17884000 390231000 33429557 334000 228827000 513095000 5123075 289317000 40560000 493499000 49274000 49274000 69136 1000 -1000 0 581 18000 18000 3529000 3529000 148000 148000 1.23 34901000 34901000 -6309000 -6309000 33498693 335000 232503000 527468000 5123656 289335000 34251000 505222000 49274000 33822000 12525000 11329000 7316000 6371000 11435000 11097000 475000 484000 1678000 653000 639000 92000 3436000 3418000 2523000 -790000 -1716000 32700000 -7699000 16300000 -4434000 -169000 -16906000 16486000 16450000 11433000 -22537000 1265000 73833000 48225000 0 49957000 14949000 10362000 10000 0 38008000 8050000 741000 265000 -4602000 614000 -47614000 -68718000 1250000 1250000 8119000 4752000 0 627000 7024000 6618000 727000 521000 34536000 35426000 1720000 6003000 0 49865000 18000 0 -37156000 -95558000 -10937000 -116051000 229627000 333485000 218690000 217434000 14658000 14293000 1524000 1088000 5650000 5514000 957000 544000 6035000 1878000 2316000 1884000 ORGANIZATION<div 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 (“IBP”), a Delaware corporation formed on October 28, 2011, and its wholly-owned subsidiaries (collectively referred to as the “Company,” and “we,” “us” and “our”) 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 more than 240 locations and its corporate office is located in Columbus, Ohio.</span></div><div 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, and see Note 10, Information on Segments, for information on how we segment the business.</span></div> 240 1 SIGNIFICANT ACCOUNTING POLICIES<div style="margin-top:9pt"><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%">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:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The information furnished in the Condensed Consolidated Financial Statements includes normal recurring adjustments and reflects all adjustments which are, in the opinion of management, necessary for a fair presentation of the results of operations and statements of financial position for the interim periods presented. Certain information and footnote disclosures normally included in the consolidated financial statements prepared in accordance with accounting principles generally accepted in the United States of America (“U.S. GAAP”) and the rules and regulations of the Securities and Exchange Commission (the “SEC”) have been omitted pursuant to such rules and regulations. We believe that the disclosures are adequate to prevent the information presented from being misleading when read in conjunction with our audited consolidated financial statements and the notes thereto included in Part II, Item 8, Financial Statements and Supplementary Data, of our Annual Report on Form 10-K for the fiscal year ended December 31, 2022 (“2022 Form 10-K”), as filed with the SEC on February 22, 2023. The December 31, 2022 Condensed Consolidated Balance Sheet data herein was derived from the audited consolidated financial statements but the related footnotes do not include all disclosures required by U.S. GAAP.</span></div><div 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 interim operating results for the three months ended March 31, 2023 are not necessarily indicative of the results to be expected in future operating quarters.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Note 2 to the audited consolidated financial statements in our 2022 Form 10-K describes the significant accounting policies and estimates used in preparation of the audited consolidated financial statements. Other than the recently implemented accounting policy described below, there have been no changes to our significant accounting policies during the three months ended March 31, 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%;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: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%">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%">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 2021-08, Business Combinations (Topic 805): Accounting for contract assets and contract liabilities from contracts with customers</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: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 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 #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 amended 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. This did not have a material impact on our consolidated financial statements</span></div></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%;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 the following Accounting Standards Update ("ASU") on our Condensed Consolidated Financial Statements or Notes to Condensed Consolidated Financial Statements:</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.268%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.823%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:23.607%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.823%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:20.537%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.823%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:27.119%"/><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:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">  </span></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:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">  </span></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:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">  </span></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 on the financial statements or other significant matters</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%">ASU 2023-01 Leases (Topic 842): Common Control Arrangements</span></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%">  </span></td><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%">This pronouncement amends Topic 842 to require all entities to amortize leasehold improvements associated with common control leases over the useful life to the common control group.</span></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%">  </span></td><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%">Annual periods beginning after December 15, 2023, including interim periods therein. Early adoption is permitted.</span></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%">  </span></td><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%">We are currently assessing the impact of adoption on our consolidated financial statements.</span></td></tr></table></div> The accompanying consolidated financial statements include all of our wholly-owned subsidiaries. All intercompany accounts and transactions have been eliminated. The information furnished in the Condensed Consolidated Financial Statements includes normal recurring adjustments and reflects all adjustments which are, in the opinion of management, necessary for a fair presentation of the results of operations and statements of financial position for the interim periods presented. Certain information and footnote disclosures normally included in the consolidated financial statements prepared in accordance with accounting principles generally accepted in the United States of America (“U.S. GAAP”) and the rules and regulations of the Securities and Exchange Commission (the “SEC”) have been omitted pursuant to such rules and regulations. <div style="margin-top:9pt"><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: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%">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%">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 2021-08, Business Combinations (Topic 805): Accounting for contract assets and contract liabilities from contracts with customers</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: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 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 #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 amended 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. This did not have a material impact on our consolidated financial statements</span></div></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%;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 the following Accounting Standards Update ("ASU") on our Condensed Consolidated Financial Statements or Notes to Condensed Consolidated Financial Statements:</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.268%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.823%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:23.607%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.823%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:20.537%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.823%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:27.119%"/><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:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">  </span></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:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">  </span></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:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">  </span></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 on the financial statements or other significant matters</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%">ASU 2023-01 Leases (Topic 842): Common Control Arrangements</span></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%">  </span></td><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%">This pronouncement amends Topic 842 to require all entities to amortize leasehold improvements associated with common control leases over the useful life to the common control group.</span></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%">  </span></td><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%">Annual periods beginning after December 15, 2023, including interim periods therein. Early adoption is permitted.</span></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%">  </span></td><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%">We are currently assessing the impact of adoption on our consolidated financial statements.</span></td></tr></table></div> 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:9pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:85.964%"><tr><td style="width:1.0%"/><td style="width:48.729%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.650%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.913%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.650%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.650%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.918%"/><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 colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="21" 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%">Three months ended March 31,</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="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%">2023</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: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%">2022</span></div></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 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%">Residential new construction</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%">475,095 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </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;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#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%">442,404 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align: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%">37,675 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'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"><span style="color:#000000;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,641 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</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="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 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%">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%">109,972 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </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,586 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align: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 #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#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%">622,742 </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 #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 </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 #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#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%">561,631 </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 #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%">96 </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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'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"> </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%">36,567 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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:#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%">25,861 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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 #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%">659,309 </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-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%">100 </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-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%">587,492 </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-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%">100 </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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td 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;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:85.964%"><tr><td style="width:1.0%"/><td style="width:48.729%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.650%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.913%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.650%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.650%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.918%"/><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 colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="21" 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%">Three months ended March 31,</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="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%">2023</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%">2022</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="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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 #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 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%">Insulation</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%">394,043 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </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;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#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%">364,943 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align: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%">45,513 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 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%">36,340 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</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="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 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%">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%">43,312 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 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%">35,979 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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:#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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align: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%">29,939 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 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%">29,022 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 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%">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%">27,800 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 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%">23,546 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align: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:#ffffff;padding:2px 0 2px 1pt;text-align: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,881 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 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%">13,058 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 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%">Fireproofing/firestopping</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,175 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 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%">15,922 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align: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%">51,079 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 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%">42,821 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 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:#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%">622,742 </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 </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%">561,631 </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%">96 </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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">36,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%">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%">25,861 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 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%">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%">659,309 </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 #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%">100 </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-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%">587,492 </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 #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%">100 </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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td 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"><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 Condensed Consolidated Balance Sheets. Our contract 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%">consist of customer deposits and billings in excess of revenue recognized, based on costs incurred and are included in other current liabilities in our Condensed 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;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:87.865%"><tr><td style="width:1.0%"/><td style="width:58.134%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.866%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.631%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.869%"/><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%"> </span></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%">March 31, 2023</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%">December 31, 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%">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%">36,048 </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%">29,431 </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="padding:2px 1pt;text-align: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="padding:2px 0 2px 1pt;text-align: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,331)</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(18,884)</span></td><td style="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;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:87.865%"><tr><td style="width:1.0%"/><td style="width:58.134%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.866%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.631%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.869%"/><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%"> </span></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%">March 31, 2023</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%">December 31, 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%">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%">279,994 </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%">273,788 </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="padding:2px 1pt;text-align: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="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">116,621 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">114,781 </span></td><td style="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%">396,615 </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%">388,569 </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="padding:2px 1pt;text-align: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="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">369,686 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">368,009 </span></td><td style="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%">26,929 </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%">20,560 </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;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:87.865%"><tr><td style="width:1.0%"/><td style="width:58.134%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.866%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.631%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.869%"/><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%"> </span></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%">March 31, 2023</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%">December 31, 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%">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%">36,048 </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%">29,431 </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="padding:2px 1pt;text-align: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="padding:2px 0 2px 1pt;text-align: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,119)</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(8,871)</span></td><td style="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%">26,929 </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%">20,560 </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 March 31, 2023 compared to December 31, 2022 is primarily the result of timing differences between our performance of obligations under contracts and customer payments and billings. During three months ended March 31, 2023, we recognized $15.8 million of revenue that was included in the contract liability balance at December 31, 2022. We did not recognize any impairment losses on our receivables and contract assets during the three months ended March 31, 2023 or 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%">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 March 31, 2023, the aggregate amount of the transaction price allocated to remaining uncompleted contracts was $154.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> 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.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 Condensed 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 Condensed Consolidated Balance Sheets. The following tables present our net revenues disaggregated by end market and product (in thousands): <div style="margin-top:9pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:85.964%"><tr><td style="width:1.0%"/><td style="width:48.729%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.650%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.913%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.650%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.650%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.918%"/><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 colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="21" 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%">Three months ended March 31,</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="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%">2023</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: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%">2022</span></div></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 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%">Residential new construction</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%">475,095 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </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;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#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%">442,404 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align: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%">37,675 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'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"><span style="color:#000000;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,641 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</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="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 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%">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%">109,972 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </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,586 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align: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 #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#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%">622,742 </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 #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 </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 #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#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%">561,631 </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 #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%">96 </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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'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"> </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%">36,567 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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:#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%">25,861 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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 #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%">659,309 </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-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%">100 </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-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%">587,492 </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-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%">100 </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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td 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;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:85.964%"><tr><td style="width:1.0%"/><td style="width:48.729%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.650%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.913%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.650%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.650%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.918%"/><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 colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="21" 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%">Three months ended March 31,</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="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%">2023</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%">2022</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="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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 #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 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%">Insulation</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%">394,043 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </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;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#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%">364,943 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align: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%">45,513 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 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%">36,340 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</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="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 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%">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%">43,312 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 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%">35,979 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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:#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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align: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%">29,939 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 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%">29,022 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 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%">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%">27,800 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 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%">23,546 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align: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:#ffffff;padding:2px 0 2px 1pt;text-align: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,881 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 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%">13,058 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 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%">Fireproofing/firestopping</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,175 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 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%">15,922 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align: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%">51,079 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 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%">42,821 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 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:#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%">622,742 </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 </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%">561,631 </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%">96 </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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">36,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%">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%">25,861 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 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%">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%">659,309 </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 #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%">100 </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-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%">587,492 </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 #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%">100 </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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td 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> 475095000 0.72 442404000 0.75 37675000 0.06 32641000 0.06 109972000 0.16 86586000 0.15 622742000 0.94 561631000 0.96 36567000 0.06 25861000 0.04 659309000 1 587492000 1 394043000 0.60 364943000 0.63 45513000 0.07 36340000 0.06 43312000 0.07 35979000 0.06 29939000 0.04 29022000 0.05 27800000 0.04 23546000 0.04 15881000 0.02 13058000 0.02 15175000 0.02 15922000 0.03 51079000 0.08 42821000 0.07 622742000 0.94 561631000 0.96 36567000 0.06 25861000 0.04 659309000 1 587492000 1 <div 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;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:87.865%"><tr><td style="width:1.0%"/><td style="width:58.134%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.866%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.631%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.869%"/><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%"> </span></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%">March 31, 2023</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%">December 31, 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%">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%">36,048 </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%">29,431 </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="padding:2px 1pt;text-align: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="padding:2px 0 2px 1pt;text-align: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,331)</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(18,884)</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div> 36048000 29431000 17331000 18884000 <div 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;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:87.865%"><tr><td style="width:1.0%"/><td style="width:58.134%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.866%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.631%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.869%"/><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%"> </span></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%">March 31, 2023</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%">December 31, 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%">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%">279,994 </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%">273,788 </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="padding:2px 1pt;text-align: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="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">116,621 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">114,781 </span></td><td style="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%">396,615 </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%">388,569 </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="padding:2px 1pt;text-align: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="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">369,686 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">368,009 </span></td><td style="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%">26,929 </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%">20,560 </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> 279994000 273788000 116621000 114781000 396615000 388569000 369686000 368009000 26929000 20560000 <div 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;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:87.865%"><tr><td style="width:1.0%"/><td style="width:58.134%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.866%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.631%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.869%"/><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%"> </span></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%">March 31, 2023</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%">December 31, 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%">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%">36,048 </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%">29,431 </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="padding:2px 1pt;text-align: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="padding:2px 0 2px 1pt;text-align: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,119)</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(8,871)</span></td><td style="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%">26,929 </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%">20,560 </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> 36048000 29431000 9119000 8871000 26929000 20560000 15800000 0 0 0 0 154300000 18 months 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%">Our expected loss allowance methodology for accounts receivable is developed using historical experience, present economic conditions and other relevant factors management considers relevant to estimate expected credit losses. We also perform ongoing evaluations of creditworthiness of our existing and potential 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%">Changes in our allowance for credit losses 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:61.403%"><tr><td style="width:1.0%"/><td style="width:78.185%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:19.615%"/><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%">Balance as of January 1, 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%">9,549 </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%">Current period 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%">1,678 </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%">Recoveries collected and 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%">61 </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%">Amounts written off</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,229)</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%">Balance as of March 31, 2023</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%">10,059 </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%">Changes in our allowance for credit losses 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:61.403%"><tr><td style="width:1.0%"/><td style="width:78.185%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:19.615%"/><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%">Balance as of January 1, 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%">9,549 </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%">Current period 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%">1,678 </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%">Recoveries collected and 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%">61 </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%">Amounts written off</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,229)</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%">Balance as of March 31, 2023</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%">10,059 </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> 9549000 1678000 61000 1229000 10059000 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 approximately $197.9 million and $191.9 million as of March 31, 2023 and December 31, 2022, respectively. See Note 9, Fair Value Measurements, for additional information. 197900000 191900000 GOODWILL AND INTANGIBLES<div style="margin-top:9pt"><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%">The change in carrying amount of goodwill 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:100.000%"><tr><td style="width:1.0%"/><td style="width:59.280%"/><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.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.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="display:none"/><td colspan="3" style="display:none"/><td 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"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill (gross) - January 1, 2023</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%">355,226 </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%">88,333 </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%">443,559 </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: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%">13,540 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,540 </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="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">257 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,273 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,530 </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) - March 31, 2023</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%">369,023 </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%">93,606 </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%">462,629 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align: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%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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) - March 31, 2023</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%">299,019 </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%">93,606 </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%">392,625 </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><tr><td colspan="3" style="display:none"/></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 changes presented in the above table primarily include adjustments for the allocation of certain acquisitions still under measurement made during the three months ended March 31, 2023, including a change in tax election that resulted in a $4.9 million change in purchase price for a 2022 acquisition. For additional information regarding changes to goodwill resulting from acquisitions, see Note 17, 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 test goodwill for impairment annually during the fourth quarter of our fiscal year or earlier if there is an impairment indicator. Accumulated impairment losses included within the above table were incurred over multiple periods and were all associated with the Installation segment, with the latest impairment charge being recorded during the year ended December 31, 2010.</span></div><div style="margin-top:9pt"><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:100.000%"><tr><td style="width:1.0%"/><td style="width:25.946%"/><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.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.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.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.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.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.459%"/><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%"> </span></td><td colspan="15" 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 March 31,</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="15" 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:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></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%">2023</span></td><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></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%"> </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%">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><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></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:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;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 #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%"> </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:left;vertical-align:bottom"><span style="color:#000000;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 #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%"> </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:left;vertical-align:bottom"><span style="color:#000000;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 #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%"> </span></td></tr><tr><td colspan="3" style="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="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">349,019 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align: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,169 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">194,850 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align: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 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align: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 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align: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 </span></td><td style="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%">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%">31,207 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,028 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,179 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="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="padding:2px 0 2px 1pt;text-align: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,078 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">41,518 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">83,560 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">119,612 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">39,638 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">79,974 </span></td><td style="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%">21,635 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,623 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,012 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%"> </span></td><td style="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="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%">526,939 </span></td><td style="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="padding:0 1pt"/><td style="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="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%">237,338 </span></td><td style="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="padding:0 1pt"/><td style="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="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%">289,601 </span></td><td style="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="padding:0 1pt"/><td style="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="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 </span></td><td style="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="padding:0 1pt"/><td style="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="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 </span></td><td style="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="padding:0 1pt"/><td style="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="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 </span></td><td style="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 gross carrying amount of intangibles increased approximately $17.6 million during the three months ended March 31, 2023 primarily due to business combinations. For more information, see Note 17, 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%">Remaining estimated aggregate annual amortization expense is as follows (amounts, in thousands, are for the fiscal year ended):</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:57.456%"><tr><td style="width:1.0%"/><td style="width:83.632%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.168%"/><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%">Remainder of 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%">32,834 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">2024</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align: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,843 </span></td><td style="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%">34,301 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">2026</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align: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,350 </span></td><td style="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%">26,064 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Thereafter</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align: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,209 </span></td><td style="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 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:100.000%"><tr><td style="width:1.0%"/><td style="width:59.280%"/><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.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.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="display:none"/><td colspan="3" style="display:none"/><td 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"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Goodwill (gross) - January 1, 2023</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%">355,226 </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%">88,333 </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%">443,559 </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: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%">13,540 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,540 </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="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">257 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,273 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,530 </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) - March 31, 2023</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%">369,023 </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%">93,606 </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%">462,629 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align: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%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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) - March 31, 2023</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%">299,019 </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%">93,606 </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%">392,625 </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><tr><td colspan="3" style="display:none"/></tr></table></div> 355226000 88333000 443559000 13540000 0 13540000 257000 5273000 5530000 369023000 93606000 462629000 70004000 0 70004000 299019000 93606000 392625000 4900000 <div 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:100.000%"><tr><td style="width:1.0%"/><td style="width:25.946%"/><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.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.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.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.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.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.459%"/><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%"> </span></td><td colspan="15" 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 March 31,</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="15" 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:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></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%">2023</span></td><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></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%"> </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%">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><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></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:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;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 #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%"> </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:left;vertical-align:bottom"><span style="color:#000000;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 #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%"> </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:left;vertical-align:bottom"><span style="color:#000000;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 #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%"> </span></td></tr><tr><td colspan="3" style="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="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">349,019 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align: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,169 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">194,850 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align: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 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align: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 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align: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 </span></td><td style="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%">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%">31,207 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,028 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,179 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="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="padding:2px 0 2px 1pt;text-align: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,078 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">41,518 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">83,560 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">119,612 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">39,638 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">79,974 </span></td><td style="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%">21,635 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,623 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,012 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%"> </span></td><td style="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="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%">526,939 </span></td><td style="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="padding:0 1pt"/><td style="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="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%">237,338 </span></td><td style="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="padding:0 1pt"/><td style="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="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%">289,601 </span></td><td style="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="padding:0 1pt"/><td style="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="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 </span></td><td style="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="padding:0 1pt"/><td style="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="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 </span></td><td style="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="padding:0 1pt"/><td style="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="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 </span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div> 349019000 154169000 194850000 338050000 145722000 192328000 31207000 21028000 10179000 30899000 20086000 10813000 125078000 41518000 83560000 119612000 39638000 79974000 21635000 20623000 1012000 20815000 20457000 358000 526939000 237338000 289601000 509376000 225903000 283473000 17600000 <div 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 estimated aggregate annual amortization expense is as follows (amounts, in thousands, are for the fiscal year ended):</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:57.456%"><tr><td style="width:1.0%"/><td style="width:83.632%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.168%"/><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%">Remainder of 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%">32,834 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">2024</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align: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,843 </span></td><td style="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%">34,301 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">2026</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align: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,350 </span></td><td style="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%">26,064 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Thereafter</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align: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,209 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div> 32834000 39843000 34301000 30350000 26064000 126209000 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:63.081%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.443%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.446%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></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 March 31,</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%">As of 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%"> </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%">2023</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%">2022</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%">Senior Notes due 2028, net of unamortized debt issuance costs of $2,887 and $3,036, respectively</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%">297,113 </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%">296,964 </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="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%">Term loan, net of unamortized debt issuance costs of $5,524 and $5,767, respectively</span></div></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">488,226 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">489,233 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Vehicle and equipment notes, maturing through March 2028; payable in various monthly installments, including interest rates ranging from 1.9% to 6.2%</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%">74,078 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">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="padding:2px 0 2px 1pt;text-align: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 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,973 </span></td><td style="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,390 </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%">861,154 </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="padding:2px 1pt;text-align: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="padding:2px 0 2px 1pt;text-align: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,165)</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(30,983)</span></td><td style="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,225 </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%">830,171 </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 March 31, 2023 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:57.456%"><tr><td style="width:1.0%"/><td style="width:83.632%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.168%"/><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%">Remainder of 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%">23,976 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">2024</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align: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,027 </span></td><td style="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%">21,201 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">2026</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align: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,250 </span></td><td style="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%">11,002 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Thereafter</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">770,345 </span></td><td style="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%">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:63.081%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.443%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.446%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></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 March 31,</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%">As of 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%"> </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%">2023</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%">2022</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%">Senior Notes due 2028, net of unamortized debt issuance costs of $2,887 and $3,036, respectively</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%">297,113 </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%">296,964 </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="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%">Term loan, net of unamortized debt issuance costs of $5,524 and $5,767, respectively</span></div></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">488,226 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">489,233 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Vehicle and equipment notes, maturing through March 2028; payable in various monthly installments, including interest rates ranging from 1.9% to 6.2%</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%">74,078 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">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="padding:2px 0 2px 1pt;text-align: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 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,973 </span></td><td style="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,390 </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%">861,154 </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="padding:2px 1pt;text-align: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="padding:2px 0 2px 1pt;text-align: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,165)</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(30,983)</span></td><td style="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,225 </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%">830,171 </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> 2887000 3036000 297113000 296964000 5524000 5767000 488226000 489233000 0.019 0.019 0.062 0.062 74078000 72984000 0.020 0.020 0.050 0.050 1973000 1973000 861390000 861154000 31165000 30983000 830225000 830171000 <div 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 March 31, 2023 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:57.456%"><tr><td style="width:1.0%"/><td style="width:83.632%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.168%"/><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%">Remainder of 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%">23,976 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">2024</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align: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,027 </span></td><td style="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%">21,201 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">2026</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align: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,250 </span></td><td style="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%">11,002 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Thereafter</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">770,345 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div> 23976000 27027000 21201000 16250000 11002000 770345000 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 Condensed Consolidated Balance Sheets:</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:23.022%"/><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:37.935%"/><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.443%"/><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.448%"/><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="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 March 31,</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%">As of 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 #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%">2023</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%">2022</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:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;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 #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%"> </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:left;vertical-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="padding:2px 1pt;text-align: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="padding:0 1pt"/><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%"> </span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">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 right-of-use 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%">74,602 </span></td><td style="background-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%">76,174 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="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%">Finance</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjYyYzZmY2NjYTdhODQ1ZGY4MmJjYjQ2ODNiZmJjYmVhL3NlYzo2MmM2ZmNjY2E3YTg0NWRmODJiY2I0NjgzYmZiY2JlYV81OC9mcmFnOjU5MGRiYjZjY2ViNzQ4ZDBiYTEzZGNkNjJiOGY0MjM3L3RhYmxlOjJmMGNjNGNkNmZiNjQyMmFhZTc2Mzg3MTJmNjZjNzAyL3RhYmxlcmFuZ2U6MmYwY2M0Y2Q2ZmI2NDIyYWFlNzYzODcxMmY2NmM3MDJfNS0yLTEtMS0xMzExMTQ_2830c65e-0620-44cd-a0d5-559c8f40ff1e"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjYyYzZmY2NjYTdhODQ1ZGY4MmJjYjQ2ODNiZmJjYmVhL3NlYzo2MmM2ZmNjY2E3YTg0NWRmODJiY2I0NjgzYmZiY2JlYV81OC9mcmFnOjU5MGRiYjZjY2ViNzQ4ZDBiYTEzZGNkNjJiOGY0MjM3L3RhYmxlOjJmMGNjNGNkNmZiNjQyMmFhZTc2Mzg3MTJmNjZjNzAyL3RhYmxlcmFuZ2U6MmYwY2M0Y2Q2ZmI2NDIyYWFlNzYzODcxMmY2NmM3MDJfNS0yLTEtMS0xMzExMTQ_44f1af53-8c05-4c46-84d6-dd1d96d31489">Property and equipment, net</span></span></span></td><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,159 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,928 </span></td><td style="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: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:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;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%">83,761 </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%">85,102 </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="padding: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="padding:0 1pt"/><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%"> </span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="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:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;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: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="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%">Operating</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current maturities of operating lease obligations</span></td><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align: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,000 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align: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="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%">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,588 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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"/></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%">Non-Current</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></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%">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%">48,339 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="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%">Financing</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance lease obligations</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,559 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,397 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="9" style="background-color:#cceeff;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%">Total lease liabilities</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%">83,486 </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%">84,839 </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="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%">Weighted-average remaining lease term:</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/></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%">Operating leases</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%"> </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%">3.9 years</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%">4.0 years</span></td></tr><tr><td colspan="3" style="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%">Finance leases</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.8 years</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.6 years</span></td></tr><tr><td colspan="9" 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%">Weighted-average discount rate:</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"/></tr><tr><td colspan="3" style="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%">Operating leases</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.60 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.41 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-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%">Finance leases</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%"> </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%">6.08 </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%">5.76 </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%;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:</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:43.636%"/><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:26.970%"/><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.623%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><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%">Three months ended March 31,</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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 #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%">2023</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%">2022</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;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%">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 #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%">Administrative</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%">9,203 </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,759 </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"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance lease cost:</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><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%">977 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">716 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align: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="padding:0 1pt"/><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%">Interest expense, net</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">131 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">61 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align: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-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times 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%">10,311 </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%">8,536 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="margin-top:9pt;padding-left:18pt;text-indent:-22.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:10.84pt">Includes variable lease costs of $1.2 million and $0.9 million for the three months ended March 31, 2023 and 2022, respectively, and short-term lease costs of $0.3 million for each of the three months ended March 31, 2023 and 2022.</span></div><div style="margin-top:9pt;padding-left:18pt;text-indent:-22.5pt"><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.84pt">Includes variable lease costs of $0.2 million for each of the three months ended March 31, 2023 and 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%;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 (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:98.538%"><tr><td style="width:1.0%"/><td style="width:72.490%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.808%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.393%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.809%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </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:10pt;font-weight:400;line-height:100%">Three months ended March 31,</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </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%">2023</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%">2022</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align: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 #000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="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%">Operating cash flows for operating leases</span></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align: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,691 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align: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,463 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 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%">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:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">131 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="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%">Financing cash flows for finance leases</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">727 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">521 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="margin-top:9pt"><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 Condensed Consolidated Balance Sheet as of March 31, 2023 (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:42.321%"/><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.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.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><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:400;line-height:100%"> </span></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 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:8pt;font-weight:400;line-height:100%"> </span></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%"> </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%">Related 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 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%">Remainder of 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,354 </span></td><td style="background-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,068 </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%">21,268 </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%">22,336 </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="padding:2px 1pt;text-align: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="padding:2px 0 2px 1pt;text-align: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,668 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,175 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,565 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,740 </span></td><td style="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,299 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,017 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,742 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,759 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">2026</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align: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 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,616 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,616 </span></td><td style="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%">997 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Thereafter</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align: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 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,559 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,559 </span></td><td style="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 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%">10,303 </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,260 </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%">78,002 </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%">81,262 </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="padding:2px 1pt;text-align: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="padding:2px 0 2px 1pt;text-align: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 style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="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,154)</span></td><td style="background-color:#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%">(6,923)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="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%">Present value of future minimum lease payments</span></td><td colspan="2" style="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,147 </span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="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%">74,339 </span></td><td style="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,588)</span></td><td style="background-color:#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,000)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="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="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="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,559 </span></td><td style="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="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td style="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="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%">48,339 </span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div> 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 Condensed Consolidated Balance Sheets:</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:23.022%"/><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:37.935%"/><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.443%"/><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.448%"/><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="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 March 31,</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%">As of 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 #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%">2023</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%">2022</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:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;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 #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%"> </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:left;vertical-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="padding:2px 1pt;text-align: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="padding:0 1pt"/><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%"> </span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">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 right-of-use 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%">74,602 </span></td><td style="background-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%">76,174 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="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%">Finance</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjYyYzZmY2NjYTdhODQ1ZGY4MmJjYjQ2ODNiZmJjYmVhL3NlYzo2MmM2ZmNjY2E3YTg0NWRmODJiY2I0NjgzYmZiY2JlYV81OC9mcmFnOjU5MGRiYjZjY2ViNzQ4ZDBiYTEzZGNkNjJiOGY0MjM3L3RhYmxlOjJmMGNjNGNkNmZiNjQyMmFhZTc2Mzg3MTJmNjZjNzAyL3RhYmxlcmFuZ2U6MmYwY2M0Y2Q2ZmI2NDIyYWFlNzYzODcxMmY2NmM3MDJfNS0yLTEtMS0xMzExMTQ_2830c65e-0620-44cd-a0d5-559c8f40ff1e"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjYyYzZmY2NjYTdhODQ1ZGY4MmJjYjQ2ODNiZmJjYmVhL3NlYzo2MmM2ZmNjY2E3YTg0NWRmODJiY2I0NjgzYmZiY2JlYV81OC9mcmFnOjU5MGRiYjZjY2ViNzQ4ZDBiYTEzZGNkNjJiOGY0MjM3L3RhYmxlOjJmMGNjNGNkNmZiNjQyMmFhZTc2Mzg3MTJmNjZjNzAyL3RhYmxlcmFuZ2U6MmYwY2M0Y2Q2ZmI2NDIyYWFlNzYzODcxMmY2NmM3MDJfNS0yLTEtMS0xMzExMTQ_44f1af53-8c05-4c46-84d6-dd1d96d31489">Property and equipment, net</span></span></span></td><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,159 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,928 </span></td><td style="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: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:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;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%">83,761 </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%">85,102 </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="padding: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="padding:0 1pt"/><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%"> </span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="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:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;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: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="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%">Operating</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current maturities of operating lease obligations</span></td><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align: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,000 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align: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="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%">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,588 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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"/></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%">Non-Current</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></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%">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%">48,339 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="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%">Financing</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance lease obligations</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,559 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,397 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="9" style="background-color:#cceeff;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%">Total lease liabilities</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%">83,486 </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%">84,839 </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="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%">Weighted-average remaining lease term:</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/></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%">Operating leases</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%"> </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%">3.9 years</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%">4.0 years</span></td></tr><tr><td colspan="3" style="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%">Finance leases</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.8 years</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.6 years</span></td></tr><tr><td colspan="9" 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%">Weighted-average discount rate:</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"/></tr><tr><td colspan="3" style="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%">Operating leases</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.60 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.41 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-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%">Finance leases</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%"> </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%">6.08 </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%">5.76 </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%;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:</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:43.636%"/><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:26.970%"/><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.623%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><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%">Three months ended March 31,</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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 #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%">2023</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%">2022</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;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%">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 #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%">Administrative</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%">9,203 </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,759 </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"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance lease cost:</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><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%">977 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">716 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align: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="padding:0 1pt"/><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%">Interest expense, net</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">131 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">61 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align: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-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times 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%">10,311 </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%">8,536 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="margin-top:9pt;padding-left:18pt;text-indent:-22.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:10.84pt">Includes variable lease costs of $1.2 million and $0.9 million for the three months ended March 31, 2023 and 2022, respectively, and short-term lease costs of $0.3 million for each of the three months ended March 31, 2023 and 2022.</span></div><div style="margin-top:9pt;padding-left:18pt;text-indent:-22.5pt"><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.84pt">Includes variable lease costs of $0.2 million for each of the three months ended March 31, 2023 and 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%;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 (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:98.538%"><tr><td style="width:1.0%"/><td style="width:72.490%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.808%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.393%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.809%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </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:10pt;font-weight:400;line-height:100%">Three months ended March 31,</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </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%">2023</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%">2022</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align: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 #000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="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%">Operating cash flows for operating leases</span></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align: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,691 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align: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,463 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 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%">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:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">131 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="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%">Financing cash flows for finance leases</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">727 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">521 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="margin-top:9pt"><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 Condensed Consolidated Balance Sheet as of March 31, 2023 (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:42.321%"/><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.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.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><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:400;line-height:100%"> </span></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 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:8pt;font-weight:400;line-height:100%"> </span></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%"> </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%">Related 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 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%">Remainder of 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,354 </span></td><td style="background-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,068 </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%">21,268 </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%">22,336 </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="padding:2px 1pt;text-align: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="padding:2px 0 2px 1pt;text-align: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,668 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,175 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,565 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,740 </span></td><td style="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,299 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,017 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,742 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,759 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">2026</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align: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 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,616 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,616 </span></td><td style="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%">997 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Thereafter</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align: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 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,559 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,559 </span></td><td style="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 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%">10,303 </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,260 </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%">78,002 </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%">81,262 </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="padding:2px 1pt;text-align: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="padding:2px 0 2px 1pt;text-align: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 style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="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,154)</span></td><td style="background-color:#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%">(6,923)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="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%">Present value of future minimum lease payments</span></td><td colspan="2" style="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,147 </span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="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%">74,339 </span></td><td style="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,588)</span></td><td style="background-color:#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,000)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="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="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="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,559 </span></td><td style="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="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td style="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="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%">48,339 </span></td><td style="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 table below presents the lease-related assets and liabilities recorded on the Condensed Consolidated Balance Sheets:</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:23.022%"/><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:37.935%"/><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.443%"/><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.448%"/><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="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 March 31,</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%">As of 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 #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%">2023</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%">2022</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:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;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 #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%"> </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:left;vertical-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="padding:2px 1pt;text-align: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="padding:0 1pt"/><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%"> </span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">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 right-of-use 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%">74,602 </span></td><td style="background-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%">76,174 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="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%">Finance</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjYyYzZmY2NjYTdhODQ1ZGY4MmJjYjQ2ODNiZmJjYmVhL3NlYzo2MmM2ZmNjY2E3YTg0NWRmODJiY2I0NjgzYmZiY2JlYV81OC9mcmFnOjU5MGRiYjZjY2ViNzQ4ZDBiYTEzZGNkNjJiOGY0MjM3L3RhYmxlOjJmMGNjNGNkNmZiNjQyMmFhZTc2Mzg3MTJmNjZjNzAyL3RhYmxlcmFuZ2U6MmYwY2M0Y2Q2ZmI2NDIyYWFlNzYzODcxMmY2NmM3MDJfNS0yLTEtMS0xMzExMTQ_2830c65e-0620-44cd-a0d5-559c8f40ff1e"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjYyYzZmY2NjYTdhODQ1ZGY4MmJjYjQ2ODNiZmJjYmVhL3NlYzo2MmM2ZmNjY2E3YTg0NWRmODJiY2I0NjgzYmZiY2JlYV81OC9mcmFnOjU5MGRiYjZjY2ViNzQ4ZDBiYTEzZGNkNjJiOGY0MjM3L3RhYmxlOjJmMGNjNGNkNmZiNjQyMmFhZTc2Mzg3MTJmNjZjNzAyL3RhYmxlcmFuZ2U6MmYwY2M0Y2Q2ZmI2NDIyYWFlNzYzODcxMmY2NmM3MDJfNS0yLTEtMS0xMzExMTQ_44f1af53-8c05-4c46-84d6-dd1d96d31489">Property and equipment, net</span></span></span></td><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,159 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,928 </span></td><td style="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: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:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;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%">83,761 </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%">85,102 </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="padding: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="padding:0 1pt"/><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%"> </span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="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:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;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: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="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%">Operating</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current maturities of operating lease obligations</span></td><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align: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,000 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align: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="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%">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,588 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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"/></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%">Non-Current</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></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%">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%">48,339 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="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%">Financing</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance lease obligations</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,559 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,397 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="9" style="background-color:#cceeff;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%">Total lease liabilities</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%">83,486 </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%">84,839 </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="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%">Weighted-average remaining lease term:</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/></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%">Operating leases</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%"> </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%">3.9 years</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%">4.0 years</span></td></tr><tr><td colspan="3" style="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%">Finance leases</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.8 years</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.6 years</span></td></tr><tr><td colspan="9" 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%">Weighted-average discount rate:</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"/></tr><tr><td colspan="3" style="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%">Operating leases</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.60 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.41 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-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%">Finance leases</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%"> </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%">6.08 </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%">5.76 </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> 74602000 76174000 9159000 8928000 83761000 85102000 26000000 26145000 2588000 2508000 48339000 49789000 6559000 6397000 83486000 84839000 P3Y10M24D P4Y P3Y9M18D P3Y7M6D 0.0460 0.0441 0.0608 0.0576 <div 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:</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:43.636%"/><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:26.970%"/><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.623%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><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%">Three months ended March 31,</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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 #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%">2023</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%">2022</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;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%">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 #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%">Administrative</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%">9,203 </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,759 </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"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance lease cost:</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><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%">977 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">716 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align: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="padding:0 1pt"/><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%">Interest expense, net</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">131 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">61 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align: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-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times 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%">10,311 </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%">8,536 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="margin-top:9pt;padding-left:18pt;text-indent:-22.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:10.84pt">Includes variable lease costs of $1.2 million and $0.9 million for the three months ended March 31, 2023 and 2022, respectively, and short-term lease costs of $0.3 million for each of the three months ended March 31, 2023 and 2022.</span></div><div style="margin-top:9pt;padding-left:18pt;text-indent:-22.5pt"><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.84pt">Includes variable lease costs of $0.2 million for each of the three months ended March 31, 2023 and 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 table below presents supplemental cash flow information related to leases (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:98.538%"><tr><td style="width:1.0%"/><td style="width:72.490%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.808%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.393%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.809%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </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:10pt;font-weight:400;line-height:100%">Three months ended March 31,</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </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%">2023</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%">2022</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align: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 #000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="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%">Operating cash flows for operating leases</span></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align: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,691 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align: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,463 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 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%">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:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">131 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="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%">Financing cash flows for finance leases</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">727 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">521 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div> 9203000 7759000 977000 716000 131000 61000 10311000 8536000 1200000 900000 300000 300000 200000 200000 7691000 6463000 131000 61000 727000 521000 <div 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 Condensed Consolidated Balance Sheet as of March 31, 2023 (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:42.321%"/><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.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.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><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:400;line-height:100%"> </span></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 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:8pt;font-weight:400;line-height:100%"> </span></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%"> </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%">Related 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 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%">Remainder of 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,354 </span></td><td style="background-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,068 </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%">21,268 </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%">22,336 </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="padding:2px 1pt;text-align: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="padding:2px 0 2px 1pt;text-align: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,668 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,175 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,565 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,740 </span></td><td style="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,299 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,017 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,742 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,759 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">2026</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align: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 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,616 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,616 </span></td><td style="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%">997 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Thereafter</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align: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 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,559 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,559 </span></td><td style="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 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%">10,303 </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,260 </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%">78,002 </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%">81,262 </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="padding:2px 1pt;text-align: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="padding:2px 0 2px 1pt;text-align: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 style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="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,154)</span></td><td style="background-color:#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%">(6,923)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="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%">Present value of future minimum lease payments</span></td><td colspan="2" style="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,147 </span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="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%">74,339 </span></td><td style="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,588)</span></td><td style="background-color:#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,000)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="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="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="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,559 </span></td><td style="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="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td style="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="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%">48,339 </span></td><td style="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 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 Condensed Consolidated Balance Sheet as of March 31, 2023 (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:42.321%"/><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.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.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><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:400;line-height:100%"> </span></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 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:8pt;font-weight:400;line-height:100%"> </span></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%"> </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%">Related 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 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%">Remainder of 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,354 </span></td><td style="background-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,068 </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%">21,268 </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%">22,336 </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="padding:2px 1pt;text-align: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="padding:2px 0 2px 1pt;text-align: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,668 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,175 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,565 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,740 </span></td><td style="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,299 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,017 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,742 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,759 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">2026</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align: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 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,616 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,616 </span></td><td style="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%">997 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Thereafter</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align: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 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,559 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,559 </span></td><td style="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 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%">10,303 </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,260 </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%">78,002 </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%">81,262 </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="padding:2px 1pt;text-align: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="padding:2px 0 2px 1pt;text-align: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 style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="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,154)</span></td><td style="background-color:#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%">(6,923)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="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%">Present value of future minimum lease payments</span></td><td colspan="2" style="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,147 </span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="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%">74,339 </span></td><td style="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,588)</span></td><td style="background-color:#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,000)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="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="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="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,559 </span></td><td style="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="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td style="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="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%">48,339 </span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div> 2354000 1068000 21268000 22336000 2668000 1175000 21565000 22740000 2299000 1017000 14742000 15759000 1968000 0 9616000 9616000 997000 0 5252000 5252000 17000 0 5559000 5559000 10303000 3260000 78002000 81262000 2000 0 1154000 6923000 9147000 74339000 2588000 26000000 6559000 48339000 FAIR VALUE MEASUREMENTS<div style="margin-top:9pt"><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:9pt"><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 March 31, 2023 and December 31, 2022 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’s estimated fair value. Undiscounted cash flows, a Level 3 input, are utilized in determining estimated fair values. During each of the three months ended March 31, 2023 and 2022, 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:9pt"><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 March 31, 2023 and December 31, 2022 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 March 31, 2023 and December 31, 2022, 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 March 31, 2023 and December 31, 2022. 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, calculated based on a weighted average of various future forecast scenarios, to their net present value. </span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"> Fair value in the Condensed 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:28.285%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.087%"/><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:7.087%"/><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:7.087%"/><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:7.087%"/><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:7.087%"/><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:7.087%"/><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:7.087%"/><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:7.096%"/><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:8pt;font-weight:400;line-height:100%"> </span></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 March 31, 2023</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, 2022</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:8pt;font-weight:400;line-height:100%"> </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%">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 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 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 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 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 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 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="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%">Cash equivalents</span></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align: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,910 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align: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,910 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align: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 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align: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 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">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%">30,020 </span></td><td style="background-color:#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%">—</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%">30,020 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#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%">—</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%">38,671 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="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%">Total financial assets</span></td><td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><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-top:1pt solid #000000;padding:2px 0;text-align: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,930 </span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><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-top:1pt solid #000000;padding:2px 0;text-align: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,910 </span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><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-top:1pt solid #000000;padding:2px 0;text-align: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,020 </span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><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-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><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-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><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-top:1pt solid #000000;padding:2px 0;text-align: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 </span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><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-top:1pt solid #000000;padding:2px 0;text-align: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 </span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><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-top:1pt solid #000000;padding:2px 0;text-align: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 </span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><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-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><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-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="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%">Contingent consideration</span></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">968 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">968 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align: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 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align: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 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">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%">1,014 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,014 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="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%">Total financial liabilities</span></td><td style="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="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,982 </span></td><td style="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="padding:0 1pt"/><td style="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="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%">— </span></td><td style="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="padding:0 1pt"/><td style="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="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,014 </span></td><td style="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="padding:0 1pt"/><td style="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="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%">968 </span></td><td style="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="padding:0 1pt"/><td style="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="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,858 </span></td><td style="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="padding:0 1pt"/><td style="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="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%">— </span></td><td style="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="padding:0 1pt"/><td style="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="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%">— </span></td><td style="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="padding:0 1pt"/><td style="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="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,858 </span></td><td style="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%">See Note 5, Cash and Cash Equivalents, for more information on cash equivalents included in the table above. Also see Note 11, 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:57.456%"><tr><td style="width:1.0%"/><td style="width:83.632%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.168%"/><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%">Contingent consideration liability - January 1, 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%">1,858 </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"/></tr><tr><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%">Accretion in value</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">110 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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;text-align: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:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,000)</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%">Contingent consideration liability - March 31, 2023</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%">968 </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 accretion in value of contingent consideration liabilities is included within administrative expenses on the Condensed 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 value and associated fair value of financial assets and liabilities that are not recorded at fair value in the Condensed Consolidated Balance Sheets and not described above include our Senior Notes. To estimate the 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"><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.151%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.788%"/><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.788%"/><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.788%"/><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.795%"/><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%"> </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:10pt;font-weight:400;line-height:100%">As of March 31, 2023</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, 2022</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%"> </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%">Carrying 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 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 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 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:bottom"><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 </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%">278,709 </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 </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 </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="margin-top:9pt;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%">(1)</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">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%">See Note 5, Cash and Cash Equivalents, for more information on investments included in the table above. Also see Note 7, Long-Term Debt, for more information on our Senior Notes.</span></div> Fair value in the Condensed Consolidated Balance Sheets and not described above were as follows (in thousands):<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.285%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.087%"/><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:7.087%"/><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:7.087%"/><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:7.087%"/><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:7.087%"/><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:7.087%"/><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:7.087%"/><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:7.096%"/><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:8pt;font-weight:400;line-height:100%"> </span></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 March 31, 2023</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, 2022</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:8pt;font-weight:400;line-height:100%"> </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%">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 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 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 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 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 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 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="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%">Cash equivalents</span></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align: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,910 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align: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,910 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align: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 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align: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 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">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%">30,020 </span></td><td style="background-color:#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%">—</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%">30,020 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#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%">—</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%">38,671 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="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%">Total financial assets</span></td><td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><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-top:1pt solid #000000;padding:2px 0;text-align: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,930 </span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><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-top:1pt solid #000000;padding:2px 0;text-align: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,910 </span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><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-top:1pt solid #000000;padding:2px 0;text-align: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,020 </span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><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-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><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-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><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-top:1pt solid #000000;padding:2px 0;text-align: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 </span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><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-top:1pt solid #000000;padding:2px 0;text-align: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 </span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><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-top:1pt solid #000000;padding:2px 0;text-align: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 </span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><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-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><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-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="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%">Contingent consideration</span></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">968 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">968 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align: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 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align: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 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">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%">1,014 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,014 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="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%">Total financial liabilities</span></td><td style="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="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,982 </span></td><td style="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="padding:0 1pt"/><td style="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="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%">— </span></td><td style="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="padding:0 1pt"/><td style="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="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,014 </span></td><td style="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="padding:0 1pt"/><td style="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="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%">968 </span></td><td style="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="padding:0 1pt"/><td style="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="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,858 </span></td><td style="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="padding:0 1pt"/><td style="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="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%">— </span></td><td style="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="padding:0 1pt"/><td style="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="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%">— </span></td><td style="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="padding:0 1pt"/><td style="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="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,858 </span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table> 197910000 197910000 0 0 191881000 191881000 0 0 30020000 0 30020000 0 38671000 0 38671000 0 227930000 197910000 30020000 0 230552000 191881000 38671000 0 968000 0 0 968000 1858000 0 0 1858000 1014000 0 1014000 0 0 0 0 0 1982000 0 1014000 968000 1858000 0 0 1858000 <div 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:57.456%"><tr><td style="width:1.0%"/><td style="width:83.632%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.168%"/><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%">Contingent consideration liability - January 1, 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%">1,858 </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"/></tr><tr><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%">Accretion in value</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">110 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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;text-align: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:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,000)</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%">Contingent consideration liability - March 31, 2023</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%">968 </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> 1858000 110000 1000000 968000 The Senior Notes represent a Level 2 fair value measurement and are as follows (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:41.151%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.788%"/><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.788%"/><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.788%"/><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.795%"/><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%"> </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:10pt;font-weight:400;line-height:100%">As of March 31, 2023</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, 2022</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%"> </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%">Carrying 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 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 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 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:bottom"><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 </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%">278,709 </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 </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 </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="margin-top:9pt;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%">(1)</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">Excludes the impact of unamortized debt issuance costs.</span></div> 300000000 278709000 300000000 270993000 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%">Our segment structure includes three operating segments consisting of Installation, Distribution and Manufacturing. 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 and therefore 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 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. 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%">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.</span></div><div 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 Chief Executive Officer, who is also our Chief Operating Decision Maker ("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 represent our segment information for the three months ended March 31, 2023 and 2022 (in thousands):</span></div><div style="margin-top:5pt;padding-left:4.5pt;padding-right:4.5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:96.345%"><tr><td style="width:1.0%"/><td style="width:48.520%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.039%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.406%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.039%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.406%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.039%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.406%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.045%"/><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 colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="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%">Three months ended March 31, 2023</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="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="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><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td 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%">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%">622,742 </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%">38,722 </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,155)</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%">659,309 </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"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'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%">410,384 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,459 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,766)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,077 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 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%">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%">212,358 </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%">10,263 </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%">(389)</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%">222,232 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td 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%">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%">34.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%">26.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 colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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.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%">33.7 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</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="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="margin-top:5pt;padding-left:4.5pt;padding-right:4.5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:96.052%"><tr><td style="width:1.0%"/><td style="width:48.671%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.076%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.076%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.924%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.929%"/><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%">Three months ended March 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%">561,631 </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,650 </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%">(789)</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%">587,492 </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%">385,692 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,373 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(609)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">404,456 </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%">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%">175,939 </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,277 </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%">(180)</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%">183,036 </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%">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%">31.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 colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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.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 colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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.8 </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%">31.2 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div style="margin-top:5pt;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 three months ended March 31, 2023 and 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 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 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:69.514%"/><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.083%"/><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%">Three months ended March 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2023</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%">2022</span></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%">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%">222,232 </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%">183,036 </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:18pt"><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%">11,810 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,633 </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%">210,422 </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%">172,403 </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%">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%">133,546 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,433 </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 #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%">76,876 </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%">56,970 </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%">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%">9,517 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,745 </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%">Income before income taxes</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%">67,359 </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%">46,225 </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)Depreciation and amortization is excluded from segment gross profit for the three months ended March 31, 2023 and 2022. 3 1 1 2 The following tables represent our segment information for the three months ended March 31, 2023 and 2022 (in thousands):<div style="margin-top:5pt;padding-left:4.5pt;padding-right:4.5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:96.345%"><tr><td style="width:1.0%"/><td style="width:48.520%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.039%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.406%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.039%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.406%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.039%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.406%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.045%"/><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 colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="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%">Three months ended March 31, 2023</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="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="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><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td 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%">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%">622,742 </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%">38,722 </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,155)</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%">659,309 </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"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'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%">410,384 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,459 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,766)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,077 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 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%">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%">212,358 </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%">10,263 </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%">(389)</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%">222,232 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td 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%">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%">34.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%">26.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 colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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.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%">33.7 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</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="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="margin-top:5pt;padding-left:4.5pt;padding-right:4.5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:96.052%"><tr><td style="width:1.0%"/><td style="width:48.671%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.076%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.076%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.924%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.929%"/><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%">Three months ended March 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%">561,631 </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,650 </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%">(789)</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%">587,492 </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%">385,692 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,373 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(609)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">404,456 </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%">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%">175,939 </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,277 </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%">(180)</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%">183,036 </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%">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%">31.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 colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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.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 colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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.8 </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%">31.2 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div style="margin-top:5pt;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 three months ended March 31, 2023 and 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 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 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:69.514%"/><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.083%"/><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%">Three months ended March 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2023</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%">2022</span></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%">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%">222,232 </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%">183,036 </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:18pt"><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%">11,810 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,633 </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%">210,422 </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%">172,403 </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%">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%">133,546 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,433 </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 #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%">76,876 </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%">56,970 </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%">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%">9,517 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,745 </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%">Income before income taxes</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%">67,359 </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%">46,225 </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)Depreciation and amortization is excluded from segment gross profit for the three months ended March 31, 2023 and 2022. 622742000 38722000 -2155000 659309000 410384000 28459000 -1766000 437077000 212358000 10263000 -389000 222232000 0.341 0.265 0.181 0.337 561631000 26650000 -789000 587492000 385692000 19373000 -609000 404456000 175939000 7277000 -180000 183036000 0.313 0.273 0.228 0.312 222232000 183036000 11810000 10633000 210422000 172403000 133546000 115433000 76876000 56970000 9517000 10745000 67359000 46225000 DERIVATIVES AND HEDGING ACTIVITIES<div style="margin-top:9pt"><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 three months ended March 31, 2023, 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 March 31, 2023, 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 March 31, 2023 and December 31, 2022, we had the following interest rate swap derivatives outstanding:</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="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:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(in millions)</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: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"/></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%">July 30, 2021</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%">200.0 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 </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 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </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, 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 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 </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, 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%">300.0 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </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><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%">100.0 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 </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></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 March 31, 2023, our two forward interest rate swaps, combined with our three active 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 long-term liabilities on the Consolidated Balance Sheets at their fair value amounts as described in Note 9, 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 July 2022, we amended the maturity date of each of our three active interest rate swaps to December 31, 2025 with the other terms remaining unchanged. The remaining 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 three months ended March 31, 2023, we amortized $1.7 million of the remaining unrealized gains 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 amended swaps included off-market terms at inception. This other-than-insignificant financing element will be amortized as an increase to interest expense, net through the December 31, 2025 maturity date of the amended swaps. For the three months ended March 31, 2023, we amortized $1.8 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 Condensed 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%">In August 2020, we terminated two then-existing interest rate swaps and one then-existing forward interest rate swap. During the three months ended March 31, 2023 and 2022 we amortized $1.0 million and $0.8 million, respectively, of the remaining unrealized loss 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 income, net of tax on the Condensed Consolidated Statements of Operations and Comprehensive Income and in accumulated other comprehensive income on the Condensed 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 three months ended March 31, 2023 and 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%">Amounts reported in accumulated other comprehensive income 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 $10.4 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:id3VybDovL2RvY3MudjEvZG9jOjYyYzZmY2NjYTdhODQ1ZGY4MmJjYjQ2ODNiZmJjYmVhL3NlYzo2MmM2ZmNjY2E3YTg0NWRmODJiY2I0NjgzYmZiY2JlYV82Ny9mcmFnOmY5MmYxYmFkZWM1NTRkY2Q5MWIxZDNhYmM5OGRkMjIxL3RleHRyZWdpb246ZjkyZjFiYWRlYzU1NGRjZDkxYjFkM2FiYzk4ZGQyMjFfNTMwNA_28f13b74-5377-4d4a-b2ac-007135a54b73"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjYyYzZmY2NjYTdhODQ1ZGY4MmJjYjQ2ODNiZmJjYmVhL3NlYzo2MmM2ZmNjY2E3YTg0NWRmODJiY2I0NjgzYmZiY2JlYV82Ny9mcmFnOmY5MmYxYmFkZWM1NTRkY2Q5MWIxZDNhYmM5OGRkMjIxL3RleHRyZWdpb246ZjkyZjFiYWRlYzU1NGRjZDkxYjFkM2FiYzk4ZGQyMjFfNTMwNA_2dc49497-bd06-4e59-b423-9ad95b5d936c"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjYyYzZmY2NjYTdhODQ1ZGY4MmJjYjQ2ODNiZmJjYmVhL3NlYzo2MmM2ZmNjY2E3YTg0NWRmODJiY2I0NjgzYmZiY2JlYV82Ny9mcmFnOmY5MmYxYmFkZWM1NTRkY2Q5MWIxZDNhYmM5OGRkMjIxL3RleHRyZWdpb246ZjkyZjFiYWRlYzU1NGRjZDkxYjFkM2FiYzk4ZGQyMjFfNTMwNA_73da3847-7fec-4e4b-a90c-3491a9229a9c"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjYyYzZmY2NjYTdhODQ1ZGY4MmJjYjQ2ODNiZmJjYmVhL3NlYzo2MmM2ZmNjY2E3YTg0NWRmODJiY2I0NjgzYmZiY2JlYV82Ny9mcmFnOmY5MmYxYmFkZWM1NTRkY2Q5MWIxZDNhYmM5OGRkMjIxL3RleHRyZWdpb246ZjkyZjFiYWRlYzU1NGRjZDkxYjFkM2FiYzk4ZGQyMjFfNTMwNA_cd2d2539-6d40-48c4-ae48-322dec27e7fd">interest expense</span></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:72.876%"/><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.621%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Three months ended March 31,</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2023</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%">2022</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(Benefit) expense associated with swap net settlements</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%">(3,593)</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%">795 </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"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">790 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></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 was 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 Financial Accounting Standards Board (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. 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. See Note 19, Subsequent Events, for information on a change regarding the reference rate for our 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%">As of March 31, 2023 and December 31, 2022, we had the following interest rate swap derivatives outstanding:</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="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:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(in millions)</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: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"/></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%">July 30, 2021</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%">200.0 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 </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 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </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, 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 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 </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, 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%">300.0 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </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><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%">100.0 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 </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></table></div> 200000000.0 0.0051 100000000.0 0.0137 100000000.0 0.0137 300000000.0 0.0309 100000000.0 0.0298 3 400000000 3 1700000 1800000 2 1000000 800000 10400000 <div 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:id3VybDovL2RvY3MudjEvZG9jOjYyYzZmY2NjYTdhODQ1ZGY4MmJjYjQ2ODNiZmJjYmVhL3NlYzo2MmM2ZmNjY2E3YTg0NWRmODJiY2I0NjgzYmZiY2JlYV82Ny9mcmFnOmY5MmYxYmFkZWM1NTRkY2Q5MWIxZDNhYmM5OGRkMjIxL3RleHRyZWdpb246ZjkyZjFiYWRlYzU1NGRjZDkxYjFkM2FiYzk4ZGQyMjFfNTMwNA_28f13b74-5377-4d4a-b2ac-007135a54b73"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjYyYzZmY2NjYTdhODQ1ZGY4MmJjYjQ2ODNiZmJjYmVhL3NlYzo2MmM2ZmNjY2E3YTg0NWRmODJiY2I0NjgzYmZiY2JlYV82Ny9mcmFnOmY5MmYxYmFkZWM1NTRkY2Q5MWIxZDNhYmM5OGRkMjIxL3RleHRyZWdpb246ZjkyZjFiYWRlYzU1NGRjZDkxYjFkM2FiYzk4ZGQyMjFfNTMwNA_2dc49497-bd06-4e59-b423-9ad95b5d936c"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjYyYzZmY2NjYTdhODQ1ZGY4MmJjYjQ2ODNiZmJjYmVhL3NlYzo2MmM2ZmNjY2E3YTg0NWRmODJiY2I0NjgzYmZiY2JlYV82Ny9mcmFnOmY5MmYxYmFkZWM1NTRkY2Q5MWIxZDNhYmM5OGRkMjIxL3RleHRyZWdpb246ZjkyZjFiYWRlYzU1NGRjZDkxYjFkM2FiYzk4ZGQyMjFfNTMwNA_73da3847-7fec-4e4b-a90c-3491a9229a9c"><span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjYyYzZmY2NjYTdhODQ1ZGY4MmJjYjQ2ODNiZmJjYmVhL3NlYzo2MmM2ZmNjY2E3YTg0NWRmODJiY2I0NjgzYmZiY2JlYV82Ny9mcmFnOmY5MmYxYmFkZWM1NTRkY2Q5MWIxZDNhYmM5OGRkMjIxL3RleHRyZWdpb246ZjkyZjFiYWRlYzU1NGRjZDkxYjFkM2FiYzk4ZGQyMjFfNTMwNA_cd2d2539-6d40-48c4-ae48-322dec27e7fd">interest expense</span></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:72.876%"/><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.621%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Three months ended March 31,</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2023</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%">2022</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(Benefit) expense associated with swap net settlements</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%">(3,593)</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%">795 </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"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">790 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div> -3593000 795000 1104000 790000 STOCKHOLDERS’ EQUITY<div style="margin-top:9pt"><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</span></div><div 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 related to our interest rate derivatives, net of taxes, 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:71.853%"/><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.823%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.621%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="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%">Three months ended March 31,</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="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%">2023</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%">2022</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accumulated gain (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%">40,560 </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%">(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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unrealized (losses) gains in fair value</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%">(7,126)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,527 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Reclassifications 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%">817 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">584 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accumulated gain 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%">34,251 </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%">17,884 </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="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"><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:9pt"><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%">During the three months ended March 31, 2023 we did not repurchase any common stock. During the three months ended March 31, 2022 we repurchased approximately 511 thousand shares of our common stock with an aggregate price of approximately $49.9 million, or $97.57 average price per share. 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%">On February 22, 2023, we announced that 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. The new program replaces the previous program and is in effect through March 1, 2024. </span></div><div style="margin-top:9pt"><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 three months ended March 31, 2023, we declared and paid the following cash dividends (amount declared and amount paid 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:15.128%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.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:14.689%"/><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.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.543%"/><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.550%"/><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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td 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:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2/22/2023</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%">3/15/2023</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%">3/31/2023</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 </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%">25,537 </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%">25,270 </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:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2/22/2023</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%">3/15/2023</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%">3/31/2023</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.33 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,364 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,266 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></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 three months ended March 31, 2022, we declared and paid the following cash dividends (amount declared and amount paid in thousands):</span></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:100.000%"><tr><td style="width:1.0%"/><td style="width:15.128%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.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:14.689%"/><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.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.543%"/><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.550%"/><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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td 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%">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 </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 </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 </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 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div>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. 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. <div 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 related to our interest rate derivatives, net of taxes, 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:71.853%"/><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.823%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.621%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="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%">Three months ended March 31,</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="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%">2023</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%">2022</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accumulated gain (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%">40,560 </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%">(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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unrealized (losses) gains in fair value</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%">(7,126)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,527 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Reclassifications 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%">817 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">584 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accumulated gain 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%">34,251 </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%">17,884 </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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div> 40560000 -227000 -7126000 17527000 817000 584000 34251000 17884000 511000 49900000 97570 200000000 <div 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 three months ended March 31, 2023, we declared and paid the following cash dividends (amount declared and amount paid 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:15.128%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.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:14.689%"/><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.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.543%"/><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.550%"/><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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td 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:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2/22/2023</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%">3/15/2023</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%">3/31/2023</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 </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%">25,537 </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%">25,270 </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:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2/22/2023</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%">3/15/2023</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%">3/31/2023</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.33 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,364 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,266 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></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 three months ended March 31, 2022, we declared and paid the following cash dividends (amount declared and amount paid in thousands):</span></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:100.000%"><tr><td style="width:1.0%"/><td style="width:15.128%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.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:14.689%"/><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.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.543%"/><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.550%"/><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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td 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%">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 </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 </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 </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 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div> 0.90 25537000 25270000 0.33 9364000 9266000 0.90 26585000 26242000 0.315 9305000 9184000 EMPLOYEE BENEFITS<div style="margin-top:9pt"><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 $7.4 million and $8.9 million for the three months ended March 31, 2023 and 2022, respectively. An accrual for estimated healthcare claims incurred but not reported (“IBNR”) is included within accrued compensation on the Condensed Consolidated Balance Sheets and was $4.3 million and $3.8 million as of March 31, 2023 and December 31, 2022, 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%;text-decoration:underline">Workers’ 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%">Workers’ compensation expense totaled $5.8 million and $5.7 million for the three months ended March 31, 2023 and 2022, respectively. Workers’ compensation known claims and IBNR reserves included on the Condensed 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:73.538%"><tr><td style="width:1.0%"/><td style="width:50.589%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:22.558%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.794%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:22.559%"/><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%"> </span></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%">March 31, 2023</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%">December 31, 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%">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%">8,782 </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%">9,946 </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="padding:2px 1pt;text-align: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="padding:2px 0 2px 1pt;text-align: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,550 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,730 </span></td><td style="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,332 </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%">23,676 </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%">We also had an insurance receivable for claims that exceeded the stop loss limit under our self-insured policies as well as claims under our fully insured policies included on the Condensed 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="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:73.830%"><tr><td style="width:1.0%"/><td style="width:50.385%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:22.662%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.790%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:22.663%"/><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%"> </span></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%">March 31, 2023</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%">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%">Included in other non-current 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%">2,743 </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,318 </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="margin-top:9pt"><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 </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">plans cover substantially all our eligible employees. We recognized 401(k) plan expenses of $0.9 million and $0.8 million during the three months ended March 31, 2023 and 2022, respectively. These expenses are included in administrative expenses on the accompanying Condensed 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%;text-decoration:underline">Multiemployer Pension 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 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%;text-decoration:underline">Share-Based Compensation</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%">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 to non-employee members of our board of directors and our employees. During the three months ended March 31, 2023 and 2022, we did not grant any such shares under our 2014 Omnibus Incentive Plan to non-employee members of our board of directors or employees. </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%">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%">During the three months ended March 31, 2023, we issued approximately 61 thousand shares of our common stock to certain officers, which vest in two equal installments on each of April 20, 2024 and April 20, 2025. In addition, during the three months ended March 31, 2023, we established, and our board of directors approved, performance-based targets in connection with common stock awards to be issued to certain officers in 2024 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 Condensed Consolidated Balance Sheets. During the three months ended March 31, 2023 and 2022, we granted approximately 8 thousand and 39 thousand shares of our common stock, respectively. The shares granted in 2023 will vest in 2025, and the shares granted in 2022 vested in the second quarter of 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%">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 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. </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%">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"><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:36.765%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.549%"/><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.702%"/><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%"> </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: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 1pt;text-align: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 1pt;text-align: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="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </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%">Awards</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 Grant Date Fair Value Per Share</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%">Awards</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 Grant Date Fair Value Per Share</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%">Units</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 Grant Date Fair Value Per Share</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%">Nonvested awards/units at December 31, 2022</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%">157,117 </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%">77.31 </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%">126,053 </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%">103.37 </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%">15,711 </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%">80.55 </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 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%">Granted</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,690 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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.76 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,281 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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.09 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 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%">Vested</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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.14 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 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%">Forfeited/Cancelled</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(398)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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.72 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(289)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 </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%">Nonvested awards/units at March 31, 2023</span></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">163,840 </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%">78.79 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">195,334 </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%">105.40 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,422 </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%">80.55 </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 following table summarizes the share-based compensation expense recognized under our 2014 Omnibus Incentive Plan (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:80.263%"><tr><td style="width:1.0%"/><td style="width:68.481%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.654%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.710%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.655%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </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:10pt;font-weight:400;line-height:100%">Three months ended March 31,</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </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%">2023</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%">2022</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><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 #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times 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,393 </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%">1,531 </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"/><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%">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%">148 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><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%">1,563 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,315 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><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%">26 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><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%">306 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding: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,436 </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%">3,418 </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="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"><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:80.263%"><tr><td style="width:1.0%"/><td style="width:68.481%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.654%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.710%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.655%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </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:10pt;font-weight:400;line-height:100%">Three months ended March 31,</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </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%">2023</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%">2022</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align: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%">165 </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%">149 </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"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Selling</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">136 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">62 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align: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:#cceeff;padding:2px 0 2px 1pt;text-align: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,135 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,207 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td style="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="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,436 </span></td><td style="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="padding:0 1pt"/><td style="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="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,418 </span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div 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. </span></div><div 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 style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:57.233%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.344%"/><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:20.393%"/><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%"> </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:10pt;font-weight:400;line-height:100%">As of March 31, 2023</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%"> </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%">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:top"><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%">5,561 </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:top"><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%">11,112 </span></td><td style="background-color:#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%">2.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%">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%">41 </span></td><td style="background-color:#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.1</span></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%">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%">16,714 </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 three months ended March 31, 2023, our employees surrendered approximately 200 shares of our common stock 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 March 31, 2023, approximately 1.6 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> 7400000 8900000 4300000 3800000 5800000 5700000 Workers’ compensation known claims and IBNR reserves included on the Condensed Consolidated Balance Sheets were as follows (in thousands):<table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:73.538%"><tr><td style="width:1.0%"/><td style="width:50.589%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:22.558%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.794%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:22.559%"/><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%"> </span></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%">March 31, 2023</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%">December 31, 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%">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%">8,782 </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%">9,946 </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="padding:2px 1pt;text-align: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="padding:2px 0 2px 1pt;text-align: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,550 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,730 </span></td><td style="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,332 </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%">23,676 </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> 8782000 9946000 16550000 13730000 25332000 23676000 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:73.830%"><tr><td style="width:1.0%"/><td style="width:50.385%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:22.662%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.790%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:22.663%"/><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%"> </span></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%">March 31, 2023</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%">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%">Included in other non-current 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%">2,743 </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,318 </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> 2743000 2318000 900000 800000 61000 2 8000 <div 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"><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:36.765%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.549%"/><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.702%"/><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%"> </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: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 1pt;text-align: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 1pt;text-align: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="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </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%">Awards</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 Grant Date Fair Value Per Share</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%">Awards</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 Grant Date Fair Value Per Share</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%">Units</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 Grant Date Fair Value Per Share</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%">Nonvested awards/units at December 31, 2022</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%">157,117 </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%">77.31 </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%">126,053 </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%">103.37 </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%">15,711 </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%">80.55 </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 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%">Granted</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,690 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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.76 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,281 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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.09 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 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%">Vested</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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.14 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 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%">Forfeited/Cancelled</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(398)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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.72 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(289)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 </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%">Nonvested awards/units at March 31, 2023</span></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">163,840 </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%">78.79 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">195,334 </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%">105.40 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,422 </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%">80.55 </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> 157117 77.31 126053 103.37 15711 80.55 7690 109.76 69281 109.09 0 0 569 82.14 0 0 0 0 398 86.72 0 0 289 80.55 163840 78.79 195334 105.40 15422 80.55 <div 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 style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:80.263%"><tr><td style="width:1.0%"/><td style="width:68.481%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.654%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.710%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.655%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </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:10pt;font-weight:400;line-height:100%">Three months ended March 31,</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </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%">2023</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%">2022</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><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 #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times 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,393 </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%">1,531 </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"/><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%">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%">148 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><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%">1,563 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,315 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><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%">26 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><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%">306 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding: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,436 </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%">3,418 </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="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"><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:80.263%"><tr><td style="width:1.0%"/><td style="width:68.481%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.654%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.710%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.655%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </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:10pt;font-weight:400;line-height:100%">Three months ended March 31,</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </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%">2023</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%">2022</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align: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%">165 </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%">149 </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"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Selling</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">136 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">62 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align: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:#cceeff;padding:2px 0 2px 1pt;text-align: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,135 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,207 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td style="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="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,436 </span></td><td style="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="padding:0 1pt"/><td style="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="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,418 </span></td><td style="border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div> 1393000 1531000 148000 124000 1563000 1315000 26000 206000 306000 242000 3436000 3418000 165000 149000 136000 62000 3135000 3207000 3436000 3418000 <div 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 style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:57.233%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.344%"/><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:20.393%"/><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%"> </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:10pt;font-weight:400;line-height:100%">As of March 31, 2023</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%"> </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%">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:top"><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%">5,561 </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:top"><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%">11,112 </span></td><td style="background-color:#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%">2.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%">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%">41 </span></td><td style="background-color:#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.1</span></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%">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%">16,714 </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> 5561000 P1Y8M12D 11112000 P2Y1M6D 41000 P0Y1M6D 16714000 200 1600000 3000000 INCOME TAXESOur provision for income taxes as a percentage of pretax earnings is based on a current estimate of the annual effective income tax rate adjusted to reflect the impact of discrete items.During both the three months ended March 31, 2023 and 2022, our effective tax rate was 26.8%. The rates for each of the three months ended March 31, 2023 and 2022 were unfavorably impacted by certain expenses not being deductible for income tax reporting purposes 0.268 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 affiliated 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 8, 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;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:45.175%"><tr><td style="width:1.0%"/><td style="width:41.294%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:27.055%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.094%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:27.057%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </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:10pt;font-weight:400;line-height:100%">Three months ended March 31,</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </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%">2023</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%">2022</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><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%">4,015 </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%">560 </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"/><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%">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%">666 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">407 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><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%">352 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">314 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></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 had a related party balance of approximately $2.3 million and $3.3 million included in accounts receivable on our Condensed Consolidated Balance Sheets as of March 31, 2023 and December 31, 2022, respectively. 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, Chief Executive Officer and President rejoined our board of directors in July of 2022, accounted for $1.5 million and $2.5 million of the related party accounts receivable balance as of March 31, 2023 and December 31, 2022, </span></div>respectively. Additionally, M/I Homes, Inc. accounted for a significant portion of our related party sales during the three months ended March 31, 2023. <div 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;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:45.175%"><tr><td style="width:1.0%"/><td style="width:41.294%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:27.055%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.094%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:27.057%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </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:10pt;font-weight:400;line-height:100%">Three months ended March 31,</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </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%">2023</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%">2022</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><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%">4,015 </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%">560 </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"/><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%">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%">666 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">407 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><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%">352 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">314 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div> 4015000 560000 666000 407000 352000 314000 2300000 3300000 1500000 2500000 COMMITMENTS AND CONTINGENCIES<div style="margin-top:9pt"><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 Insurance</span></div><div 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 Condensed Consolidated Balance Sheets were as follows (in thousands):</span><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:64.689%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.712%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.715%"/><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%"> </span></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%">March 31, 2023</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%">December 31, 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%">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,162 </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%">7,479 </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="padding:2px 1pt;text-align: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="padding:2px 0 2px 1pt;text-align: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,621 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,528 </span></td><td style="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%">23,783 </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%">25,007 </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%">We also had insurance receivables and indemnification assets included on the Condensed 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: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:64.689%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.712%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.715%"/><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%"> </span></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%">March 31, 2023</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%">December 31, 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%">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%">2,643 </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,933 </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="padding:2px 1pt;text-align: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="2" style="padding:2px 0 2px 1pt;text-align: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 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">380 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 23.5pt;text-align: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 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:bottom"><span style="color:#000000;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,718 </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,313 </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%;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 8, Leases, for further information regarding our lease commitments.</span></div><div style="margin-top:9pt"><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>During the three months ended March 31, 2023, we entered into an supply agreement with variable pricing with one of our suppliers to purchase a portion of the material we utilize in our business. This agreement is effective March 31, 2023 through March 31, 2026 with a purchase obligation of 12.0 million pounds for 2023, 14.4 million pounds for 2024 and 17.3 million pounds for 2025. <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 Condensed Consolidated Balance Sheets were as follows (in thousands):</span><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:64.689%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.712%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.715%"/><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%"> </span></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%">March 31, 2023</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%">December 31, 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%">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,162 </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%">7,479 </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="padding:2px 1pt;text-align: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="padding:2px 0 2px 1pt;text-align: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,621 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,528 </span></td><td style="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%">23,783 </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%">25,007 </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> 7162000 7479000 16621000 17528000 23783000 25007000 <div 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 Condensed 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: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:64.689%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.712%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.715%"/><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%"> </span></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%">March 31, 2023</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%">December 31, 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%">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%">2,643 </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,933 </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="padding:2px 1pt;text-align: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="2" style="padding:2px 0 2px 1pt;text-align: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 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">380 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 23.5pt;text-align: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 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:bottom"><span style="color:#000000;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,718 </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,313 </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> 2643000 4933000 75000 380000 2718000 5313000 12000000 14400000 17300000 BUSINESS COMBINATIONS<div 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 ongoing strategy to expand geographically and increase market share in certain markets, as well as diversify our products and end markets, we completed two business combinations during the three months ended March 31, 2023 and one business combination during the three months ended March 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 largest of our 2023 acquisitions was Anchor Insulation Co., Inc. (Anchor) in March 2023. Below is a summary of each significant acquisition by year, including revenue and net income since date of acquisition shown for the year of acquisition. Net income includes amortization and taxes when 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%">For the three months ended March 31, 2023 (in thousands): </span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:17.933%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.385%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.880%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.385%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.880%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.385%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.880%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.385%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.880%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.385%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.880%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.385%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.880%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.385%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.892%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><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%">Three months ended March 31, 2023</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2023 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<br/>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="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%">Revenue</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 Income </span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;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%">Anchor</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%">3/12/2023</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%">35,928 </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,000 </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%">36,928 </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,193 </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%">51 </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"/><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</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%">2/13/2023</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%">2,090 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,221 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">444 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="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 #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%">38,018 </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%">1,131 </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%">39,149 </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%">2,637 </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%">66 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div 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 three months ended March 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:99.853%"><tr><td style="width:1.0%"/><td style="width:18.080%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.385%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.734%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.385%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.880%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.385%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.880%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.385%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.880%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.385%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.880%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.385%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.880%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.385%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.891%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><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%">Three months ended March 31, 2022</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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<br/>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="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%">Revenue</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 Income </span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;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%">Other</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%">03/01/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%">8,050 </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,878 </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%">9,928 </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%">915 </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%">97 </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"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><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"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Acquisition-related costs recorded within administrative expenses on the Condensed Consolidated Statements of Operations and Comprehensive Income amounted to $0.6 million and $0.7 million for the three months ended March 31, 2023 and 2022, respectively. 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 approximately $13.0 million of goodwill for tax purposes as a result of 2023 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%;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: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:46.312%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.088%"/><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:0.1%"/><td style="width:0.359%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.088%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.359%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.088%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.359%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.247%"/><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%">Three months ended March 31, 2023</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%">Three months ended March 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%">Anchor</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="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="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></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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><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"/></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</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%">10 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><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%">— </span></td><td style="background-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%">10 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td 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 </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%">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,661 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,661 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">772 </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%">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,527 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,591 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">684 </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 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%">1,732 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,732 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </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%">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,428 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,809 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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><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%">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%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 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%">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%">16,420 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,120 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,540 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,634 </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%">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%">12,870 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,540 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,743 </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 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%">184 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 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%">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%">(1,904)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,950)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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)</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"/><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"/></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:#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%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 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%">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%">36,928 </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"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><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%">2,221 </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,149 </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%">9,928 </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: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%">1,000 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,131 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,878 </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%">Cash paid</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%">35,928 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><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%">2,090 </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%">38,018 </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%">8,050 </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="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, non-compete agreements and/or amounts based on working capital calculations are included as “seller obligations” in the above table or within “fair value of assets acquired” if subsequently paid during the period presented. Contingent consideration payments consist primarily of earnouts based on performance that are recorded at fair value at the time of acquisition. When these payments are expected to be made over one year from the acquisition date, the contingent </span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 and customary post-closing reviews are concluded during the measurement period attributable to each individual business combination. As a result, 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. Any acquisition acquired after March 31, 2022 is deemed to be within the measurement period and its purchase price considered preliminary. Goodwill and intangibles per the above table may not agree to the total gross increases of these assets as shown in Note 6, Goodwill and Intangibles, during each of the three months ended March 31, 2023 and 2022 due to 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. All acquisitions during the three months ended March 31, 2023 and 2022 had their respective goodwill assigned to our Installation 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%">Estimates of acquired intangible assets related to the acquisitions are 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:30.625%"/><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.530%"/><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.530%"/><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.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.425%"/><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%"> </span></td><td colspan="21" style="border-bottom:1pt solid #000000;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%">For the three months ended March 31,</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%"> </span></td><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2023</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%">2022</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<br/>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<br/>Useful Life (yrs.)</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%">Estimated<br/>Fair Value</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 Estimated Useful Life (yrs.)</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%">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%">10,969 </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 #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times 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,125 </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%">12</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%">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%">5,466 </span></td><td style="background-color:#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%">1,136 </span></td><td style="background-color:#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%">285 </span></td><td style="background-color:#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%">374 </span></td><td style="background-color:#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: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:#ffffff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#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%">— </span></td><td style="background-color:#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%">0</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%;text-decoration:underline">Pro Forma 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 unaudited pro forma information for the combined results of the Company has been prepared as if the 2023 acquisitions had taken place on January 1, 2022 and the 2022 acquisitions had taken place on January 1, 2021. 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, 2022 and 2021, respectively, and the unaudited pro forma information does not purport to be indicative of future financial operating results (in thousands, except per share data):</span></div><div style="margin-top:9pt"><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:69.444%"><tr><td style="width:1.0%"/><td style="width:52.794%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:21.426%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.852%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:21.428%"/><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 colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </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:10pt;font-weight:400;line-height:100%">Unaudited pro forma for the three months ended March 31,</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="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </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%">2023</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%">2022</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="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td 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"><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%">667,915 </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%">623,603 </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"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td 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%">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%">49,590 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,974 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td 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"><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%">1.77 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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.19 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td 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%">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%">1.75 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.18 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td 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"><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 approximately $0.4 million and $1.9 million for the three months ended March 31, 2023 and 2022, respectively, as well as additional income tax expense of approximately $0.1 million and $0.4 million for the three months ended March 31, 2023 and 2022, respectively, that would have been recorded had the 2023 acquisitions taken place on January 1, 2022 and the 2022 acquisitions taken place on January 1, 2021.</span></div> 2 1 <div 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 three months ended March 31, 2023 (in thousands): </span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:17.933%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.385%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.880%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.385%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.880%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.385%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.880%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.385%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.880%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.385%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.880%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.385%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.880%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.385%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.892%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><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%">Three months ended March 31, 2023</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2023 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<br/>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="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%">Revenue</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 Income </span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;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%">Anchor</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%">3/12/2023</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%">35,928 </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,000 </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%">36,928 </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,193 </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%">51 </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"/><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</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%">2/13/2023</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%">2,090 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,221 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">444 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="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 #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%">38,018 </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%">1,131 </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%">39,149 </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%">2,637 </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%">66 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div 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 three months ended March 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:99.853%"><tr><td style="width:1.0%"/><td style="width:18.080%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.385%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.734%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.385%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.880%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.385%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.880%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.385%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.880%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.385%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.880%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.385%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.880%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.385%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.891%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><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%">Three months ended March 31, 2022</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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<br/>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="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%">Revenue</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 Income </span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;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%">Other</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%">03/01/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%">8,050 </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,878 </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%">9,928 </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%">915 </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%">97 </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"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div> 35928000 1000000 36928000 2193000 51000 2090000 131000 2221000 444000 15000 38018000 1131000 39149000 2637000 66000 8050000 1878000 9928000 915000 97000 -600000 -700000 13000000 <div 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: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:46.312%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.088%"/><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:0.1%"/><td style="width:0.359%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.088%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.359%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.088%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.359%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.247%"/><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%">Three months ended March 31, 2023</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%">Three months ended March 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%">Anchor</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="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="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></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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><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"/></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</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%">10 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><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%">— </span></td><td style="background-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%">10 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td 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 </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%">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,661 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,661 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">772 </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%">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,527 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,591 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">684 </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 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%">1,732 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,732 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </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%">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,428 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,809 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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><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%">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%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 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%">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%">16,420 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,120 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,540 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,634 </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%">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%">12,870 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,540 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,743 </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 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%">184 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 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%">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%">(1,904)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,950)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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)</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"/><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"/></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:#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%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#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 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%">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%">36,928 </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"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><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%">2,221 </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,149 </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%">9,928 </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: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%">1,000 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,131 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,878 </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%">Cash paid</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%">35,928 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><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%">2,090 </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%">38,018 </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%">8,050 </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> 10000 0 10000 87000 3661000 0 3661000 772000 1527000 64000 1591000 684000 1732000 0 1732000 21000 2428000 381000 2809000 1049000 0 28000 28000 0 16420000 1120000 17540000 4634000 12870000 670000 13540000 2743000 184000 13000 197000 7000 1904000 46000 1950000 69000 0 9000 9000 0 36928000 2221000 39149000 9928000 1000000 131000 1131000 1878000 35928000 2090000 38018000 8050000 <div 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 (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:30.625%"/><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.530%"/><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.530%"/><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.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.425%"/><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%"> </span></td><td colspan="21" style="border-bottom:1pt solid #000000;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%">For the three months ended March 31,</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%"> </span></td><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2023</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%">2022</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<br/>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<br/>Useful Life (yrs.)</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%">Estimated<br/>Fair Value</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 Estimated Useful Life (yrs.)</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%">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%">10,969 </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 #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times 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,125 </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%">12</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%">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%">5,466 </span></td><td style="background-color:#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%">1,136 </span></td><td style="background-color:#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%">285 </span></td><td style="background-color:#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%">374 </span></td><td style="background-color:#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: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:#ffffff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#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%">— </span></td><td style="background-color:#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%">0</span></td></tr></table></div> 10969000 P12Y 3125000 P12Y 5466000 P15Y 1136000 P15Y 285000 P5Y 374000 P5Y 820000 P1Y 0 P0Y 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, 2022 and 2021, respectively, and the unaudited pro forma information does not purport to be indicative of future financial operating results (in thousands, except per share data):<table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:69.444%"><tr><td style="width:1.0%"/><td style="width:52.794%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:21.426%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.852%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:21.428%"/><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 colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </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:10pt;font-weight:400;line-height:100%">Unaudited pro forma for the three months ended March 31,</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="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </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%">2023</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%">2022</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="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td 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"><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%">667,915 </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%">623,603 </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"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td 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%">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%">49,590 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,974 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td 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"><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%">1.77 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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.19 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td 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%">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%">1.75 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.18 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td 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> 667915000 623603000 49590000 34974000 1.77 1.19 1.75 1.18 400000 1900000 100000 400000 INCOME PER COMMON SHAREBasic 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.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 was approximately 203 thousand and 278 thousand shares for the three months ended March 31, 2023 and 2022, respectively. Approximately 4 thousand shares of potential common stock were not included in the calculation of diluted net income per common share for the three months ended March 31, 2023 because the effect would have been anti-dilutive. There were no shares that would have been considered anti-dilutive for the three months ended three months ended March 31, 2022. 203000 278000 4000 SUBSEQUENT EVENTS<div 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 announced on May 4th, 2023 that our board of directors declared a quarterly dividend, payable on June 30, 2023 to stockholders of record on June 15, 2023, at a rate of 33.0 cents per share. </span></div><div 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 April 2023, we notified the lenders on our $500.0 million, seven-year term loan facility due December 2028 (the "Term Loan") under our credit agreement (the "Term Loan Agreement") that we have elected to trigger a benchmark replacement from LIBOR to the Secured Overnight Financing Rate ("Term SOFR"). This trigger includes a credit spread adjustment of 0.11%, 0.26% and 0.43% for interest periods of one month, three months and six months, respectively, and it is subject to the same floor as currently set forth in the Term Loan Agreement. The new Term SOFR rate was effective on April 28, 2023. Also in April 2023, we transitioned our interest rate swap derivatives to Term SOFR to avoid a mismatch of rates.</span></div> 0.33 500000000 P7Y 0.0011 0.0026 0.0043 EXCEL 104 Financial_Report.xlsx IDEA: XBRL DOCUMENT begin 644 Financial_Report.xlsx M4$L#!!0 ( 'U[I%8'04UB@0 +$ 0 9&]C4')O<',O87!P+GAM M;$V./0L",1!$_\IQO;=!P4)B0-!2L+(/>QLOD&1#LD)^OCG!CVX>;QA&WPIG M*N*I#BV&5(_C(I(/ !47BK9.7:=N')=HI6-Y #OGDK7A.YNJQ<&4GPZ4A!0W_J=0U[R;UEA_6\#MI7E!+ P04 M " !]>Z16.SE6=^\ K @ $0 &1O8U!R;W!S+V-O&ULS9+; M2@,Q$(9?17*_.WO0BF&;&\4K!<&"XEU(IFWHYD RLMNW=S>V6T0?P,O,_/GF M&YA.!:Y\Q)?H T8RF*Y&V[O$55BS/5'@ $GMT\%HM^/ 9^PS3"K!'BXX2U&4-3,P3 MPW'L.[@ 9AAAM.F[@'HAYNJ?V-P!=DJ.R2RI81C*H&UL[5I;<]HX%'[OK]!X9_9M"\8V@;:T$W-I=MNTF83M M3A^%$5B-;'EDD81_OTV23;J;/ 0LZ?O.14?GZ#AY\^XN8NB&B)3R M> +]O6N[!3+ MUES@6QHO(];JM-O=5H1I;*$81V1@?5XL:$#05%%:;U\@M.4?,_@5RU2-9:,! M$U=!)KF(M/+Y;,7\VMX^9<_I.ATR@6XP&U@@?\YOI^1.6HCA5,+$P&IG/U9K MQ]'22(""R7V4!;I)]J/3%0@R#3LZG5C.=GSVQ.V?C,K:=#1M&N#C\7@XMLO2 MBW A(5M>5 TR M6'!VULS2 Y9>*?IUE!K9';O=05SP6.XYB1'^QL4$UFG2&98T1G*=D 4. #?$ MT4Q0?*]!MHK@PI+27)#6SRFU4!H(FLB!]4>"(<7K;YH] M5Z%82=J$^!!&&N*<<^9ST6S[!Z5&T?95O-RCEU@5 9<8WS2J-2S%UGB5P/&M MG#P=$Q+-E L&08:7)"82J3E^34@3_BNEVOZKR2.FJW"$2M"/F(9 M-AIRM1:!MG&IA&!:$L;1>$[2M!'\6:PUDSY@R.S-D77.UI$.$9)>-T(^8LZ+ MD!&_'H8X2IKMHG%8!/V>7L-)P>B"RV;]N'Z&U3-L+([W1]072N0/)J<_Z3(T M!Z.:60F]A%9JGZJ'-#ZH'C(*!?&Y'C[E>G@*-Y;&O%"N@GL!_]':-\*K^(+ M.7\N?<^E[[GT/:'2MSAD6R4)RU3393>* M$IY"&V[I4_5*E=?EK[DHN#Q;Y.FOH70^+,_Y/%_GM,T+,T.WF)&Y M"M-2D&_#^>G%>!KB.=D$N7V85VWGV-'1^^?!4;"C[SR6'<>(\J(A[J&&F,_# M0X=Y>U^89Y7&4#04;6RL)"Q&MV"XU_$L%.!D8"V@!X.O40+R4E5@,5O& RN0 MHGQ,C$7H<.>77%_CT9+CVZ9EM6ZO*7<9;2)2.<)IF!-GJ\K>9;'!51W/55OR ML+YJ/;053L_^6:W(GPP13A8+$DACE!>F2J+S&5.^YRM)Q%4XOT4SMA*7&+SC MYL=Q3E.X$G:V#P(RN;LYJ7IE,6>F\M\M# DL6XA9$N)-7>W5YYNTB42%(JP# 4A M%W+C[^^3:G>,U_HL@6V$5#)DU1?*0XG!/3-R0]A4)?.NVB8+A=OB5,V[&KXF M8$O#>FZ=+2?_VU[4/;07/4;SHYG@'K.' MYA,L0Z1^P7V*BH 1JV*^NJ]/^26<.[1[\8$@F_S6VZ3VW> ,?-2K6J5D*Q$_ M2P=\'Y(&8XQ;]#1?CQ1BK::QK<;:,0QY@%CS#*%F.-^'19H:,]6+K#F-"F]! MU4#E/]O4#6CV#30,9FV-J/D3@H\W/[O#;#"Q([A[8N_ 5!+ P04 M" !]>Z167R>#&=H% "L'P & 'AL+W=O8//PX//\FKK53?T[40FCS'49)>=]9:;]XY3NJO1'B]5[_+X0%FP5,QD=%?8:#7UYV+#@G$DF>1?I#;>[$#ZAL]7T9I M_I=LBV][O0[QLU3+>!<,)8C#I/CES[N*. CPZ@+8+H"]":!U =XN(*\YIRA9 MCO6>:SZZ4G)+E/D:U,Q%7C=Y--"$B4GC7"MX&T*<'DWDDU!D!ADC79*NN1+I ME:-!V+QV_)W(32'":D0\\DDF>IV2VR00P>MX!PI4EHKM2W7#4,%/7)T3CYX1 MYC+/4IX)'C[>0#@;VL)?%<\'B;V"[96P/4Q]]%[Z&?1331Y?-L)&BH=3 MM_O5AH1&M43JETC]9DA?,ZZT4-$+>1 ;J;0-#Y?2*K-5R@2-:HDW*/$&S?!F M0H4R,+V0P&!@31ZN5/:[VHZ'QK?D'):,S#7T42(5F<@LT>H%?@-K?1Q1?W]K(\:#VB(?V K: M!/F1/Y-I 'TV7(9^SHTT[".2O7[7&[K#0=^U\J+!;7E9QXN MR$?XCGQ)['G%)7N7?3('Y[TF]^!%H;DH,'E6=%2G+7IECBAJ1W#TQZVTHN.2 M\RR$KE&3Z%.8(UJY(XK[F[>T$W,'G?A1;A,K*2X'RP_H#YG-=$_PT+:DE6FB MN-5Y2UJ.5S#ROH*=P3K>P3Q5W/6]"9-#,,^3O$LE\6OY*Y\#,%F;1"XDH3&<

>.;OX2+V1D SPB,+V96?<+3N&&6.6&&&Y= M]ADCM\_^FBM]CPA]_C:WNCT\K"U?Y7Y8(_8,Z^1V M6LK YK9'6FB1:JV( T"VV^![=RXHIUG*P+2_DLHZW!S1^<@5M/6Q[PL0 IF@D+02G\+LL,KLL$9F9Q[#TA(6EBF\ M3NWM%M>IW5? X]KR51Z'-?(XM[%0*],Q/X "K"Q@/MCPQ)Y:7+ >]!06AU46 MA^$.99_(M8!$8G@M]X?PN+9XE=5AC;:(7LWC &OV[,[Y.-L;([##PNYXE=WQFMD=P%2 .$T"\4Q^%]9QYHB4Z[JT?^%>NM;E(A[4 _^A]02P,$% @ ?7ND5J;T\( "" !"4 !@ !X M;"]W;W)KAC60?3\\=C_<\I'SR+(N? MY4P(A5[F65Z>#F9*+3Z.1F4R$W->?I +D<,W4UG,N8+;XG%4+@K!)_6@>38B MGA>,YCS-!^.3^K/;8GPB*Y6EN;@M4%G-Y[QX_2PR^7PZP(/5!]_3QYG2'XS& M)PO^*.Z$^K&X+>!NM/8R2>^N9J<#CR-2&0B4=H%AS]/XEQDF?8$./Y:.AVLGZD';EZOO'^I@X=@'G@I MSF7V9SI1L]-!-$ 3,>55IK[+YZ]B&9"O_24R*^O_T?/2UAN@I"J5G"\' X)Y MFC=_^3XI3T8*\&BOHV3Y[,_- MLXGEV;_SX@.B>(B(1ZAA^+E[^(5(UL/)]O 19&&="K).!:G]45LJJJ(0N4*\ M+(4RAM.,9^;Q>L%]+!<\$:<#6%&E*)[$8/SK+SCP/IF".Y"SK5#I.E3J\CX^ MY^4,P:2A1%^(OZKTB6<0NS'JQE50N])=X6E,@QF) Q*NS;:0 MLC52YD1ZEB2R F#0,A(!*!\R@=YEHBP1SZ %\3P1")H92@HQ217*)$Q>B>04 M'6%OZ/EQ'>51//097"H$)9?,FC2N"J^V@%H2\P=1;'U%AO#4[0$Q[#\\('[<3:[!+&(,8S/(: TR4"1 8J-!*XEA.CRNXL<_6TNM6T;/ (QW4)K, 6U%O MZ #L1/V;E)/G-,N,T+"A?1$H]RXV@UU(?=^W@&N9&3O9$!J=XOEC"LV_M,[Z MTL7FPTD4!Q[N@C39419:^@9N.16[2?6F;F[Y7DMSZ6HK4S3T@R[6OADC/K/E MLR55[&;5ILDYX/7Y"H=A[ ==7C,;1C&U,!MNJ0W[>ZFQ+.4/:98J"\=A)T.^ MM,B=V4:88M.VU0/F3I(]=[-_-$]IF2!)[759E&,VQ=$2VA8B>!66*8 MIGFM,/>+(.I#\Z.H&X#)RHLL^%N&Q&Z*7.OD!7_5(MD(T,!XE$6TUW4,=BP& MS6\&25IF)&YF!)!%)6#7(>=:%-:I-.ZS^AS'_ !WFX_!S(>U:,DE::F0N*GP M9DNE[FA I,]YP,>]G!K,@C"@%AU(-O:L;F;A)GP!A1=&X"]=@ M%@-/6M"V+$G<.\ O;VE0I+_3"WR_!]5@!9M5"]*6VXB;VR[$5$"13E":P_(7 M2/$72Y'V60KV57%O\1O,(N;;%G]+9L1-9LWB;SEWUY+J\Q$+HJB[5369$=^W M9;6E+>*FK6;Y[\+8IQQ,0D995QH;#2.?V?;4I*4GXJ:GHV)/+%A=OHS*S%D/&;[[XZVC]A:MJ.>4\'>*9G\G,EL(HKRUU\B@L-/]>95 MO1I/V9S4^58A>RAOVZ&W#$K=#'I;K%9[G81/Z,C[X&'0)@5ZXEDE/B)_"-I. M_T.\4C-9I'^#L:X,#Y4S#IA06I;5\C-9J1(V@!/=E?_C(9XQ]7UN[AUNNDRV MD]12-W53MUX3,D>E)4.XR4\G1T-$Z9#%T3"(FZ#U+8F'T$LV,T:B(6PGAQX- MU[=>,&01667W_TZI04'0+H<;C2P'&73C:-NM,!#!P^Z MPLUDAV&/9]D>T59G4+?.N"] 8%3%ZZI:H60262J]CC&AP\ /ZG)I[KS07Y79 M_U%:?7UR3*+84%X60VR;LU;+4+>6@7U,-:\RKF#:&KT :QD:Z4R_WGP2Z*J1 M..^^R;)\/T370NG-Y#U_,<9CV)6#-NARL\&,>7Y@ZT*MWJ'[G'>7;^.JOIKQ M/7_S=<82LT'UQ)3%%ME+6]E#WRA[ZHIZ8Q &L6,\XS(;VL^X:*N*Z Y55+_? MA?(I1-;(]EFZ,#> ?Z%B'.K@0-ZVW^BUPHBYA=%^;R_80071H;QMA]P*(N86 M1/L<8+.^QL QB_RN%C': 6E9MCZL%23,+4B:5I;N _6@;\(/Y6T[[%8P,'J( M'?"!OVR%OO%1WBXZ]RI'U7NC'+.SQDLD,]P]D1QL_4=&_#P)5\)CF M)#0VK4!?#^54JUN] ]AUC]\ M&O\#4$L#!!0 ( 'U[I%:ZB>9 B , *@, 8 >&PO=V]R:W-H965T M&ULK9=M;YLZ&(;_BL6FJ95VREN I$N0TB33*NUTT=)NGUUP M@E7 S#;)>G[]>0R40DI(4S4?$AL_SYWK]COC'>,/(B)$HK])G(J)%DF97>JZ M""*28''!,I)"RYKQ!$NH\HTN,DYP6"0EL6X9AJLGF*::/RZ>+;D_9KF,:4J6 M'(D\23!_O"(QVTTT4WMZ\)-N(JD>Z/XXPQNR(O(N6W*HZ;5*2!.2"LI2Q,EZ MHDW-RYEIJX0BXATTNRPM8<2^R/ M.=LAKJ)!316*OBFRP0U-U3"N)(=6"GG2G_VXF2]N5HLY@M+JQ_?K^?06*E?3 M[].;V0*MOBT6MRMT=GZ)N?**,)"$-EII\P?=.>K!7@I,AR0B08K3!"^)9K_Z8/I M&E^ZS+V36,NJ75NU^]3]:0S+&:Z;L4 M2:QEVZEM.[WCLX2]CXVQ,"X,+4![TT&J!#Y<7CO!=0^=E]$"WA8 P_?! QGN)"P,=-T)2Z M+Z)%/:JI1[W4,Y8D<*J_<7J/7C.]CP2UL$WC^?PT3@ _>797ZDY[+^V6A0C>)4@ M7 5 ^YHQ^511E]7ZY<3_'U!+ P04 " !]>Z16Z3Y#L-4% #P%@ & M 'AL+W=O9R3/CF7G&'KZE MV7<64,K1>QPE[+87<+Z]&0S8*J"QQZ[3+4W@S3K-8H_#;;89L&U&/3]7BJ,! MT31K$'MATAL-\V>/V6B8[G@4)O0Q0VP7QU[V\XY&Z=MM#_<.#Y["3<#%@\%H MN/4V=$GYR_8Q@[M!9<4/8YJP,$U01M>WO3&^F1!;*.027T/ZQHZND7#E-4V_ MBYNY?]O3!"(:T147)CSXV=,)C2)A"7#\*(WVJF\*Q>/K@_7/N?/@S*O'Z"2- MOH4^#VY[3@_Y=.WM(OZ4OGVAI4.FL+=*(Y;_1V^EK-9#JQWC:5PJ X(X3(I? M[[T,Q)$"V)$KD%*!-!6,#@6]5-!S1PMDN5M3CWNC89:^H4Q(@S5QD<+YR5Z^(P>'F=/ MX^/S[-OH#:_.L,S1=P/T.7+XOQRW0.RGWT";TLI^CRHH\N4)B@ MYR#=,2_QV7# ;+X\&!5PKLKX)$.>#JZ3Q,>,#1+?.J?Z@_ UA5^/;>G=]B;)ZLTIFC)/4ZA.#CZ>_S*> ;) M_8\L6(4Q0VY,5/P-VWHK>MN#DF8TV]/>Z/??L*7](?/T3,9._#8JOPV5]=$" M&E1&]S3949F?A;*5*XM&M!]9IJMK[G"P/_:@+68ZMN&22NP$FUEA,Y78)BGC M*%TCYD54FK*%NGGT6<-P',=NH).(85-S7#DZJT)G*=']F:6,H6V6KD,N V>U MODJP9A#2 -<6PS8Q-%T.SJ[ V-GGS.+SV3LQ%VG MUFG T-;PXS7CXKR=87$H(6CLUL:&;#712,1BB9AA$=(%MJ8[K.:[>05/D-X^9%UM0\)HCN:TVH9$K)OW<$U\6$DT M^4"C:!AV.S@NL9L=5R*FZP[IX -R=AJ.FA^QFB#%6JT"+]E0!!O)E<<"M(;M+ JHOZ'L M.!90(PF%00M=5KG7%Z\NR!4Q"8(]#;JXM*X,7>LC*"8$<8:_C%(4%]L6*K8M M"'8-JZ!PX+#UR'7%)N(*YF"VI?EN-OIY+0U^FXD_6>UI6"*&'8RQ/'M(3=A$ M3=B3D[SI3O+2S/$X;A#7:E:@1 QF'KVC DE-W 0KDWSF90G0-D./D.O+P,NH M-).)DOY_-9//9>W4YWH2($K:'=UY+%P)OLDWW#"Y("8<[TL=+TS9Q^EQW9I9 MI%*XHXN3FK^)FK^G8;3C4 D?A*K+H#:[I50*=\RGI.9P8BCSZ%M^\@-8O3U, M@M CD2H$ZOP7KY,;%K;:8X"P;ZVX0)0Q%=@TGMVH;89L7Q M:G'#TVU^0OF:K].4'V[$!ZI#[M%_4$L#!!0 ( 'U[ MI%8[FX!GJ0( ,& 8 >&PO=V]R:W-H965T&ULK51= M;]HP%/TK5UDUM5+;A(2RJ8-(?*0J4OD0@>YAVH-)+B1J8C/;0+=?O^LD9+2C MU1[V$OO:]QS?8^>>]E[()Y4@:GC.,ZXZ5J+UYM:V591@SM2UV""GG960.=,4 MRK6M-A)97(#RS'8=IV7G+.66WR[6IM)OBZW.4HY3"6J;YTS^[&$F]AVK81T6 M9NDZT6;!]ML;ML80]6(SE139-4NC M9"G$DPF&<<=R3$&88:0- Z-AAWW,,D-$9?RH.*WZ2 ,\GA_8[PKMI&7)%/9% M]C6-==*Q/EL0XXIM,ST3^WNL]-P8ODADJOC"OLIU+(BV2HN\ E,%>85 M0RUI-R6<]ON3\2 8A\$ :!9.'H:#[IR"<$[#*!C/0YC2*VBO%8M6U-$DPA=E25VRO+==\HUX.1(&(% 8\Q?HFW27JMWSWH[[GO$HZ8 MO :O<0FNXWHGZNG_.]Q]IQRO?@ZOX//>X!OR2.0(H68:J56__%#H^5\.:7T/Y&]T-VL=3??8_<7G"PH M2W]A#)E0"JC!(Z826)'+0(+Q&B]!LV=8(L=5JD_=17E JSC >-?.OW+=&WJ4 MW;'(O[-:3<^ID\KB[:-^RE&N"YM1$(DMU^6O5:_63M8M&OC5>H\&PO=V]R:W-H965T M&ULO5QM?/1?FEFG->HZ^+ M?%E=#.9UO7HW'%;3.5^DU=MBQ9?B/P]%N4AK<5H^#JM5R=/9IM(B'Q+'\8>+ M-%L.+L\WWWTL+\^+=9UG2_ZQ1-5ZL4C+;^]Y7CQ?#/#@^Q>?LL=YW7PQO#Q? MI8]\PNO[U<=2G WW*+-LP9=55BQ1R1\N!E?X7>*Z385-B3\S_EP='*.F*Y^+ MXDMS=X@B7;\M0,=[&,V%0^/OZ/'F\Z+SGQ. M*SXN\G]ELWI^,0@&:,8?TG5>?RJ>?^.[#GD-WK3(J\U?]+PKZPS0=%W5Q6)7 M6;1@D2VWG^G7W4 <5,#T2 6RJT"Z5J"["E2I0$9'*KB["JX:(3A2P=M5\-0* MWI$*_JZ"KU1PCS5IM*LPVI"U'=T--5%:IY?G9?&,RJ:T0&L.-OQN:@M&LF4C MQ4E=BO]FHEY].;Z]B=C-A$5('$UN/UQ'5W?B9'(G/OY@-W<3=!N+L]OQ[[_= M?HC8I\G?$?OG_?7=O]&K^YNK^^A:E'Z-SM#])$*O?GF-?D'9$MW-BW65+F?5 M^; 6;6PB#:>[]KS?MH<<:<]=4:>YH=K87FU<+!9"V).ZF'XQU([LM:]FLZR9 M&&F./J;9#%TOT3A=9>:6,#O6)UZ+!8#/$$O+9;9\-(U!?&(,Q)I2KK/.T%JWX]6_8=_YQ6\]YB<0@B>5JWJPC3QR]^E!4U6O1UVFQX'*0 MH1#17DEDKR2RB>H>B?J>)='J9LS0*R&%:IZ67(1):Q3QZ5M$ M\1M$'()-RK#B-VORNVJ53OG%0/2BXN43'UQNNV?2RQ;,VX UZ_'3):5DA'TO M/!\^'4H#,BJ#!(LAP1(@,$D:="\-VE,:7>2PQ?0/&'2Q'[B.S-]8+T8I53C6 MRQ",7:I ,0.41SQ708NMG>W+BQ[SC)#1/J(TWNY^O-W3XWTPW&^0O*3TGIG6 M<'UG)B18! G&(,%B5UN SJCG"ST%LIP2H*B24KR]4KR7*:6+.JPA^JH#$BR" M!&.08+&G3WOLC@A5KDX)4%!)'/Y>'/X&G1X1A]@:-&(06P4A@S) M#*QD7E?5.EU..2H>T'1[XU5M+Q;-Y*]072"^6.7%-\ZKPZV&B7IKI+ZK0J#Q MX#IAH.SR(LB0#!(LA@1+@, DA81[A81@"C&I(M2(5'?]H7;]Q K-.L:94H19 M.]&7/$BP! A,(@\[K2?D6.F;K,N2+\7U_1A_)R:U';[OK 9%BT#1&"A:O$.3 M-.LIRD^@0LK:./ +\8NT8=0#/CF?[5%[DPR)QD#1XAV:?WPP$JB ,L6MD8?M M3MZDF=EGC<$_:QA>\665;IX;\*_-L7$+APU^FQ.$*LN0EE;4*28#C1F#HB50 M:#+1K2V'[;[<4:(S[3"N59^CG+&Z>HXQ82U%3P4TP&&C,&14N@T&01 MM)8@MGN"4?:4S<2M1(5F7%!>\IF16MU<.Z->$&KD@MJ#H&BL8Q]BT*@)%)I, M;VL28KM+.#Z\-RSY:EU.YYN'"2<6?E!'$!0M D5CH&@QULW/,P\[H?KT.H$* M*\NB=0:QW1H\(@NC% P6GAL&OJ=.?4CK+0)%8Z!H,=9M3].()%!1Y42@UC\D M=O]PFVXTE=.-\B;=Z U:\KJYZM?I5V,*D.Z X0!CQ;@=V^/W91P4C8&BQ:!H MRT3)#.>HY M[DA97V-[=WN3HT?%HR!PC\S*UMXC=GM/'O5326"G&0%U^$#1(E T!HH6[]#D M;8PS\HFG:#F!BBOKI;7PB-W".Z&73AH!S10$18M T1@H6KQ#D_/!PA%6+:H$ M*JPLD=;R(QWR!;LF>9L58K#BJ$M"SQNI*WO7DI&]T;V9!?7M0-$2*#29_M:W M(W;?[F0BMYER7Q.W&U(W5)\.&LH9+N6Z[49($)"1>BG7RWF8.J%V*0>UU Q1 M7M\?HRSTH M&NO6A1@T: *%)I/:VG+4;LM!)FK;0_5=):CNT?DAIK[ZNSU0@PX4+09%2Z#0 M9*6T!AVU&W0O3=BFNH6E_4Y3-^K4E&T#BI:S;>](;Q)!C3PH-)G$@U_9GDCG M>V':MAV^]Q0'-?A T1@H6DP-!I\7J.8>5$Q9'*VY1T_DY_U WC;5$^3.<*#. M:U"3#A2-@:+%U&32J;_FA0HIT]P:=-1NT/U([C8U&&T>4=T9>^#>/'>)R4!C MQJ!H"12:3'1KQ5&[%??2?%NJ.U78U>8V:,9*QD#18E"T! I-?JE/ MZ]&Y/RNM;@]=9">3L2>BRWKRW>GM3%:O/6 MW,]%71>+S>&-@7$_Q^*HOY^TKR(=__RZ,O_ 5!+ P04 " !]>Z16 MN5Z[?>;FE'$GZ%G?7 8]L=49XS"71&WSG,K'(61BWW<3GVE 1[O#^R75CMJ65$%(Y']8(E. M^\YGAR2PIMM,WXK]%51Z/AF^6&3*?LF^BFT[)-XJ+?(*C!GDC)%'LB332RF8VMC46C&L;-7XRTQ%.& M.!V,9M-P/(W&(<%=-+N>A(,%&M$"EYOQ=!&1V25:L]'7J]EU.+Z-WI/QM^5D M\9.<+*>#93C!Z%-R,J<2N$Y!LYAFI^0C>4M0IWD5]M4CO('+HO4IX0V6+^)T/Q&M[?D,^HW^'>Z^DX][]E^I'\&JR4EOC$?S=5KV3O-K.; MMK]0!8VA[V!?*Y [<()W;SIG[2]-TO\3V9-"=.M"=%]C#T*V8PGP1&'CQ1D^ MEH2<,$Z644@*D.7[.6VJ0$E[;FG-G-H%G9;YL[MC98U!7AU49NP>M4X.W59_XA#K-R]ORE*2UNMRD.9) F ,_70NB#82ZH1WSP!U!+ P04 " !]>Z16QH>A M#/<( "A* & 'AL+W=OEUQMF@+%?D$>UXX*5A6CJ9G[;N[:GHF-DV>E?RN0O6F*%CU\H7G MXNE\Y(]>7_S,'E>-?#&9GJW9(Y_QYF%]5\'39%?+(BMX66>B1!5?GH\N_,^7 M@2<+M!;_ROA3O?<9R:;,A?@E'ZX7YR-/*N(Y3QM9!8-_6W[)\US6!#K^ZBL= M[7Y3%MS__%K[M[;QT)@YJ_FER/_,%LWJ?!2/T((OV29O?HJG/WC?H$#6EXJ\ M;O^BI][6&Z%T4S>BZ N#@B(KN__LN>^(O0)0C[D [@O@80%J*4#Z J1M:*>L M;=85:]CTK!)/J)+64)O\T/9-6QI:DY5R&&=-!=]F4*Z97M[>7'V]F7V]0O!I M=OO]^NKB'AYF]_#OQ]>;^QFZ_88N+V9_H&_?;_^;BX>KJ[!YG%/UCU"1'_(\(>)@8]EV\OCAURR*Z725L?L?4RJU=H"2Y3 MHV4E"@1>6+$F*Q^[:9PU&3?V6E\VO+1].]_\T/O M'Z8FOU-E!QU =QU 7;5/;R @964J"FYJ9EO6Q$2 MR^'9&H0%.V&!12#]QS%=ZKLH+/"76>%SE&\XE!IFK$N )<+Q I1-=E_NA=B*7L'^J1Y M:;_D?VVRM>Q94Y]T/Q3L#::/ QP,AMQ@Y1.4#'O:9.4ED5EILE.:G*04\,JK"IQGF94,W RZ/!4U>)Z<+@L^;] BJU.Q M,4^91)-(HV$S##8Q-3?"]Q0B/6%_/."3)4+7!*K&$8!\KU=A- M!XBY,KA"MI/^@BE10)):M[/&J!1K&@@E0\\S6OFQ1:H"N>_$Y/2V6?'JH^2! M41K1NP?"&AEJT\VBQ+-(4XCUJ3O)6$$8X+5,Q;JHU0YZGK%YEK=L^HCXQN\WQVHOU4?KU7;8>=I'#O.P$YO4C;^%)+TO-L MRR!J&MLUUNP4U%94DH?)V+49AHOJI;C?V0 M6-4I?OIN@+8^X""CKU./4C),YPQ6?FA!NZ_8Z!^!X^OXKMF+=7!UV$''))XV MO 8HAC0.+1H5%7TW%J_[M)(]\_UY.'%)UL$&4@)OJ-A@!K"W8 4K F(W ;L1 MWPLE)HU8)]H8XX!$ Y$&.Q^'@46C0A]VH^_F_TG1L(L=J]E#W2^/<'J:SV,.C2AP[!MM/-(:,FRL$(?/H8^ MQ7DI?;ZIP4)FL6T^(U^U_M/F S)+AQ M;L/E+\86F_ 8>]XP%3;9Q5Y@X116%,5NBD+>GG*^Z'WJ])08&S!+_:%XW<@> MS!1B\1L0:]1D8&OHX:$HW6H<^I:%$%9PQ6ZX[D(LK(P7VM!TKY.+DI "K%J!'A#M)?G* ?:?:#O<@%<7)D74L>^DVNF"!>,^K M GT7S+C"(@:2^UC+-HZ:'>I4)"=NDA_Z[9:OLA1<]\!=42D:[DSRB([JV/>' MP=9@1:/ $FJ)XCEQ+VBOY%Y&5M<;F&2\V^,P:M37J%H?ZR;C$%L81O;VHX^P MMLI@^J]9+KMP-RER43Z.&SDSY&:,4;$!JI&'AWYL,@M#FQL3A5YR!+U&V9TS M\W[[3LSS[)%95[/$@-<(#W-4DU6 +1MW1"&8N!%\E/65G*(9!9+:\R88PH5$<HI.ZSV]EFO M5-WJ+WU-*V%N=5V3O+=5/XNH0< ?)^8T-UT-AG![!N'[L"HE'P\"L)0Y_[L.X/(0;GMD>R5"H M3O0@U-8S)JO MFJFBOK43?T[XX:#O6TGI;-4A_W^%E??,-THH+9VJ9R NG." M&<]SFLF:U?[ITN.ED;(V>!82>=E9ML/+CR.*.@

F M\%#*I!RMCV_OR8LA^6;1C1U[PXE#_\O[=U>P?EG 8.7'VO'U9.^R5\&KQ_8. M7(U:$=T%J=W;W3V[B_9VV>#]%__S97=;3E737=[[P2I(+6J8@4NHTOL405=7 MW7VX[J$1Z_9*V5PTC2C:CRO.(+&5!O#]4L#RO'^0/["[E3C]+U!+ P04 M" !]>Z16%65T;WP" #0!0 & 'AL+W=OUZ+6]W M<,>7N;$'?MQ9L24F:.:KJ:+(;U@R7J+07 I0N.AZO=;%H&WS7<)OCEN]MP?K MY$'*1QM<9UTOL(*PP-18!D;+!@=8%):(9#S5G%[SI 7N[W?LE\X[>7E@&@>R MN.>9R;O>3P\R7+!U8>[D]@IK/]\M7RH+[7YA6^<&'J1K;619@TE!R46ULN>Z M#GL XCD,"&M ^![0_@ 0U8#(&:V4.5M#9EC<47(+RF83F]VXVC@TN>'"_HN) M473+"6?BP60\'(V3T1!HETQNKH>]&07)C);;T7B6P.02!KWD"BYO)O<)',_' MO?GPFG).X'C*% J3H^$I*T[@&\R3(1P?G< 1< &S7*XU$YGN^(:4VO?\M%;5 MKU2%'ZB*X%82L8:1R#![B_?)86,SW-GLAY\2WC)U!E'K%,(@C [H&?P[//Q$ M3M14/7)\T4=59SJ'!760AH62)55K@]IPL:P^:VXX'JQ:Q=H^S&H;_D*O6(I= MCSI:H]J@%W_]TCH/?AVR_)_(WA2@W12@_1E[50"6/JVYPNP4!)I#=BN.<\=A MQ]$F;@4=?[-OXN^4UXQ*F;_7'"6JI9L9&E*Y%J;Z@)K39BSU7#>^.^_3N*JF MRRM-->OH\UARH:' !5$&9S^HV54U/ZK R)5KP0=IJ*'=-J>1B\HFT/U"2K,+ M[ /-$(__ %!+ P04 " !]>Z1656Q5VET$ "1"0 &0 'AL+W=OE#QN3U:(66WY@_[F^LUA-!BN%K%@[ M:319WBR3R]GY^C3(1X%?);?NZ)M")IDQ7\+BNE@FTQ 0*\Y]L"#PM^,K5BH8 M0AA_]S:3P650//X^6/\0=II0WCAOJEX9$512=__B:X_#]RBDO4(:X^XO,6IA)Y?W=JMT/(?$2!:3#PLAOU)WFNO.^WT?[3G]-%H M7SIZKPLNGNI/$,D03GH(9YV^:/"CL&.:ST:43M/Y"_;F0WKS:&_^'>F-Z,IH M9Y0L1$<(7="=9OYJ]G5Z\D-[ID-[I2]:_6;UO:-__?'ES_?OEI^O; M&[K6S@NEN*!U(U4A]1;@F*+) < /KU^=I>GTXGI]%[]F%S^.2- [5J(5EBDW MMC:V S',"1C!UVWN3<:6TK-0SAF*&A"7L->61JG]B6DU)%V3.5E(827#$_@< M&W;':A^:GJV%C#T6&,U(%3Z\R!23XVWHRM&!L#&< M,3V 15Y$,%#&4,+>[K'80;EW%J@+E,"UHG,7( HMBC1.PJ@O#GP8YL,.-#&- M>RQ$#^QQ+32N(@"-D='D'8,0OI V0F:Y,@7_IV#'\L2A]L)^X5#H PPZQA#- M^W#1A6@RBV%5/A9E3.\%UL]EWHDBZ;)OI%Q@*@7\T5MQ+!V#=A0!H&6F&X.2 MS$=TSSO6#>,_-UL0**87R"AU]T"(..EHQ':RCK+] :^8]J/Q;B*X@_W9-%3U MB9V'KF#N62=H(&H'1L2LP#3PV[GQ<\-UP!T"\R'>.EFQN,*CY\EWDQL@P#.-P89 M]XO@8'B%K?X%4$L#!!0 ( 'U[I%8BG>2-/ < "T2 9 >&PO=V]R M:W-H965T^O_Z>(26M_$[N%ULB.:\S,V>X.MX9^X_+I?3T MM2RT.QGDWE='X[%+U2WMZ;&I?*"TO+;FZ+(6]/9.%V9T,IH-VX8O:YIX7QJ?'E=C*M?37U:7% MV[C3DJI2:J>,)BNSD\%B>G1VP.?#@=^5W+G>,W$D&V/^X9=5>C*8L$.RD(EG M#0+_;N12%@4K@AO_-CH'G4D6[#^WVC^&V!'+1CBY-,4?*O7YR>!P0*G,1%WX M+V;WLVSB>Q\-J"D=MZ4C3 \*)6._\77!H>>P.'D"8%9(S + M?D=#PUS1^E=^3& MS9Y5^)NP(YI/AS2;S.;/Z)MW$<^#OOD3^AZ)DOY<;)RWJ)"_'@LXZCMX7!]W MS9&K1")/!F@+)^V-')S^^,/TW>3],]X>=-X>/*?]_\G/"PI7GRY6'U?+Q<45 M+9;+S]<75ZN+3W3Y^=?5LSM:5=;HKB M]HW9:0BY>N-4JH1%F"-:X)327MK&1K!6LQYV#;G33H0^=Y2+&TD;*37)0J%E MV(51\%#IR&+L<59;K= W*5;)8Q,!I2 ;+"S[OG_L?%\_\-V19GT%V"FIK>6X M1?HWFC:>8L_ ,4Q +H39W]SE*LE)6#EL'3"5TNP9P"B%!B/RP2%IF4CG0)@$ MYTE0)I2EJI\<"+ \ED!%(3G@;"LB&NQ$#W5L[K-1&:G#\'0Q9=V:,U\9+2I5+"N-JV\%2W+9 =2"_7!8P60&5(,$YMBG. M2+"BS]N<,\[5OABW4B-:MH9]6?F]M6NM^"TD+H2^*!%8(NC5CS\C M]8@^+1:7X7WZ_G6L)@:S9M4Q@]NZ:,!LD%YSNH%<<^+\:Y(+O>42*DOEPKQZ MQ><:*^OS9:=_7YRF5)Z]JVKK:FYO;U#SJ(E'38_H#Y8KE(2\SX4/CO0Q!V@H M,/EOC6!9%X"\D=HW>=TGK5DMFAR@3A^LA*>]8OB4EA/J]605I"AP^'C_<9ZUG6%=/,[]P(/ MNV'+&PNM:PA\D96!-KC* YNFDS>_=)6= 2DXW@,I7.JS+P3>VBLY'1[E#U-[L%R+EKN.-U@TF"=8:K;+H!DO=] MN>W\3IDSS&X8>Z_'/MI0)*T +T?^4G!I'0;<-R5XA%YL_%RD)E!R__)BC<9S MTB"//M>IL.#1+)/ADL[=+:,D@[987[/6Z9L)^.&L=KC1.,=DN^'A'HCYU16F M9T*'D[>OC_JFN"0!Z)9L=[ M/0MM'3FZKMA'>C5 Y0Q>M^Y_SP4/*;F(,\M\C]S1OI@_A Z,!7ROL.,KNQ4G MTR- PKX)C=_O2J2%.:[MA_F;R91^E?A)NJ__@QGJGZ\A4+[D).,'Y<):;O2H M^*F:==1IN%.RF LX$_N#:[;$A%7_E52P75S74\Z,-3?MH';.(!;?#LDDNI(T MKA316QR/DP(4F=585IEL&?N>Q-::NAJU$[Z]EVXDJEF'^W8&2![TYGS83#8^ M,'OM9..[]A ?= M;,.'"NY[%'?\-=^M=M]"%O$3P/YX_) "*@8Z#F!G$)V,?GH[(!L_3L07;ZKP M06!C/+@M/.:X[TG+![#/MX3VA0UT7XA._P=02P,$% @ ?7ND5FHW:>2@ M!P ?A, !D !X;"]W;W)K&ULS5A=<]LV%OTK M&&UV)YEA)?%#%.6U/1,[;IN9-LDX2?/0V0>(O)(P(0D5 &VKOW[/!2A9LF4G MN].'OD@ "-Q[[M?!)4]OM?EJ5T1.W#5U:\\&*^?6)Z.1+5?42#O4:VKQ9*%- M(QVF9CFR:T.R\H>:>I2,Q_FHD:H=G)_ZM0_F_%1WKE8M?3#"=DTCS>:":GU[ M-H@'VX5KM5PY7AB=GZ[EDCZ2^[S^8# ;[:14JJ'6*MT*0XNSP>OXY"+C_7[# M;XIN[=Y8L"5SK;_RY&UU-A@S(*JI="Q!XN^&+JFN61!@_-'+'.Q4\L']\5;Z MC]YVV#*7EBYU_455;G4V* :BHH7L:G>M;W^FWIX)RRMU;?VON U[L^E E)UU MNND/ T&CVO O[WH_[!THQD\<2/H#B<<=%'F4;Z23YZ=&WPK#NR&-!]Y4?QK@ M5,M!^>@,GBJ<<^?7=$-M1^*:2KUL%7OJ=.0@F!^/RE[(11"2/"$D%;_JUJVL MN&HKJ@[/CP!HARK9HKI(GA7XJS1#D<:12,9)^HR\=&=EZN6EW[!R870C+H'5 M(!O@:;<2E]['9,3OK^?6K__GF ."_.RX?*Z<$[N6)9T-4!J6S T-SO_UCS@? M__L9]-D.??:<].^-T3>$7/UV]>[SE;B^NGS_T[NWG]Z^?R>^D*B4E8K6$5B MN#:ZZDH7"0E)).94*Z@1"GO).E316K&2%?SB5B1:Z3I#V-WHKL4IIY#Y2R^I M:TLR#F3C-D(O#A#SXU+:E5B ::R0!DN+!:J?*@\)QNA&E6(!@[2Q0]'[-5C# M>M_CQT"&HZ4V&R_!A[-E$2UL@49H)E/J9BW;C;"RQG'5^M-.SGDV9Z(;BD]8 M6>@:8X;>/^NE>=@LSVP1[(>A>MJ!XJ77I3N+1?OJ!%H,D6A"]1%7GT#ME*M= M\?!/+/)H4N8A9 MV+M[#T2'F?1"Y$D23;-$S#(/8I+'49[&8L8R0IA22,JG7EDRB8H\%ME#F<@V M0VMMV*<0.9E%Z7@&/.,@LYA&V2SIY_^7)S'K=I#361:-LU3D07R:9]&,IRFF M'Y':P%QI)%XD0-?US3:C&V4,5D4VB29Q*J;LQSQ*L[$W[2=I<#>&@R)+HS1. MPI8)?#KS6[X@9PP21"]89 )GIS/O"PP9LH\;*D8L.^>X>)-I5,!FOR6-)EGN MAU]46Z'^+D &'/RKXL]J;KB37T66S&)HS'0%]B"["J2V-OTM\J'W2WQVEH"9 [5+TK.50T" M1L6^1PEOZ1&"_1XN)&4]370M=M;0$SC,"KD9^[O!*$@Q@'?GZS65^C!'BQ'OH.!@-;+ M9>HJ.V/X =V51 @\ZPR816^!TP%(3_[#HZ8S5[(>PX6#7-.!2EEXN]O$ZS@+ MUX)^& =&5M>J\JQW(6L)=D>MH)FQ#]34>Z[?<_,6%%\AVJH^3@P<_O4*V2YK MC[CL.7=X*6P2%NKNJ$G[@/XWNRX?N@ZZ]J49JOTY^)VEXL;#;5,3+]WGA[_L M'AD/CB'.\G#QV$?7Q0-&>T,E-7.NG;"2/,+&- 92*S FV2HN,MC$7D93Z,T MC5]A4( WLE?B\U'4?P&^@S A<,?= [A3$"'8@D=I-"T*<6711WC/DC2MSX\X MSJ,<[!/'&;;$XI,&YX#(L8H;*BT*4,I,_(($.A$7VZ1"7#BP\,PLRG&7I7D1 MC<$C3#6AC'?Y!^4YR'#&@S%DC8]M^HNC@?N]JV>">7XV/6*>SH8:Q2(G5DRD#O+Z9O6>T!VAXC+>DW&OU(S4FYD MY[5:^LON\5UP4.MKN>$F^Y#HAN)-9WR?^:TN)N+^^YX!Q8MX,BS0@T .8K3' MDFXE\88D[0$%A@OI@>LV8-' <#CQR$7#\):!_EF[>\6"NV?5<#/I7QEJC=CX M- D=?4GJ)K3,!]'J(UAMC:5O&RS0VP<Y,#2'3?%=J\$A%X' MY;[-UZ[OR]%;JP4:!O]LB";D<6I&X:[>O;WUMS:GWE'T:#YTN;U9S,X9Q^N2 M(X_X*>\FIH1;:!W^87OR]V>..6WEY4#WYZ M[):> *5O*+RHP8].Q$4?]^&Q=^S1WC<1U,W2?_GAW@$^"I]'=JN[CTNOPS>5 M^^WARQ3+[0B&L_ M806[3V[G_P502P,$% @ ?7ND5O0K(U&ULA55M;],P$/XKIX#0D*HF3;M7VDIK&6)HB&D% M]@'QP4VNB87C"[;3;O^>LY-E&QKE2^.7>QX_]]AWG>[(_+(EHH.[2FD[BTKG MZK,XMEF)E;!#JE'SSH9,)1Q/31';VJ#( ZA2<9HD1W$EI([FT[!V;>93:IR2 M&J\-V*:JA+E?H*+=+!I%#PLWLBB=7XCGTUH4N$+WK;XV/(M[EEQ6J*TD#08W ML^A\=+:8^/@0\%WBSCX9@\]D3?3+3R[S691X0:@P+2U3*$[&,WQUG MU!_I@4_'#^P?0NZT^8I?/H>?+2-GP"[LV M-AU'D#764=6!64$E=?L5=YT/3P GR3\ :0=(@^[VH*#RO7!B/C6T ^.CF*D]I>R/1;J7\+,P0QB/!I FZ7@/W[C/;QSXQO_/#WZ@H>;='Y:17.=G'_O];V M_6=SR MYN+]Y5>X^K):7:S@2V, [VJN!3>$XH(4.D.HT)64DZ+B'KC,N5(R:K2S M7'09RJU8*P1I^:UON89KQC=6Z@)*R:_3R$RHP&PD,MD @@+M #/25,D,^,O) M<0GRF3H'0JQ,AU\5MM]^M6^=Y^W+>LQO&W\?&PA6:O"#4.3X?%A!*9MINW$ M41T:V)H<7T48EOS_@\8'\/Z&^+:ZB3^@_T>;_P%02P,$% @ ?7ND5HJF M^NSH @ 608 !D !X;"]W;W)K&ULI57?;]HP M$/Y73MFT)T0@T)\#)*"M6FFMNM)V#],>3'(0JXZ=VA=H__N='4BIU*))>R'G M\]UWWYWMC\':V">7(Q*\%$J[8903E:=Q[-(<"^':ID3-.PMC"T&\M,O8E19% M%I(*%2>=SF%<"*FCT2#X;NUH8"I24N.M!5<5A;"O$U1F/8RZT=9Q)Y4<\ M&I1BB3.DA_+6\BIN4#)9H';2:+"X&$;C[NFD[^-#P*/$M=NQP7%4U3* S&-YPUFU)3TB;OV%OTB],Z]S(7#J5&_9$;Y,#J. M(,.%J!3=F?4E;OHY\'BI42[\PKJ.[2<1I)4C4VR2F4$A=?T5+YLY["0<=SY) M2#8)2>!=%PHLSP2)T<":-5@?S6C>"*V&;"8GM3^4&5G>E9Q'HRN]0D<\97(@ M= 93X?(WX_RYDBNA_.X@)B[GD^)T SVIH9-/H'MP;33E#LYUAMG[_)AI-ER3 M+==)LA?P6M@V]+HM2#I);P]>K^F]%_!Z_]#[[_'4[\N>C1FN<_LW="\%GF&(Q1_MN*VEQ)Z[$H#7JM0TS9G]CN.N3 M%EP(:>%1J KA&H6KN&?/L06LK2"R3'J=XG%(78LMK]H?7:!XY[D7:)=!U!RD MOM/ZY3?>1C?'M5R\A=>BR\WQ$3@>ZX)3.^VC@XC/)PA9O2!3!O&8&V(I"F;. MVH_6!_#^PG!SFX4OT/R;C/X"4$L#!!0 ( 'U[I%:!I;JG,08 ,,- 9 M >&PO=V]R:W-H965TO*%9 C?5N M*4T".,G69>C2HNW6#\,^T!)M:Y5$EZ3B=+]^SY&.K79NL )!3/'E[KF[YQY1 M9UNE/YJUE);NN[8WYY.UM9O3Z=14:]D);FWNB+,S78MNGE&TUFZ#JA/U_*5FW/)]'D8>)MLUI;GIA> MG&W$2KZ3]O?-&XVGZ=Y*W72R-XWJ2G5ZFO-]M^*.16S,:$T>R4.HC M/]S4YY.0 /Q@_6<7.V)9"".O5/NA MJ>WZ?%),J)9+,;3VK=K^(G?Q9&RO4JUQ_VGK]V;)A*K!6-7M#@-!U_3^5]SO M\C Z4(3?.!#O#L0.MW?D4%X+*R[.M-J2YMVPQ@,7JCL-<$W/17EG-58;G+,7 M+Y6JMTW;DNAKNNFMZ%?-HI7F;&IAG?=,JYVE2V\I_H:EA'Y3O5T;^JFO9?WE M^2E0[:'%#] NXT<-_B;T"2510'$8)X_82_:A)LY>\GVATMP8:0U=-Z9JE1FT MI#_G"V,U"//7L31X+^EQ+]Q$IV8C*GD^09<8J>_DY.+I#U$>OG@DAG0?0_J8 M]>\JUZ.6CN-\^?KU]8>;5Z]H?GM--[?OY[&WI):TNIAYU88PM]2M6A\0S]BNUVKP0"Y>78*\,:*MA6N-U_; MM=1TI7JCVJ865M8'CS^NM#+F&3VG7T4_0#AH1PEZ0DF6!7&<8U0409+P5)HF M09:5=#D81&P,5:I;-+WS8RC"8AK2TQ^*.(I?/#QZ]W$V(YB;)?B?)>$Q!*!D MM=YSDI*\#/BW3((\S"G-XR"/2YI7U= -K0NCZ3:BT5 Q2R"7D4C$+ S",'VV M![&?.#CLI3WB[@G%)1Q&)48[ETA!R4ZS70R^-(9<27L'@-,N22S4G20KF/ ; MW4" F_8S%JMVJ+%:_PVI891<,.U/H&Z5+P_*6DEM(?%0T4]#8QJ?36,9[8!^ MU]1)P;WC(NT$;-:#9F:P*;O64E+GY4&R/'P56K!#XJ@TXI<5][07<+L6%N\! M [WU<0EZDIZ44,6VY?7#L?KVCV)%@?].\Z_ M;E9".S@/&;7J0&T/@E>76G5?Y"0@@U!OE944S8(#"Z]&+#RA#\B)-/9@D2&. MJ")Z,+U%@49)7*I!VS5]0@M8Y!LUP00MH5K _ED*3&G"3]M@M5GR&4A9@R;L MQZ:;OFY05@5M?9RG.V[4>"'9]1$6;9WYOAJTQB;,@P.HIR!77^HNZ;FFF/1]?[70A>@YH?<84[;YA\? M!(?,AODB0G>B'3S_I #=._$WAE6+3'#]F@.8_\CCW.TX=(E__BHB:()C]4N' M<5S.6R X/COW8%T'[=V?TI6[:L"REKX:9MUL#.M+^B Y498&4>Y&91H46+**$WFLH";3JHZ>2Y<=>=,A7%&=!."LHC8(L*JB D.,?.F!VYN13RGV0% LCB M/"@3#C1.9GBM\%Q3:@VST$V4KT^Y-H=I+O%>U[)'2DZC4X![E:''L#>M4#!^18[_Z?:KV5?,MG M1&A*AQCP5RO62ASTFO5E,\A[?#P8KT*CJX#/B0EH3'KTE);[M\]8UURXZ GO MO_;B]W #B(,B2?DIY:H7J6N)#+0-$I0+XYRIE8"C&(-T>1#F*1<*^5^RD$:8 MBL.2CMW.IJ.+-9ICY3X?.*& [^_8^]G]%\K<7\P/V_WG#:JU:O#.;.421\.3 M638A[3\9_(-5&W=-7RB+3G3#-;ZRI.8-6%\JE&?WP [VWVT7_P)02P,$% M @ ?7ND5MB(A /? P C0@ !D !X;"]W;W)K&ULK5;;;MPV$/V5@>H4,<"L).JZSNX"=NQ> #LU;#=]*/K E;@K(A*ID)0W M[M=W2,E;UUT;*= 7\7K.G!ER.%KLE/YL&LXM?.U::99!8VU_$H:F:GC'S$SU M7.+*1NF.61SJ;6AZS5GM05T;TBC*PXX)&:P6?NY:KQ9JL*V0_%J#&;J.Z8-_1ES4S_(-J?Q.U;99!&4#--VQH[8W:_<0G?S+'5ZG6^"_LQKVT"* : MC%7=!$8%G9!CR[Y.<7@"**,7 '0"4*][-.15GC/+5@NM=J#=;F1S'>^J1Z,X M(=VAW%J-JP)Q=G6IY/;='=<=G/.U7806.=U*6$WXLQ%/7\ G<*6D;0Q M"HDS:C!,UN;X!$Z-VX.G4S7^>,;Q.:]XM^9Z?V+N0^&62Z$T?%26&Z@'[F9+ M A(?&00-DG5*6_$GVO4RA#$#DQ5'/<9ZWB-*RK( M U'"8F2G. +8'KN<[A] M@".@\X+$<>)[.9GG*?C0M8K)_V0H(QE-1T,9*?+BF:&T+ FE.;9S0I,$/O%& M5"WW /YE$#T^4!:DIO!IHO>J'NT>4'?::]$Z==G_KH[.(J\NC%&A!(EKXHP$:$QK%KI]#G!.:1:Y?0!R3 M**)PU^ AL W&!8HB(DF:P:&W*'Q2(CJNM[X08OC4(.U8+?:S^UI[.I:8O[>/ MA1I=Q8,V&/\-0J-9D06@Q^(W#JSJ?<%9*XOERW<;_%_@VFW ]8W"BSD-G('] M'\CJ+U!+ P04 " !]>Z16B&*P_AX' @'P &0 'AL+W=O>\_$0NGZ1ZHM><6[8U[IJ M],UH97*T,3D]GJ=+_D3-[^O'Q6^ M)ALI"U'S1@O9,,7+F]%=<'6?$+TE^*?@+WHP9N3)7,HO]/%A<3/RR2!>\<*0 MA!RO9_[ JXH$P8P_.IFCC4IB'(Y[Z>^M[_!EGFO^(*O/8F%6-Z/IB"UXF;>5 M^21??N:=/]; 0E;:/MF+HPU 7+3:R+ICA@6U:-P[_]K%8< P]0\PA!U#:.UV MBJR5/^4FO[U6\H4IHH8T&EA7+3>,$PUMRI-16!7@,[\<7'N"+V"^R,2O-WC4+OMCEG\"&C2%A;\A]>%3@+[D:LRCP6.B'T1%YT<:Q MR,J+CCK&_G4WUT9A[__]EH].1/RV"*J'*[W."WXS0L)KKI[YZ/:'[X+4__&( M@?'&P/B8]".1/\KWME4?W]T]O7OZS%E%4MESKH1L-:R0K0*5+-F\U1"OB9*5LD*)ZBOVDBN^ CO"9R1#"BK0M@II9[@2>07J9L'6 M7!$F8#U?BF;IZDL8P4F28@57!IC UDHNV@)&O'#8 >*J\C;VR;(4!6?6'<>& M>JVL-&C(%TAX0=M'E3M40&:UZ[54QAK6>^%9ME[S,U^)HN+.6OY'*]8 $T.\ M95Z(2ABX8]F!<*1"-A @FJ)J$::E!ZF&-=*P2M3"\ 48/6946WP!&4S]4HG2 M..&=&QL=8_8;PFWR><79G'"/V9UJ0$[[8/?H4O$J)['='I&<2N1S,HQ<5+S M?F%=NLU[D"BT1F,"(RTKL;#<]WF5-]#]1 B O;NCH#(44[&RU>2^?^(%K^=< MV:ESFPX(/U3J"_90P0(!!VP(;/G1(P2K->P?LKE\:)6BV/WJ(H7]V8YI?.6!9[J1_2(/6"+&;OD7]D[:.BF)O7W:WQ6(-3:.8%R8Q-O5DX M9;])Y$NG82-T&GE9&M @\0)(_SB(VK>&]C-(WE8Y(@1$[IDOYY58NAR X##U M?-]W@R!..K,/2RL[M[Z5%7K)=$I/?_H7 SGDCJ=>%,U8//.RZ6Q@Q?N#^E(O M0?!2+YIE.\$;9I:-8#Q-:1![4RCX;,\NOKC,GV',$KO)Z3S?&H6ZKZ_V3=4L M&L_8*\\5+!W[W6C'-B*9=@O1..U&WZA;" U(0E@@GK^A)QZG/OL>KSC :T]# M.D9LOV?).$OQLJB*$M%(E8-%V".$:%Q7XQH,5XZ ATV- BA)#N%2O\6VW/?L MNX(FQ3FKW8G(Z40[.'B&$@G]B*K*RY+97C80%V"@ M!C:*_S@5R%"[ML&:\_#"AHA6=$X0.R>D/%OZX)DUSA M!E' 4)?#M'/Q.V.![T6!+5DOB5+KU <+M%!-9X'=I"$+##L+QB$Z'AP'U+PA M[&<^TJV?H#VA?3+'(F]C2ZP47P];K-?<=H'5JSLJ] IANJ3L_D:[/XYVE/$< M0K'PORD=VUC_N:_^P-?_1]NO8%#0M\WK@T5 !VC%"7>Q746N5ZRD]0,UT17; M;B[_2>)O4_N!Q*]SL;#.Y345N^[.6K!T_4D-':VR)FUR=HA<0V38&.S*<[\D M;7&D,TJYU(O3Z#!GN8LF71)OL?8X>19F+ D#]GO38Q@=T,3RWK+L1Y].=U094OZR?J[P KT62TXK;THB0EM M/#^=TG?@A6Z %< .R&(0I9@+T(XD1)"D"2UGL4_+&'OA;$82@HP%,>9#%B06 M9K&<8F$&[A^^FX9!^"-P. 5FNB>6,S;#L=LO)EZ8A-T3:8 ;UFRN9=I3O="\[WQT+SO=RT[WLM.]['0O.]W+3O>RT[WL M="\[="^;#/Y:UEPM[;]9S6S9N1^8F]G-[]\[]]=S2^[^'2.Q<=?1L*0$JS_. M<%53[G^L^S!R;?^!SJ4QLK;#%<_A'A%@O932]!^D8/-3_/:_4$L#!!0 ( M 'U[I%9-NMM?BP@ &<8 9 >&PO=V]R:W-H965TV ':6J(N[_/FIYWQ MX/A\C^B9X(=62]]Z%F3)Q-J?]'*5GG;ZI)#*51*(@\3/0EVH/"=&4.-7Q;/3 MB*2-[>>:^V>V';9,I%<7-O^G3D-VVCGLB%1-99F'6[O\4U7V[!._Q.:>_Q7+ M2#O:ZXBD],$6U69H4&@3?^5]Y8?6AL/^E@W#:L.0]8Z"6,M/,LBS$V>7PA$U MN-$#F\J[H9PV%)2[X/!58U\X^RRU$S]D7BIQHZ0OG8+'@S_I!3 GDEY2,3J/ MC(9;&(W$C34A\^+2I"I=W]^#4HUFPUJS\^&S#&^DVQ6C05<,^\/1,_Q&C:4C MYC=ZV=)/VB>Y)6.]^-=XXH,#./[]E,V1Y=[3+"EACOU<)NJT@XSPRBU4Y^R/ MWP8?^A^?47BO47CO.>YO"NW%E0$8S8-(D!B^"X(% M:"7G6U!)9O0O["P]F 4KBLA83(GI@IEJD^1E"J':S$OH,G6V$ 4R2L]S)7*U M4+D7=BI"MK8MT\I)EV0/N^(;OJ"R*!\B.5%[/3-ZJA-I0F2,/ W*(7T@B5C- MUZQ8N1P\F*@E]5/)3F!>RFF;>L$(,$&E75H&LR7]8ZP NHR? M*N?%1(6E4N8I2Z!L7MF[6P?FN4!\L<9MQ.)"N8 J+"3O[@H_5PE[(<\?A"6= M8$B09J8G\"U%/;=FMI.C*J;-)ND:TUEN2U66:]IR)RP7(FL?^'+B%4(.GR'> MV@!0, L;[(R>K6EL>Z,,R2BX(4\U-8%-^*00R E,JU:';$$B@YI9I_\+ 52S M4V(<7H44Z$V$#8XCPF25*MN]L\P06%O"Q\4V<>R#; MXDYT5J$D#*NP6,F"6]5]@OUKZW_\=C@<''ST F9H-"7HL5)B5WR'&)_8DG!( M29F)*4SFS+QFFT?1S!CH,B#GR4>056<(Z?44;]^ OJUKR)R"2V+E5U3YGPH2 MQ:6+?!"I3A'=P(AP\" JQ\I=O@J2;US@@"7M8O&8O!67N^*R,:.=/5/Q61MI M$D+FE4'M+Z/P<<)^(ZF)T@N))(&7ZL6Y?)!UVF#1E>":MXKF6P ZGSM[SYJU MS4CQMP*?SZP+.Q0/5-< K[.(Z')X9]KHKU?Z1YPVT))%U!N;DJHN<+8STU1- M@(!8>^LR]HT^7%MI6.OQ^35J_<+F"VC^>MNZKS!N(9UF5SJB,62?:B ^ YQ> M,(=R##,I=M.'')@ *YJ]=NQTIUR!AQ0DGG:2ZQFG,D7)6SB.(+'4(=O@13NB M;U7DRV%=8F)D%X!VH5"H*Q00-N>N=A]H(210;D>30E.M2U-NI MJKM463SI"D'R-JY M(U^V>GZA0H8^L"LN4!'@4M(X@0$Z91^#8BUGG"8T4\N?E@P#)9W!R8&R+2I; M)P1B0 UT,WXUM&6"8'A=!9G4&O-B/4<;+#'%8)RTSK=3;%)ZFCX02NU_LHKPWW_BT:0&^^M\ MMCUZ#Z(N_AM%?-V&;N."=G>4 #IE$;%%TN- 1LYI+(HL@ &%KA*$3Y2A3V 6 M0P0M#&!2P[1J1Y_;DQY'$L!(<:2#%#QYF^N4U3B7.:?='1UD8@BI3V R3)R> MD$X3NZA&*F34U.;4UL0[Y@H%L<&_/\9P\42RQ<7'=?B;#4B-F%"#)K'J-OG\ MUU4+B=7F6%Q0LZ6: ',9*;^+P=%!]VC07WOB_CW\N/8T.!IT#P\':T^/Z5Y, M[%&_VQ_V&_K-U\/NAX/!MM=H[73#*D@?#J'Y:-V&BG-;R2'6]O>':R94(E9D M*Z>U$'V\O5;\+HX^'&[Q6?P"4?O;*.*W%[TVZ/8'>\VV];>7?C>]UDY44N#H M<+BA$G%_O?)WF*V^H+F(_6[$%^4%/URN@-;E ;) 9JX5:?Q)-B%9G;;2.AE# M'&DHM:CY>(M"6TD<($M6OHL9^:=*9U19QG23PE9NEYV^X/>JY&4XCG!M:,]S M<1;86@[?;JPHO-Z$'LB+^D*:5[$'75J&. L= II@;7J. 63 N MZKE0\WA:=ZAWB'&___YU,C<*500&'S<>"Z5.]9H&H5MAIAY)W3&EN9YN.3@> MZGY.%;@>M[>5Y+N GVHNGXI_S"MA$0H7MD"IS^AR#ARO3&(+M3&R5>./2=M= M>SW,C^H-'TI;QH0,+4[R,;H^-#QJ>W]+8ZEG3(:J*8T()C:II-NWD)4 MPVB;GD\YS;$*WG?ISEPZ1/M7R5/B$@-DQB9QAI "&/JLXU,T"*L;$)L"WQBO M$F*I[C&\&'C)0UQ"@7/U6!9)HN?;>K0F1OG"S-C,2W]77[VH$1 /7*VSU_8O M:[J_&[SG+M.G5*+F@?;:SUNT='(Z:]O*\ND2@^=)Y,^%ZG-#@UN,"1 MX*E:>U\R&!+KJ0+]G^55&Q3&4+RULAYT< ^,]<+/:W**/X^7QBCQ>P2/ */ >AY\IMO9W#_8[\6A5OP0[ MYZODB0W!%OR8*0DD$P&^3RW4K%Y(0/-_"V?_ U!+ P04 " !]>Z16CA@7 M7;4' #>$P &0 'AL+W=O>>^T7I=*>:![T1PK"GJJSUV61CS/;];*;SC:BXGJJMJ/%DI9J* M&]PVZYG>-H(75J@J9Z'OI[.*RWIR?FK7/C?GIZHUI:S%YX;IMJIX\_Q1E&IW M-@DF_<*=7&\,+Z%^<_V/\QIOUV MPZ]2[/3HFI$G2Z4>Z.:Z.)OX!$B4(C>D@>/G45R(LB1%@/>SD93)+@^+K7 M_K/U';XLN187JOQ-%F9S-IE/6"%6O"W-G=K]6SA_$M*7JU+;_VS7[0T7$Y:W MVJC*"0-!)>ONES\Y'D8"<_\5@= )A!9W9\BBO.2&GY\V:L<:V@UM=&%=M=( M)VL*RKUI\%1"SIQ?UUU@B2'\W8LU&#?Z=&:@G+;,\&;*HL!CH1]&;^B+!D\CJR]Z19]SC=V)K6J, MK-?L]P]+;1KDQ7^/N=MIBX]KHUIYK[<\%V<3%(,6S:.8G/_P79#Z/[V!-1ZP MQF]I_SM1>5/1<9C7GWZ^O;OY\.7Z]A/#W_W5+S=7G[[I8 C%M;MI& M,%GG95L(SV:I8KU*BV:VK%KFMM>%E:\!Z[Q(-&+MNN!.N" MW?"Z77%2C?U3:W,L\5(_2M]")TMF(Y#\?ZA&FF>RI2!="]KR*.I66 /K1FG- MMHU:26,7B$IMMZI:D#:$GR]+T1N8LB\;J;]MF-B3N?B1FD !6L:@5W3?NCLR MFJMJ6PI2@U;'EJTL"U(-6 5XU=AN=4*_++!)\A*.["R5EGE+'@!PV5A]C:A4 M(=R6:G&3&^YG ,W36!P']JT95'3T6DU5OJ$$2UF7#ZWS#2I7;AYH8@*,O MUMF&/\)O6#<2_ KWH6-C^)P$=:1,D !YPE'=!@ MPVCM :0@YAI$'YN(>+"3.QM BF&@ !3<+E%#S"B;-S9E7F2&Y8O=DA0#56*M M$.,NL6!D29..!A9-GBYUG :BU&4M8D$QQ=2T9?.BJ+Y5.1[;;21B52A6*\,J MFM]DZ<^6@PS#B1!;L7JCRD*3,]"]YM!CU:VW[ MT2Y[[%U:Q"#CE:>@V"-:A54D!*Y*&BCXYRK+Y%7I>9 M!PWU97.*LG8=XD$\HS(1/;3%EH8&8'&JG:XK(#_LF$<#ZZDX,EW1N [F6P_B<,[U M8&BWG9)CL\MGJ_QB(\6*73V)O+7MX7:U0D@;SU8<$I:76HTVW@Y8+D4N[2G\ MAC^ Y9/)Q>WES>2=1_X &IV]T6A0IVA;SK^Q;[85E':JC!KOE/TFZ/Q,W?8U MGWJ_2U))O ZE@P'PU,^9@N8TQN'0*7E%[>U_KI#)3-BIPC2!WOH!58(49H:=4V M$CDZ#>XSJ%=PD$7-4:(I%U<*#W9V+%,)Z/WIQIK>5\3>%LT,RJ7NX%=UQWM! MQWLD0H/ATY_.+6VX"-F)[0&JU5C1[][#\K=$#PJLJ^*K$B>.VLW+"_Q3I2PX M\7WG\N%[EH:AE\4AKJ*YEX5T<1)Z09*\HX?)PHO\!63'S?8D>,?BP/>B>+EE43P-V+]8F$X3_ 1S>Q=%TPP_WR(I_*SZVAL?CPTNL_T?4POWR25HA8$ MWCSPJ6K2*&*_C/1[77MW?33$CAA(@BST8C\:C9ZAD091Y"5Q"I6)%T?C+8Z! M+/7F68J<]Q:9[XKDH.DNO"3("$L6)ZBH5TE$_\A0[I3-<>J%8<*.O='/1M]< M\%JRME^6:$BUM>D^OPRKP\>K#]TWF_WV[LO7C3UT:$RY%43]:99,\-9COR9U M-T9M[1>Z16 M?U3@4JL) "!&@ &0 'AL+W=O'M@JY-NJ+$[XJ"NGN3U1N M5T>#Z:!9N-*+9:"%\?%A*1?J6H7?RR\.3^.62JH+9;RV1CB5'0UFT_[2? M-WS5:N5[OP5I,K?V&SU#"0FDTUST+*D@_W? M#?4+UAVZS*57IS;_0Z=A>30X&(A49;+*PY5=?5"U/OM$+[&YY[]B%?>^P>:D M\L$6]6%(4&@3_\N[V@Z] P>3)P[LU =V6.[(B*4\DT$>'SJ[$HYV@QK]8%7Y M-(33AIQR'1S>:IP+QV?*Z5M)EO%"FE1\4.E"FX68D;5TT,H?C@/XT.YQ4M,\ MB31WGJ"Y*SY:$Y9>G)M4I>OGQY"O%7*G$?)DYUF"'Z4;B=WI4.Q,=G:?H;?; M*KW+]'9_J+2X-#ZX"E$6GM)?G&F?Y-973HG_S.;8CDCZ[R:K1*9[FYE2=KWW MI4S4T0#IXY6[58/C?_UC^F;R[V=4VFM5VGN.^M_TXP]HGE]=?IW=7'X]OQ:S M3V?BP_G9+Y>??A&S4ZQ=WEQB^53ZI;A 9C-#\+893!H4% SB2@8EKK3_)CY7 M3I25*ZU7 D B*D^RZ6:CHXUI3P/M1;!"IJGP0SGD3BK'/$/2VQ;.D7O.%X5Q:M M"7+-MR&8J4@ M+];7R?F5+%G*)2G.M&ZETW*>*Y&053)8!;[PWB8:!U(D=EA"/NT#,6\V;]?* MS\.HLUR/0ZJ\7A@F('U'.;*%IJ60WTBR3-^I-(I5RON8&K"=8QZYSA0QH-]R =O%]Z0; M(+^C5V^I8%&7WQ-98PF&95Z+-!)_0&U+RV3>-?>3,$BSE([AIR]54N4Q7^LH MBD$.SR254MQ<7]&L&PE$%(1 7M6+=HM.-(S#AV-_B>"=(Y\.4S MH W4A3S*01NG98IKG'BC#9_:NP]8WN+"W)KS,F/,B #$ &\\17BH-!YCMW^ MM?BU@BUW)RS55&SAWV0T$9/1_E3\\Y'8^X]6IF+*!Z:CW;?_GP/[D(X.[(XF M[_H'IGO\^F##@V>9,JF]"#WH)F^XI9WRA7B-^L-,3+5HLE$C?Z2']:JQ9GO]#3..+W-K M%MN!Q.T+8@WK>XIPL[E.6:(3F4N3*'%-C0Q(!-JBGT]2MO_:@DU8 Z"2]-#.HVS601@9ZD:$PG2 YRA9*( OQ_Y,LG MX/]QM#76K8U ^GO !'7(E-*5B1"91F_U7Z"KSO6?D&R!)0+5/!=SUMP%7H?N M$MHGV.C5IHHX%$:%-BY8"*?1" &UC3EB)^53N=BND]R[T[6<2FN[AR,Q(5U M+ZB4G:Q;T]';AS'^C+(_IUH=X;4#HQ/:4+59MHW)XAM9@(V.,,)+51(0TDFT M%>R3;=0#LPVNJ ,ZTXE$\&8PDDE(-$P,%#E/F-\0R1?8_W%\/ JY\%"E_\GH M!P^-_EBSG]0#8E2!>BG2B5$)^1WRNN032J#CL##AGYQ,4><>>G'/@09%Q8Y' M=BVU;B$@)6[I.AAVV-=N(B01J1CW8^71M>%F3R>0)GQYYLRL3M&5KTKEW".M39T3@E-\/ MGTTQC"_^Y[U.*18QJO54#X?!I]^"=-W4,+;CU&I]K\ X@U";6M8F<-QZ>;$% MQJ(EC?L,MGBNLXD4DW>]LO'CF/ECK(^..UVC?[TUG8SVVBS=J.=+:EO7^P=N^>)M&<3T M;0?4)L^FD?CFAVYFG'EUHHS*='C=S=(/^D,>-L@9?=#?$J]VA_OO=E_CU]MW M^^+\B<.U;3D'*2%KZX][3HF.F ZGDSV0FHC?+D\^7XD5;,73-MO,J0S:46:Q MCVDN)-=NF(KZLRC/ZUV[_?A$YQP=8E0;-@IAP!T>8AM:5O,<]:LQ M5Z)< (K7-B$'4)8/ZU:GR>AZO5%X@\6&Q.;7"G6+/!];86DJZ>[K4DAD+F+% MI$DQX?L!HGE-8R5*FQ"^U]!?5FU[\SF>T))JFKEG&\ M]E%T8?P>77E"?7^K&9$YK]$+CQM/48)W0ETQ!I%,KVYLJ1-QL'?PND'OGC;3 M6AN(N Z^Z]).MR?3)Z05V^(ZL26LMEIJ M$!BJQ-KR*4E&7?66M=]J)" M20#=&%K-G1?O0O?9O*TON$IG;W7*F*E5QN&MBQ(83_%/8,% &&I,Y2-XKWC> M?Y@;CE7@0L!7WA$>2-3[KJ 0B#<>IKQ/M8J TF(V1)HW-VZR#DZ:Z[QOBZMJ M[AD,5EGH++:)'*UHQU)%-PV]1I $@1,*U=4WWB6JDB"3C5W3J.M>K]AUM8-N MWU-JGY,EW^DT5.K:#%"DCLA&\_2*#^K9(X]YU3= $QXY M'^<# %TIJ43U#HS$M5)Q*)UB*KUN(U&^S0*'<@C]^^'@'&+\0M*OM]Y59_*S0;8\?9P!C"YK2$)!0 < P !D !X;"]W;W)K&ULU5=M;]LV$/XK!S?H$L"P),JRG30QD#0I6G1%LJ3=, S[0$NT1%02 M59*RD_WZW9&2ZFQY:?9M@"&3U-US[\?3\5;IKZ80PL)M5=;F9%18VQP%@4D+ M47$S48VH\CD!02I4@M(7#\VXBWHBP)"-7XUF&. M!I'$N+ONT=\YV]&6%3?BK2I_DYDM3D:+$61BS=O27JOM>]'9DQ!>JDKCGK#U MM PEIJVQJNJ8<5_)VO_SV\X/.PR+\!$&UC$PI[<7Y+0\YY8OC[7:@B9J1*.% M,]5QHW*RIJ#<6(UO)?+9Y8U5Z=="E9G0YB>X^-9*>W<<6$2F]T':H9QY%/8( M2@R?5&T+ Q=U)K+[_ %J-*C%>K7.V). G[B>0!R-@84L?@(O'LR,'5[\")XW M#/XX71FK,1/^?,A&#S%]&(*JX\@T/!4G(TQ_(_1&C):O7T6S\,T3"DX'!:=/ MH?]P')Y$>5C'F\^7;S^^O_SY_.+ZYO6K!8OF;^#BER\?/O\.IVG:5FW)K O[4JL6$8V$>)ME"MX75F#HY0%RT$5#[=!*4; M8+*DQ9 M]&#W+,NQ-\%^J8PY &YA)7)9U[+.26B#BJ@,]F :CI-9B(M]QN8' M\*7&%E?*OY#=<0KD)1Q#'EASJ6'#RU; _GPM)I<2 MIGTV1%O, (FJ*;N# ;R^HU1"1C!4#I.7@#("_0Z6 6\:K6XE-FY1WD$214,: M@2'MG9!YKD5.J=IHF0JBO0^X-SV<'&)'+DOT^!B4AKW#^229 M ]\(C==9QX>!\^(F+E1BO<;KR&5[@?4)%L-D6GW7JR3IILO:M+>Z;JL5(B!] MKV6G>FN-15.(3AJZ'>F:0ZL1@&P:PCS(AY27*247JCN!RQK>B95N\1X&QGQ4 MQN1!7M>JK5.JVP+3C[!6BFN7A)G$[+!*8WVVZ$OMTHMC0FP[Y^W$$EV5:UYY M%.Y+&4<(9]0.&:*V#>7E'DX1D[#W9Q^:73/O9P8YDP3W4M"E\VX7 ,PFU>9%ET(^@Z:8;W(C,TRNEZ6SVX M$;;]AR:.8&<*K(3.W:QKL&Y0.3\0#J?#.'WJI\COY'X6QX#D=->58HVLX62> MC$#[^=9OK&K<3+E2%B=4MRSPDT!H(L#W:Z5LOR$!PT?&\F]02P,$% @ M?7ND5GG)V4BB"P C"( !D !X;"]W;W)K&UL MK5IK;]LX%OTK1*88I(!C6Y*??01(^M@I,)T&36>*Q6(_T!)M^ZE),N/O#H#M)$ED9?W>7AX[5<;8[^YI5)>?%_EA7M]LO1^_:+7<^E2K:3K MFK4J\&9N[$IZW-I%SZVMDAE/6N6]N-\?]592%R?GK_C9E3U_94J?ZT)=6>'* MU4K:VTN5F\WKD^BD?O!9+Y:>'O3.7ZWE0ETK__OZRN*NUTC)]$H53IM"6#5_ M?7(1O;@\(=6&]?Z+,B2F3'?Z.9#]OJD3PJI7*6>)$A<;M0;E>W/M?3W;#MLF4FGWIC\J\[\\O7)Y$1D:B[+W'\VFU]49<^0Y*4F M=_Q7;,+89'@BTM)YLZHF0X.5+L)5?J_\T)HPZ=\Q(:XFQ*QW6(BU?"N]/']E MS498&@UI](%-Y=E03A<4E&MO\59CGC]_MUKGYE8I<:D*-=?>O>IYB*67O;02 M<1E$Q'>(2,1'4_BE$^^*3&6[\WM0I]$IKG6ZC.\5^%':KDBBCHC[<7*/O*2Q M,6%YR1WRKHSSBNU$-OG&4O&?BYGS%GGQWV-&!YF#XS*I5EZXM4S5ZQ,4@U/V M1IV<__Q3-.J_O$?C0:/QX#[ICXO* R(^7OWZZ=_OWHG+=[^]>__AR[7X1F+G8+'6Z M%-H%"3+/;P6*;'XV+RG\2%^_%+* 3%=:6:1*I&:UEL4MQM_J8B%FM?NQJOJ> M*N=(*A)]+7*#FUROZ.U:68S(](W.2IGWYG*E\]NN^%3:MHJ5, @"2CDE3@O% M2JK:@2E2T^I921#@GHN-=.+9N#M *>4YHT*1B6>3[K1Y )QCB_W28OHJ9+9B MTY"7L+Q.3)Z*#W$'X.36BN&%5+P@K$DMM&9A<)L&>F!^2^\TEWI%+DA+:_$* M"HK">$A:&TMC3W_^:1+'_9E.M@\X2D<\\%:E:C5# ML*JG!^[X"E16UI$1T?@E5&DINO=NQX@ZI-YXF4/M9\.V.@4_&/^#8;M/EV^% MV11UT$@ A454==\*RI,!L L3E6LYTKKV&Q+A..]/!Z,BLW!2+,Z_L:F=>-.H,AWT1 M)9UQTL?L>-A)$A(3)YW1>$08(G-GQ%)FN_5NH:B^D3. "46E\II?2L_UKFAM M\M)>R0O"#RL,"ISQA 5BZ!K^2TDA22[+<[I6,KHOJNO:3[<']4BK5'DAY,J4!::AL#% S@P]JZKMGXU[88JS.O;2 ML:Z(4V<\2/B:1!/Q67EM%6^ 5X3K]^T!@WYT^NUYC?\;K*!FMW"^6%L#/(85 MH" ^71*\2 5@NVVP.%1."B=RWJSD-R4R[5*K:"X8X2Y8H_"% MDO $J=$5;Y3UX)A!*4B ZSB]=B54:]D]4::@"O^R1& J 2F"0=P4#$ 6U3:& M/YQ,*M<+37%O-.^2MY 09E'H_\&JEH-JG&)\?-9O[22,4?T6:&6E)8_]/9@* M1C2+TF:B6_D@,Y!$3;2&)K24"ZF)[2+LQJ3('=5P[7&A1&&3/F$CEL&+I!+! MMU5+8N40CTPT*]45'RES&M]?59S]KCR[D58CW4.^-;/6U:P0GU#:8+=Y,!W4 MVRX0?]);+N"\H""D?96.$M&;HB,^6;6@ZQN9:R1'H65 :_B_,*AI)B<55+(? M DBP:Y Q<%L9#@M@'N#>]FC24(J4!4:=8;>F6B_(:WM9OI_)OB6&8E8%)B,@ MJ%G [F(+4!O+>5E7':6[;VOLE(2,V^( $$0\DB;++BG MIFUTJ"QS&>HK,TR!]I*%F.-]B<+["E,J>!I>(M"!OV>JQ1Z)HFJ4+M1&L7>! M\YAP=BE#ZK?V>=R@)E$!)OTF+C;29B%_675,)DD+[')>.!+!!4+ID(9YCN=Y MPWC<4- 5PW;MCV'%AB U8S\&/-N5B M^2B%:S$M1;;J!U"N%"#%:1,M&?0)7Z7;TL%*^VJLTRQGJ6Y%LU. .N%39@BK M"Y_?GLWU=\Q *)0G A,X8T"U#7@#F0L^Y_/F:,W;)P-V43(O)/VK8(:6LJ!S#1,JV@%2Y.7"8!0UFPX4VS_;OSC*+![8$Q^= M*0U1H0XTWEV I>(4)O[%#. M$:GW4EOQA\Q+16*#[3\\+ZSZY&F_F:(JFA"\ M7H@W GAXQ(V&XTX4C7%Z'8^[222B>-3I#^DT&_63;C+&@,XXBJBYT>\.AV%M M2!YW1M,^QDR[XY$833OQ).*[_C048/RRN?X1=#D=CJ;/Q23N@@WM#]F_OC=V MKC1F]=Y05')*MM-D.L'\47<<'XP_C2-(=3T4T MI<;+@$T?=O$"I@_BN#&=4"VD&2,N[PSA*Q8<5=T6PJK\/-IC:QUM'T<0]WL6 M7QX$>0[KL2J 79UDRJ'M#!%J..JLZ7\?FQ -)LB'P4/E VFCA&1'0_%KTZ]Y M8%(\@J*CQY=>@L'Q@(*1= ;)*%RC2=TNL'6O:QN@@*A'HS#C=A(.U!A4'<&W M.//#'@]=>R=S[@5&HR']'4S%M:)3\4)$4'L4BXO=QD'2B9(A_L;]\8%Q>T/O ML:@B%]RO.3I.VB(TB2CA]GH7V"@<[4HYDW,^H+9MX;V_LN&(Z(9Q/7+QBN>' M5RR;5VGVMGTR\7O1*II'%%C./ F[9KF+ P]U R^.-=YW%C\ XN-5-D0] R[ MXP<+)P+TQ@*(^/@Z&$2BC_%?J%@K@M#DI0P2E,"$0XDI:N0G$P4%3Y6=U/ M62FD25;Q&%=;2(ZTI"]L+4)[R5LE70D(J9@LD^@;J?.F15\YC9@=Z?)$_M[9 M[5T@&M2(#IV8718?]_L/G,LIMFZ.PYO\SC1N:?*,%#%@OHNZ#6FUHV='6"OI M6_NGQ?C:)+:BKX_:YKI'JZ^S9U74'34MWG#X%4FWWSS:&KRK3HGP61>4I@7N4_K8]\^]UB\$5@JDFWX'00U-,-SP8X'F:?-3BXOP"X/M M\/ [#3AC ; 4N9IC:K\['IX(&W[[$&Z\6?/O#6;&>[/BCTN%U+4T ._GQOCZ MAA9H?H!R_G]02P,$% @ ?7ND5CU-T\S< @ 4P8 !D !X;"]W;W)K M&ULC55M3]LP$/XKITS;)]24I##$VDHM,&T?& C8 MBS3M@Y-<&H_$SLY.4_[]SDX:.@1E4M7:YWN>>\Z^NTY;3?>F0+2PJ4IE9D%A M;7T:AB8ML!)FI&M4?))KJH3E+:U"4Q.*S(.J,HS&X^.P$E(%\ZFW7=-\JAM; M2H77!*:I*D$/2RQU.PL.@ZWA1JX*ZPSA?%J+%=ZB_5I?$^_"@263%2HCM0+" M?!8L#D^7$^?O';Y);,W.&EPFB=;W;O,YFP5C)PA+3*UC$/RSQC,L2T?$,O[T MG,$0T@%WUUOVCSYWSB41!L]T^5UFMI@%)P%DF(NFM#>Z_81]/D>.+]6E\=_0 M=KYQ'$#:&*NK'LP**JFZ7['I[V$'<#)^ 1#U@,CK[@)YE>?"BOF4= ODO)G- M+7RJ'LWBI'*/O>S0T0OH&"ZULH6! M"Y5A]B\^9"6#G&@K9QGM);P4-(+X\ "B<13OX8N']&+/%[^:'IQ+DY;:-(3P MH*#5VA 9=)6@QU MPAHRMX@.0'/6CU(VG&QV/3MZ.X(X9G8 4R?(T!-SPY#0<2&D+";J)N>@&Q:-[-VXYM954!DK,&3H>O3\*@+H1 MUFVLKOW8X'?@(>27!4]]).? Y[G6=KMQ 8;_D?E?4$L#!!0 ( 'U[I%9D M1!,M700 .P) 9 >&PO=V]R:W-H965T,&R 83FRDQ998L!),S1%TQIVMF(8]H&63A972E1)*D[^^[VC%"=I MW0S](HD_[MV[=[RC3K?6??8ES$[CW,+-3FT;C*YYX M)I9Z4P:92&:GC=KPBL,?S<)AE.Q0XP=L:R5 MYPMK/ND\E&>#UP/*N5"M"4N[?"EUGCXY.VW=X)-F>M#[;JC<&@TG7W M5G>]#D\,7H^_8Y#V!FGDW3F*+-^HH&:GSF[)R6Z@R4<,-5J#G*XE*:O@L*IA M%V9+-BIP3@OEPCW=.%5[%?7RITD ONQ*LA[KO,-*OX,UH6M;A]+399US_MP^ M :\=N?2!W'GZ(N"U3%_ FNV G$6_RP\'2W_.U#PZC?_;%W<%. M]\-*W9SX1F5\-D!A>':W/)C]_-/A\?BW%TA/=Z2G+Z'_8(9>Q-K/='GY?GYS M^886\^7-7W2SG']8S2]NKCY^6-$G)A20(5W[H QX2"&)F<[84[!D0\F.,ELU MJM:88*UM54.TP7EVJ%F MK?,/*Y6JT2#0"D+G0(*'H1\)066\I:9U68GB?"0'4]@%=AH;XJA1]S '!L@] M,M[J\'\$HQO# F];1R5ZWY<6V>".(67L MI?+T:A,B $P2Z;(1%(YW1GK6[4V@*OC6;BP" '*Y/+EK=%Y='W> M.UU)7XXJP_U7<8K+-P"LUC@T_6PZA _?<+RJS'U,*&3O8_#4.+!WVLA!C@4L MI]FIG/=RQ$ZOZPWEK9.7)+B6F\P@?ZWS49-UBRWL^SJXA0ER]>W!NDZNZ*VM MY*A>U=EH")F[RPG'HZ/GV4N?3,!(HGU^$O9)]' Z?B1# M^WIZ\N0&AB:;^)_A*3KL+N/=[.Y79M[=X(_;N_\@D-B@WZ+^"YB.1Z^.!N2Z M?XMN$&P3[_.U#4A _)26Q$XV8+VP:"[]0!SL?O!F_P%02P,$% @ ?7ND M5M):.Q4M!0 _0L !D !X;"]W;W)K&ULK5;; M;MPV$/V5P;8H6D#9N[V.:QOP+8F!V EBMWDH^L"51BLV%+DA*6_\]SU#:94U MX+A(T)==B9HY_&H6U9U4DI=J,IN/Q_JA6V@Y.CM+9>W]RY)IHM.7WGD)3U\H_G+%QF^/! M9+ ]^*!7592#T;Z,>I= UVZ"=)<_E\>!T;DJC@=C<8@-YU$0%/[N^9R-$2"X\;G#'/0F17'W>8O^*L6. M6)8J\+DS'W41J^/!P8 *+E5CX@>W><-=/'N"ESL3TB]M6MF]Z8#R)D17=\KP MH-:V_5=?NCSL*!R,OZ$P[12FR>_64/+R0D5U4JA)&\YI*T6Y MC1Y?-?3BR;FK:QV1Y1A(V8+.G8W:KMCFFL/1*,*$"([R#NZLA9M^ VY&UP"H M EW:@HO'^B.XUOLWW?IW-GT6\%KY(+,^WEG"F_U(O'2A0VY< M:#S37Z?+$#U(\_=366B-S)\V(HUT&-8JY^,!.B6PO^?!R2\_3?;'OS\3PKP/ M8?X<^O>7[#_@WEU?7]U=7][BM5DMM='Q(ID^;Z.C*(F'*YMP+KSIA\TA8B;#NA;O$!!SEI@%;"$T:*Y9X M"G0]I\B",[I0$2]GRB2]6^%ZH VC2"I0Z0P&2Z!?M6B[)L!4^.V00)R\ZIE# M%YQSO62_/9G"[K2;]\AJ[[8PXF=:9)/]:?J?+UX^H66<7;V([.M' M>I/];'\ZH0'LZRQ8',WG8R\;C!7V$\R8XJE3Q*"061C%Q9 I'X<[-3+KU;E(V.E6[-=!4C M5;M&R&>=6%%+=\]#NJN^?O@?:O.=&<'M1+E1N@[40,)3V1CST&86/JZ1D[PM MYS3;GTL=YMG+V>P;AG;0)&G$7W)F289D 2-YC:*'@'RA#VFQ1[.#,=VYB!3^ M>"E[/EEG7VR9V F)UXN)T&@OFTUF])9Q#P6Z9:8;U( .LNXH2ZZ7C4](VK:7 M=GM_KI0O,";(->"L2%/^=9 ,Z5U2>7X\OO*NIH@[F=#)\I_1O?(:A=VF2W2$ M0:LNR,0#L$:((DD%/+"$-2LL#"$25-<>2=!K)04#6A G2[&4P[A,8.$FPD"/ MM0;6>'#6LDEO7*^->Q"7J=!AW41&-%<65[,TI;8"E\J5[\:2 =%BZTAZ^!)T M(?!28*,_L=&5)[51#%K (P1>4^8$X("7HJE8DM8( A 9< M3RA(0#\1AW1J>XVB_:Z#L,;YU'856P*[=.B]$QY[MQ1*M;1,R&IGRE;P;\FB M:!.#BI2@!/78IS8?RD+ZJ0@*>!=VZP@O0K/\!YL4I1D.JDC>&I321Q0RIHQN M6# Q%02V^])ZBB\;C?SA-KQ76MI$' (%N[(.Z8W;\#W[!%(X:D&,QEF+(/YC MT6H3C.423&*)1-D'\,$F9F\YDDQ52B:5G+'7() J ^+7)82!H*21LAWYV6I M+5I7A-FCG96L9K]*BZ?4$A5H MM[/^M-]M3]N5[JMXNQAC6J[0*VC:$JKCX6)O0+Y=-ML7#*2TX"U=Q+J8'BOL MY^Q% -]+AR'1O8B!?N,_^1=02P,$% @ ?7ND5AD*9./R"@ P!T !D M !X;"]W;W)K&ULM5EM;]LX$OXKA+=8I(!B2[+\ MUI< 2=KNY;!-@Z:]?CCB&',P]G MGIFAWVV4_FE60EAVN\X+\[ZWLK9\,QB8="76W/15*0J\62B]YA:W>CDPI18\ MJLKDLQ)5FIEJON=Z>B5QMWO>B7O/@JURN M+#T8G+PK^5)<"_N]O-*X&[12,KD6A9&J8%HLWO=.HS=G"8UW _XEQ<9TKAE9 M,E?J)]U<9.][(2DDO)T& M M"__-;VL<.A.FX0,3XGI"[/3V"SDM/W#+3]YIM6&:1D,:73A3W6PH)PO:E&NK M\59BGCTYJPR>&,/.U7HN"TY0F7<#"]$T8)#68LZ\F/@!,4/V615V9=C'(A/9 M_OP!5&KUBAN]SN)'!7[FNL^&4<#B,!X^(F_8VCET\H8OL)/Q(F.GQL#U3],_ M*VFD>_KOT[FQ&N[RGT,X^&62P\M0"+TQ)4_%^QYBQ A](WHGO_X2C<.WCQB1 MM$8DCTE__F8](>;[]<7EQ^MK=O[E\]G%Y>FWBR^7UP""E5Q;IA9,59JI8JED ML60$A17++;.*B=N2(%L*M=2\7,F4Y_G6H2B+%)1@!%Q3_P2>9L6UP%.6"FU! M#?5S$S!NV 8Q2-\9XE$;N=BZ!4NMLBJUQLD3^&^G; 1+U;K,A149LQO%Y@T. M:0<'EE6:%+8K@7\MH(MW24$NR>!0Z:KU*+>(*L1!42^1%/?9-PS+N5X*TX+G ME]CY%&R&O:=%NE*:712FROU"YZH?X#[MLR/_\C5AYA<@&7WF:)-)H-+P)JTA M. 88N2SD IM0V.Y:;+YE6\%U0)N25QE9HL6-*"KAK"ZP/7BCU@(2BE2P#/M+ M0KLRS$IM"@;.=R"0N#LC^NQR)\+Q9"=R6V.%22ZS6 M9Y]JR4]OU!$ L2M5&8@SK]\ [:=FN(_3+O@?R,)NB'_;EH*=<[-B5UQF[!H. M*33[IBS/V54%:>3*5UH"G:\U=&3NA3>WWL?A((H';K%KY^VOV' 4S.(I+J(@ M#$-Z,*X?Q$$T&^)[%+$OL!L>,HB&?K(GH#@(9R&+AA&NXCAB29*P:$0BID$8 M>9GT%@]F093,G,SQ<(+O\?C9<,8OAC/V'_]/.#T@X7 01@.W6 ,G+!^%SO+I MA!"8U6#.'#"S25>'8RT04] ^508%P.U>P' \RNC(JEYF3=6WQA0H$ N']7TJA:ZHAUP8'@^)75)] 8FT+ J J M'$TI]BKLCY&R\[P)!CR8M \6SXX FDJX!+#*E,*5,?G6\\Y2J6P#B)6XF" M"U:R5]&P'[:@09_68@<@OV5EI4MEG%20)"Q!/48#[W%P_ZXOGN:Y2FL0"$P0 MN%LV8PLN-;OA>25,B\'S;&KWM;OR7M:S+BS*1I625/$>E5($E8B@H M"YL0M M%)3=$)>_G!"?CO&:T7PD^KCUUQ\/0?+&QSH"DZ+SUU^F<12_;6ZG%)8IN82+ M0B%O^#P7;!B,QU$[UM]-)C'B!GQ@E28(HV 43]@XH8M9Q,;3I-8BK;06WL=H M#Z)@,HQ;6?X.E'F%]()JPQ)ET?/(J"69B\ M9D?)^+6[&87X'L]>U\OE*.J.K=#KO5F-94<81__-_:=VQUWN/^#_^T[<9#N? MP.HTY3G[=V(4X]."FN=R64>=SY.4UWQV\TQ_WL1!-Z7Z!-G)ASX[@*]I%PD) MD)Z16P-4]:QG7T5$EZ)I'4EY+\'[5M6I=I MF*3;(B>C&":(XO#M?8O?.A@Z=2G<&.IL!.>P8E3'T*$?,A#X!Z#W;%K*"AE7I>4ND#3WD$$HEW3 M3S6B77'K4&@3*^X[!N#.)3/TZ_<*Q1]4_?D$U*I HCSS^XPQI\XA$SZS4%WN M2LZ%5NN[9.K*U< ]31^R5%)O8=)=*J8\54.T0WQ1V4IW=&H-Y^!JH@.R$OKP MI1M^ ZC NLTT0"- V&AU4E'0*^273Y5V<<:S/]"Y>ZE8W5G0YAJ7(5P!OU=P M6V*+"N2LF<2T-5@)RS@&J_=X#S-*)"NILV/JV;;D7!+&Z@*>2P9V_':!1)]3 M81"TS1BE3>Y*B3:]H3(J#*]/2G2WX7*9R1U$4/.!5&N/TUR9NJV@4Y)Z0A,? M'>\\9(6U6LXK'Q/44Q(2LD O*+,*VA^J4?K4G#:Y/3@$[Z.Q%-0M*C-4HF'3 MQ.$L'+ 5]AN^* KOC1#>0':X=/(-%"EPJ(FB56MOZ:J\YMO6WU']J6JY\H47 M<7O=V]T'#A@4VWWQ+14OL/-W4SK% '%>$UXU]SRT*P00Y9E]1F_"2CB&R26* M:#A!?Y?>/+"[C%C6A6&7^,C>0EE/PLV&>?R76@'2YO"@<4:SJ[9,W8E"\TL% MA,?!_MJ=;!PTCN< ;-SZV=4U9COE[CC7?KFY'\A8HW&/O5Z_&\M=K#M%H,_A M_6L0=^-6%0Y^UTN!#O::M-_S#IB(S:<)/@\X^G/7"W9E$K5ML8+J6IF[GP;N^G/^%U' M#TBK@E>9M"[V%7/O -MN3!,1GA$QS/-SFU*H0>;@+/")YU10"+*53U[2C[E_ M4.8\D/^DX3D'!6&A?_*B(K]OJ,U!XB?'+YP<]9]E&LB3&*L0U K[$HE25.I/ M#VK[&G-=;;0!PZHJSWP* 0-)<2.R)IZZZ97RDJWDS["2=]QO_H+7_*2LR M);P=KD76MLX$^Y8TY0RHI4B)B79QW!BX%W.!.R H7>:HCWF1^SA"\?L!=9Y_ MRN$LIE.AYJR2#K8F@3_K&XJ)Q"T<[L#[+U_$%J?-CD2W#_<"/O) M_@E1U)_];2=$>Z<.>\HZ.Z@(?$RSZ.[95?(W:N9C9A?+4_RJW&^Y_VP0J2PDM&PO=V]R:W-H965TTC+)/TX='H0UAJKD257DG'X M]UW)'R$3H.D!+,F[[[U=:5>>U-K"V8$N4=&; M3)N".9J:36Q+@XP'IT+&R7#X)BZ84-%L$M969C;1E9-"X[\0CR;E&R#M^B^E2M#L[A'X:) 98568#";1O/SR\78VP>#[P)K MNS<&'\E:ZSL_^<2GT= +0HFI\PB,'EN\0BD]$,GXTV)&/:5WW!]WZ!]"[!3+ MFEF\TO*'X"Z?1A<1<,Q8)=V-KC]B&\]KCY=J:<,_U(WM:!A!6EFGB]:9%!1" M-4]VW^9AS^'BF$/2.B1!=T,45+YGCLTF1M=@O#6A^4$(-7B3.*'\IMPZ0V\% M^;G9)Y7J F&%!JYT45">;G-F+('_O' M)*I7EG3*%LE)P&MF!C Z/X-DF(Q.X(WZ2$+Y=*6+,5I1-5@T6PQFKU\R$K3_1?RAG_387DV9\CU/-[E=Q3 M4<< S#)J(:"SH[(.^G=1$))A]3 M4404K*RHL&CPH"Y,#R>ARX#/:)VCZL,9P-?#P>W'0#EQ1J2>H%' :F:X!991 M+,#*4HJTP2;'H_% S:PW-OI>4/]$N:-:'H'?=$M$X'_)VXN'A78WN@RZW"!" MT;05]&T%J"FD>=\5&H1ADIQYQ26&#B]W Y@_(AT_82#5Y>%4UTC)4]H]2?A^ M0LF=/^,@/C^.-::LLABLVQVI=24YY'10Z2WM'R.QKQYMHL%.;1>6R]E3QZZZ M_*G?QS@E[U^*D\&A'A?O74,%FDVX;*D8=:5<MP\/9U!*:Y8)N)TV6XU-;:T149ACE]DZ#Q!O0^T[2_[<03]%\YL[]0 M2P,$% @ ?7ND5M:6$O/N P *0@ !D !X;"]W;W)K&ULC5;;.-L0^N9/;T5"GM)DGI?7W6Z[FL MY$JXKJE9XZ8PMA(>6[OJN=JRR*-2I7J#-#WI54+J9#J.9S=V.C:-5U+SC277 M5)6PVSDKLYDD_61_<"M7I0\'O>FX%BM>L+^O;RQVO0-*+BO63AI-EHM),NN? MS4=!/@I\E+QQS]84/%D:\Q VE_DD20,A5ISY@"#P6?,[5BH @<;C#C,YF R* MS]=[](OH.WQ9"L?OC/HD*9PFGY#8;!3&$3>K:'(\KWP8CJV9D,V2 ,M+**K M41ODI Z/LO 6MQ)Z?KIHEHX?&]:>SM?X=>.>!VRX[&4[B'D+,?@&Q)"NC/:E MHW.=<_Y?_1[H'#@-]ISF@U+9VW MR(A_7G*W11N]C!:JY,S5(N-)@C)P;-><3'_ZH7^2_O8*U]&!Z^@U].][C_^! MN)\OSO^Z/__SCLX_XG=!GYB$UJ;1&>>$4K@26QKYL@TP^5)X,@VRVPB+^X)R M:5$TQCKD=Z:$A9:@QT98SU9M<;V6.>N\0[78BJ7B@/E[HYF&Z1[3$%(W>RB- MRADX 6DL?E!M'_92PWJ5+3;/:2K73V#!I MXV4A0A,PD[L@^@=$D[?4!/R(G2$8$H17EKD*K_25,,WV-U"+D079 M4JR98B,*A UY*UM!06UQ>WR=LNW972'1?T:' MB281^K3;[Q]U\!F<'"%?1)H_O:?"(52C\#AC"YW;C MHJ:33[MM!XZYFF/O5=M.O 4!L'/-\C/.]QXZ43$5RL":<.A\UH(6DLUA,(&" M+T$B"KX0ZN O4@(CX!"$-J$V@.*B:,V']-AET6F;>UV:*6<"\%?9A=Z L1/& M1BB8YED (JS;B!JE8>5:!& 7?/AB&1NQ-C+43"4=!D=6QOR'INN^U")ZS]IW MQ785AQ1B@(+U;2<_G![FX*QM_U_$VR&*UKF2VJ$B"JBFW5^.$[+M8&HWWM1Q M&"R-QVB)RQ*IP#8(X+XPQN\WP<#AW\'T7U!+ P04 " !]>Z16O334'!X% M !=# &0 'AL+W=O'80\T=25QI4B-I.)XOW[G4A]1-L?#7F*) MY#WWW',_Q%SMG?\>2J(H[BMCP_6DC+%^.YL%55(EP]359+&3.U_)B%=?S$+M M26;)J#*SQ7Q^.:NDMI/555J[]:LKUT2C+=UZ$9JJDOYP0\;MKR?GDW[ABR[* MR NSU54M"]I2_%K?>KS-!I1,5V2#=E9XRJ\GZ_.W-Y=\/AWX5=,^C)X%1[)S M[CN_?,JN)W,F1(949 2)GSO:D#$,!!I_=IB3P24;CI][] \I=L2RDX$VSGS3 M62RO)V\F(J-<-B9^)Y8\RRM65=WOA^330^"&%FJQ!3EM.RC9Z[&K8Q=56 M%U;G6DD;Q5HIU]BH;2%NG=%*4Q O^J>75[,(?VPU4QWV38N]> )[*3X[&\L@ MWMN,LL?V,_ +DX"?I9^*Y?F96,P7RQ-XRR'X9<);/H%W+.#?UKL0 M/8KE]V,!MW@7Q_&X@=Z&6BJZGJ!# OD[FJR>/SN_G+\[P?9B8'MQ"GVU<3: M92:YG(^1.VW^2TGH >6J6MH#AZP&/,I$KJVT2DLC0L0"VBX&H:TR308S8X3+ MA6N\V)?.F,,KM[;^U*K4DA/9ST!5VO+S!!J)2VF)Q\\$Y84A8#A*D!>2)%+[44]TH(-V!Y+ M&%M)*LQW+]NT,(E1^K'Y4!:U"[H5 \@Q"814ZTK 7+LL]&Z02+$A'_$]>*0A M8^?.1>LBB4P'95QH_""+.?1"#2+_=WW"90U5D@47F\]PAC!!8]D7'^M<0VVE M:P-G!5E$R]ZP3W5\\/;5:GY+B4NAKRL$IJ1X\?S9F\5B_N[K=#L5/ZW7M^G] M_-W+MJQ9S(:AVPP6C>G$[)3>\'G.B_;]YL! M_Z%+7*4CLZL;'QH>U=&A^5 31UV?ZJ3+H9,N3[; %[HCVY#(O:NXR--(;)7= MI*\2^6-]=1KT6\J\+ J0ACX]">+])LV3A&HX#H0 MNX,@*(!+Q7?<8EB,VKNL46@("236T&BX$1IG*41\M6O-3DIHPMIC_C3<7++B MDCD3D6=2D9 :%%0JYGCH1V#/F+>5#*7(<;,)W)Y"YCD:&(EB2@@&>5-H0A6= M#].?8=L'"&*!P(!K7(,1H!N[T\; MF411#R 9:K5MEN94E(I2$YZ@Q'DQXJ5 MU/=-B*^B>\6_HJ)8NHSQ>]J8/P[?_*0@AF43M=%_L=M41(_.8/DLW7D 8!-N M&F<87[Q!]XH(C<\^6\ZBBP#5F8ATZ9N*8Z&S7NS'=RWO8()3#&Z'0[P.VR?F M[8TTJ>&W?/T)_W!CM 2=MO-&,O>DN AXI+7=P\2A;W+(<85P1+)3[.Z_;*^'"\O7CC5E5H#"Q# M.4SGTQ_PZ16H8FWVBP$ #:"0 &0 'AL+W=O5YX5T/FW$!E?H'YM[2V]ICU+(&K631H/%8?^+N1.N:R%PZ51GV7AJUERE4"!I6B5?S#;7[#+YX+Q<1AU#J/ .P8*+&^%%_.I-5NP;$UH_!!2#=Y$ M3FINRLI;VI7DY^Q5NC.IJFG:.R3 MYAWR340>O8(\AH]&^\K!G2ZP>.Z?$LN>ZFA']69T$O"CL ,8#\]AE(W&)_#& M?>KC@#=^!>]8NG\LULY;DLJ?QQ*.>)/C>#P^UZX1.'>,^?^%#2LO="%L 7=E MB6&B@'2'T9/';+%ZY 8-WV97YW#3.@KE'"Q-O99:L 5KRC0RAZOLXNSZ,!0= M,9"39KC^()Q#BD?1]FM*BK54TG.G2FOJ?L?1U/BJFQ>T#FXIHWJ-%H8702\C M^%1)!\UA,B#HEZ0)/1WPA@Z:KZVT2('IQ B/EI=%I!DX6GQ"W>)!=$G&L-XE MF^^3#3OD:@M!42/+&.XRNZ0<09;@*]R'JD0!QLH-^Q,UWNO##&(2A2Q &T^F M5'Q!AX%'*X4"63=<) IJVE!(1ZHN DQ)<#IG(^=I(;:R[_I[Y]J33?^5HOU. M%\1.'I\I+I4H;ZV-"/@D5"N"*S/>,8FYE4;1T<][!Q%V.G+PV#!'>).0_%?(LNMS(*^!_"CJ],*^1R MK) 4W] F774'ARFUQ;,2NWD8O\V&\ 'I_MCK?S(B_=-DU 2^Y";3Z;^P5NA- M!_R:9AWT",\DJQ2039P/UFQMK)=_(2B.6QE5<&>L>>K@:<0,Y<+UB>,3J>0= M%179DKD-N;<.RY:698F,'J7YS&-C3=L,8*%U2Q5J2):&N*Z1U*RYZ:*DDKR8 MS?$Y34FNVH)-I&8UU[TSUQ6E'L"=L"0TL3MFN#!H:TE%+@8O!&ULS5=;;]LV%/XK!]X%"4#4NE^RQ$ N[5:@W8)]<)9ZNI?JH:\X-?6J;3I]-:F-6)].I+FO>%OJ5 M7/$.3Q92M87!4BVG>J5X4;E#;3,-/"^9MH7H)K-3MW>M9J>R-XWH^+4BW;=M MH3Y?\$:NSR;^9+MQ(Y:UL1O3V>FJ6/);;NY7UPJKZ8A2B99W6LB.%%^<3<[] MDXO4ZCN%/P5?ZQV9K"=S*3_:Q=OJ;.)90KSAI;$(!?X>^"5O&@L$&O]L,">C M27MP5]ZBOW&^PY=YH?FE;#Z(RM1GDVQ"%5\4?6-NY/HWOO$GMGBE;+3[I?5& MUYM0V6LCV\UA,&A%-_P7GS9Q>,F!8',@<+P'0X[E56&*V:F2:U)6&VA6<*ZZ MTR G.IN46Z/P5."=<)$ZNBOF#=?'IU,#"U9O6F[0+@:T MX"MH(;V7G:DUO>XJ7CT]/P6SD5ZPI7<1' 1\7ZA7%/J, B\(#^"%H[NAPPO_ MP]V%DBU=@JM"62#DIJ9+%VRNZ*_SN7;[?^\+P( ?[<>W+72B5T7)SR;H$T<433E=#%)7@:!BR)?"=>RA;%4%H3OI>S'&"^W<\2%F<)^1;L]\<(L"<4834) I9& M >61(Q$G/DM"GW*+\8>I46#C[> M@)FE+,J#S?J;(HE5/U(.\XAY44C) !\F$SPT,]\K"3J=_A4C[A4FZY M5!LNA*KF-J[#J--?#*AG/73%2][.;;:&G8"><[.-@S;*(*!^(^1XU-BE?.2G M+ S]8P@9*C4Z/I"P9$Q8U]J(UD7G=:$Z5+$F%.3> M=.U+S$&+^]]W]WO#_QT"K0$CNK)7"LAP8G^>$?<4,P2-9J60I5FV$P2^#8+O M)RQ!X_I^!!6?[B3:%3,0NQCN89:A&W-ZQ[4^H0O1-.X0"JP"#%*W+WT&\_?G; MX\QW2IZM1_YE*@#&/Y6(M'5KM/G5!!^53UON>$_/C1E[@ET>8O$">SL-C,;- MF>_G^$?_IFCD;ZZ!Z<[G.V;3TEU2- CTG1F^Y,?=\1YT/GS^/ZH/ERCD82DZ M30U?X*CW*L5<5Z16P;DRA)T" "Y!0 &0 'AL+W=OJL8)+O-=@FJIB^O<" MA=K-@C@X;#SP36G=1IA.:[;!%=JO];VF*.Q8B"VWP61$X0"LRL8V#TV>(2A7!$)./7GC/H2CK@\?K _L'W M3KVLF<&E$M]Y;LM9=UO(JWS'+$NG6NU NVQB3."[=I:RL MIE-..)LN->;D+0V\ESGF MS_$A:>J$)0=AB^0LX1W35]"/>Y!$2?\,7[]KM._Y^O]O%'[,U\9J>A _3S7: M\@Q.\SB33$S-,IP%Y *#>HM!^N95/(K>GE$YZ%0.SK&G*S)=W@@$5<"R9')# MEW(K82[(/$QF"&1#>'9GISHX6^-T!X=B7()J-+!G!;.VH&@?R0XU C-TXI+H MT1#&EJHQ3.;F<@(+)CR24JB+3TPVY';8WR2\AG%O.!C#LM$:I84:-5JD98D:6XMDO2B@(NX MER3CRW]DT'/*RNX]D8HXZD7#,9RZL_#(3A7JC1\:3@?5:IW5[79S:=[:\6]Z M.]2H[(:35H$%0:.KZV$ NAT4;6!5[&ULE59M;]LV$/XK![:5;Y5Z9K>YP9F-LJSQV;3EW6ZM5,6QJF[G@/)ZWJNYFB^MA[(-=7)O> M-W6G/UAP?=LJ^WVE&[.[F06SP\#'NJP\#N:,V4"1K8[Y2YUUQ,^/DD&YT[LF"PL^=OM5- M0X;0C;_W-F<3)&T\;A^L_S#$CK&LE=.WIOF]+GQU,TMG4.B-ZAO_T>Q^TOMX M(K*7F\8-_[ ;UR;9#/+>>=/N-Z,';=V-7_5MGX>C#2E_8H/8;Q"#WR/0X.4; MY=7BVIH=6%J-UJ@QA#KL1N?JC@[ED[#E9T7?B^NY1QA:/,_W)E>C2?&$20GO3>)9$//79V((IQC"<]87GT81@=G ;84!:*@[ MN%76?J^[$I:MZ3M/DX=83_E_%N&T_Y\K#?F$EQ_PU(17'G*[4P[PMS$-ZA[I MA,M]97J'.7<75YAVYU73J$&:O_I*6[@UG3--72BOB\EO>%E:X]P%7,+/JNLI MY#T1X#G(*&)"Q-A*4R8E#86A9%&4P:IW&(]SD)MV77<#CH, )T,.+YZE(A"O M#]T17D0)H+E$XG\D^2D/D(AY-3$19)PQ^F:2Q3R&,!8L%ADL\[QO^V8(HVZW MJK9XB7E 2CG25<(9Y^'%Y,0T< _8:7\"[CF(# &##%M[2$Q!1J 1G*%4-%$J M.D\IO/"+'G5 M*&0'_.)/0@-QZRO_QE/D)3T"SXA*[Q^X8MJ>GV*<&?QGR;< MR"'RP].=!%MK[NH"Y>KTZ#ZMQ)U[ M^"NX'9X"M&SU*!I7U5M'! @/G BBD 7QT,I"ED:<9F7*^- *PH@EZ O-"B9% MBGJ[TYWJ\,;KC+_TYA*ELM5>D_.")R "9'<* 6=!DH'D+,TRC(?Q-*;!-)#P MV:H"BP0L((:\>NIVJL5\!2)B/$DA#%@4I)"BTF(.09"Q.!#(6A;+%)*,94D( M*Y5_;4Q)@+&,""+&S"$ZKA0$-(R%J$\9I1A )&*620I4R 1U3V,B19,\H%F> M,9F0-@3ZD/%!.(@?HK+/J"2>5!+_9Y6\=;YN1S&4I=4E-F'9X2W5/%#'*2F< M!3DMA8^:BBPBN9YPU82K1MP'7-??L'9S>%4_O(I'C3@&QYQ&R=A1"J2J#;Z! M:.V[5B@->L:1\B-^@1S$T \WL&"I#*D7TJ&FX<#X"%G)))X&MF-BCD0*8ALY M%3,>AX"JQ@IRX]%6@$."9R>/9GY4UR#WRZ%ZHRL=W1]+G&ET*A"78UUTOWRL M+E&I98TO0*,WN)6_2O NLF/%-G:\V0Y5TMIX%-K0K+#(U986X/S&&'_H$,!4 M-B_^!5!+ P04 " !]>Z16HD':-OH# ["0 &0 'AL+W=O>^['(37?:O/)UH@.OK2-LHM1 M[5QW-IG8LL96V+'N4-&7M3:M<#0UFXGM#(HJ&+7-A$=1/FF%5*/E/*Q=F^5< M]ZZ1"J\-V+YMA7F\P$9O%Z-X]+1P(S>U\PN3Y;P3&[Q%]WMW;6@VV:-4LD5E MI59@<+T8G<=G%YG?'S;<2]S:%V/PD:RT_N0GOU:+4>0)88.E\PB"7@_X'IO& M Q&-SSO,T=ZE-WPY?D+_.<1.L:R$Q?>Z^4-6KEZ,IB.H<"WZQMWH[2^XBR<0 M+'5CPQ.VP]Z4/):]=;K=&=.\E6IXBR^[/+PPF$:O&/"= 0^\!T>!Y:5P8CDW M>@O&[R8T/PBA!FLB)Y4ORJTS]%62G5M^U&KSTQV:%BYQY>#MG5@U:$_G$T?@ M?LNDW %=#$#\%: $KK1RM84/JL+J:_L)D=HSXT_,+OA1P"MAQI#$#'C$DR-X MR3[2). EK^"%^"ZE+1MM>X/PY_G*.D-=\=>A8 >L]#"65\J9[42)BQ%)P:)Y MP-'RQQ_B/'IWA&FZ9YH>0U_>DO*JOD'0ZU"50_R.(ASF%TKM?*DKGXI2D[*L MP\J[<37"6C*DA9AXH,\TLLL5VAV1?)/SC< MHI+:P&_:H86J1[\Z9:#H@"&C7HE6&R?_)K^!AK2V%ZI$XF-=P#WA;#HM@'S# M2<*B)&>D?MMAT&_S""? 9P6+XR2,7U01A)F876JX6<2&6=:!H/12A2E4U?>1BIJ%1H'1CA$VF$VOCEM=$M MQ./9&W :\C%_ T7*HF(*!6>S:0KW._C ZLGO 7;GG9&-9Y?][^SX. KL,O^. MV:Q(=L]I'K-D%H5WG*7P$:T]HT/.&)_'@:*3!/>6.BK.LU,:1!15<@I?]RX# M.J/L(H+].?4*- M[S-#+6R0JA3*X+V&AJ8*JE)VHF&P,=K:[^AZ!N(;*0?="CH.Z<-P -A_R7^@ M4Y'2R308D/ 2*FGN9RGP@D6\",T$/&8\BOTXASAG/(O\N( X9E'$X:ZFMA%K M2A@41<22-#M8GLF+"ZU%LPG7-A5<]\H-=]M^=?]G<#Y&PO=V]R:W-H965TLDCFO MB&#SL]&YFJ G,\Z_XLO[[&QDHT&L8*E""11^[MDE*PH4 M!&9\:V2..I7(V%^WTJ^T[^#+C$IVR8LO>::69Z-X1#(VIW6A;OC#[ZSQ)T!Y M*2^D?I(')EPPP6E'EE?NEC$X<>0VSO87 ;!E?;;11I*]]11:>G M@C\0@:=!&BZTJYH;C,LKO)1;)8": Y^:?F#@DB2'=W16,'ET.E$@%$F3M!%P M802X>P1XY".OU%*2WZJ,99O\$S"FL\AM+;IP!P5^I&),/,Y>/1H2_6P06QHEHK->_O6,K*&1-ZZS!'B;R6H%(>D4IUT6(.X,-M8_$'KXXO:R' ?/)IQ00F 1+X5 MVBXN0LN)?'*55]K::P$8)]23]II]J_,5H(ZR2 68F%A.D)#82MR8W'%%BT9# M)S3VK"ATS(E_H * &-[1LVS8+QP\: ML_=+FS=N/9?E6D$^%8."+QI)679,[\&8!=PFP^ZR-DHQ49YLFRJ)-T[($Z,"+!W; MS6K#-CP2-P1O'#:K9^JR7*:\AK" >+9#CS\.;?(:?GP'?K8TA&.([6L2C*.0 MO!X AZ #A^#'P $*3D+B03ON5&/:KJTT>+<+) 8U[0:YOTD/-UX*$MOIB\K)H7-$SC/H MG3DV !P"(-<2R[4]A (K"I*M%$8NP*Z2"Y7_8U1 ]#6M \A#]TC?!%(DA=9) MDB@BD1.2]Q7D)T-*-5"*W2GVN$(@-6CC> X!,.G7BHG? 7%LRW,TSEB!%VJG MWE=I46>@^IZ*7%]2GP4,.W#&+@P-1:'G'PC[@0TUTF[@G> ]J:'(Z]@B*\;7 M@BN6*Z8'J>+)TOMR"6$ZQI)\IMT>>QO*& 6A0/@QI6,=Z^_[:O=\_1EM>U-> MUJM5P; UP.6D5"[)'.E[*J#!@\W,_4Z:KQ/Y$L6O:)YI5VB)>"1!E0Y"1G+3 MA4O040MM4I>A?7#M@U=GL"G&[0+4I1 FF&"AY8?>?L[Y)N U*;MN!\/'(SN0 6@,.V@,7PR-GZL6M7$D00NNM 5M81OH_+0NP%WX.*CN9?B(TUQZ/H$RD4#>>NC-]K?#"B@3VN!^U,N4XUK ((3 N(>@@%C6:L/2(?>+7H]X_-X=>,D ?M\#D M&U$'&]%/P\96RGX/. 85_@*.7\#Q"SC^C\ QZ7TV*YE8Z(^#\-<&_39?T+K= M[OOCN?GLMCYN/EY"8B]RT%NP.;#:XPC^:PGS0="\*+[2'^%F7"E>ZN6247 / M#P!]SKEJ7U!!]U5V^B]02P,$% @ ?7ND5HL&1/H^! _0L !D !X M;"]W;W)K&ULK5;;;AI)$/V5TB2*;(GU7# 8""!A MG&AW%:^LV)M]6.U#,U- *SW=I+L'[/WZK>X9ALO"V ]Y8?I2777J=JCA1NGO M9HEHX3D7THR"I;6K01B:=(DY,U=JA9)NYDKGS-)6+T*STL@R_R@781)%W3!G M7 ;CH3][T..A*JS@$A\TF"+/F7ZY1:$VHR .M@=?^6)IW4$X'J[8 A_1_KEZ MT+0+:RT9SU$:KB1HG(^"23RX[3IY+_"-X\;LK<%Y,E/JN]O\EHV"R %"@:EU M&AA]UCA%(9PB@O&CTAG4)MW#_?56^V?O._DR8P:G2OS%,[L-_85/)1@&DA;$JKQX3@IS+\LN>JSB\Y4%2/4@\[M*01WG' M+!L/M=J =M*DS2V\J_XU@>/2)>71:KKE],Z./S.NX1L3!<(],E-HI(A; Q=/ M;";07 Y#2U:<;)A6&F]+CS(S55"7_G/*Y5'E]6J7KG(%9 ML11' ;6&0;W&8/SA7=R-/C8 OJX!7S=I'S]2)V:%0%!SV($W?LLEDREG B;& M(.6-R0R^<#;C@EN.YI0KC<9.N^*MKGW(N 2[1)@JRJXTF+F548)GS-+FE@G" M@_#H"K)$(Y6E-C&IYC,28#.U1MB@1F &YDH0*U"U>:VJ,/3 7 [(&><<)3Y= MUIFO#N\PQ7R&>GN>P).RY/\77*. N/HFU;?]RNTN?LS';P!39I: /PI.[OI. M> ]Q_Z;5CZ.#U8=WO21./AZLXG[Y0DV['13"OK7-)M5>4K=>. M6E$2U?+'VUZK>Q.?VY;>SH^\(NM)0LC;ASY4FO=!)G36Z20'+E0F=F*[H(E= MI0U<(5@N%^0#I%03/$/-//.^AWZW=R9FY0V9ZIR3*.]>C5KUZ?F.$PD;:OV&[C];2-N\O, O M\#N3A0O(EAVVL9ZDJ48O35I+@#%5^R17A2N3%>,96 4T%PC49)MR&467;[-Y M1$AE 30DMULGM_OFY#*M7PC(EN,=@Q*U*ZI+QZ\_@?Z;H;@L/Z+D2L,?RI(5 MC;X$*"ZL9L^]Y.>[H<$;9S^1V ]CL5_MYV\.L%_$EY[F(I=CQVXWO=9-U#\Z MBUK]?MO+?GI.14'_5;Z>>4X=8!VR0K)<:D!56$YG]6D]VT[*D6XG7@[&%*T%,1T(G-/3Z.J&FE>7PV:Y ML6KE![R9LC0N^N62YG/43H#NYXJB46V<@7KB'_\'4$L#!!0 ( 'U[I%;A M\/&C,P0 /X) 9 >&PO=V]R:W-H965TXL%#/.BF3.'9S@D)UMCO[@5@&JN7*TT0XFZSU$A[!_[Z^MS@*]RAEU4#K*M,R"XMI<"VN;F*R[PS^J&#K M#OJ,5C(WY@L-[LII$!$AJ*'PA*"Q>89;J&L"0AK_#)C!/B0Y'O9WZ!^ZM>-: MYMK!K:G_K$J_F@9YP$I8Z$WM'\SV(PSK20BO,+7K_MFVMU4J8,7&>=,,SLB@ MJ=J^U2^##@<.>73"00X.LN/=!^I8OM->SR;6;)DE:T2C3K?4SAO)52TEY=%; M_%JAGY_=M7UB22'\/<(2%?>.73SI>0WN. MO6]+*-_ZA\AN3U'N*-[(LX"?M!TQ)3B3D51G\-1^R:K#4R?PAC6R!U@;ZZMV MR?ZZGCMO<8/\?6RY/5I\'(V*YLJM=0'3 *O"@7V&8/;S#R*-?CW#-=YSC<^A MSQZQ",M-#_K"BNAFW'L%O],797:H^\#/$.[ ?8C2Z7D62RQIW*>2>I<2"Z2 MY)(^)F.NHC'Z.D_*.DT+OA"7+!815WG,9,[C9(Q3/$M3G%89C[)LGX*E-%)*K),<>NLM443"5CRF41!Y2R>.>:[ %3N+AQU0\$NPG)M-1@HW( MNY%2HPR;;XDDOU>D)!4\58)HICQ-(N*=];R3/./Q6!Z12.4)3_&+0 TSQ2[2 M"!WB*$;!TE,"B2SA8S7&7L8EZHAQ1!Y1')$K'JD3CH?ZB)$B?;*^D:.<]!$C MB0VQ>LNS:HMZ0SKA=G/'D"L4\@5M'%X)Y%;29B^J7D#:K;JAL^'K]V[T$:.: M0DC3%E4]X,[!;P%:5AQFXR@]"@@:@5&!RB ;Q]S*;%O6E0_L2E3/#=+WYBTB M+MXT@-$0!78CKU](%T=0?:F[_U-]W>XZFIM?W@9]W>FO.7UW5E3*FA \%Q%5 M3:H4^^T GQ-1VYW0B"[1(D8F(I,\CA3[C+KH[NB&%WR>.%R:4(HG<8J0"8_5 MH]G]X^;Z_Y.?S7O7T:8DV6%55S# EVC498$ MS/:OC7[@S;J[X>?&XWNAZZ[P@0:6#/#[PAB_&U" _9-O]A]02P,$% @ M?7ND5C%?I.]G P 2@@ !D !X;"]W;W)K&UL MM5;;V_PI\2- MW1N#\V2I]1X]8?+S#3ROI?V+2VIVR<-99TM06S@DK6 M[5<\;N]A#W >O0!(MH#$ZVX/\BH7@L1T;/0&C+-F-C?PKGHTBY.U>Y0[,KPK M&4?3!1KY(-S-@*AS>(_Y2M8KF+G+DB310N]>+!7:DW%(?)Y#A=F6>]YR)R]P MIW"M:RHM7-4YYM_B0];9B4UV8N?)4<)K80:0QGU(HB0]PI=VSJ>>+_U_YS_4 MEDS#T4;VI8M82)LI;1N#\/=LR>8<4?\^Z,A2^R@\VW/ M_1MMI3.VA_PY?N+,\_+39&7W-OX*%YAAM42S6TWZL$$H10Y4(A1:<4%P,F1- MR!=!8 0AV(U815Q?"*/]$@@F@PBN'U#[)'/ZS$$'M /$C/?@Y@Q.H< M(!U$%_N >.BWSP\ VA.2P<7Y(<"1R!IUD34Z^LZ'DZ4/OW'EA]Y';0^7B*.D MAY/A_IOP(%=^MDU#?N6 $-MH-IAIPX4%2#_'$#YRN[((]Z5!A*JM/^CJS_G.LL9!TT@&%M3J3'#,Y5V(JVWBLN3M:)%+85HA7T$O[HXOTA$=G%R.X M>@',4@W)K\(W(,X247DI(8OE6N[M'+^%N!]'0Z:*X-!+A7OUO4*S\EW,0N;N MH2WUW6K7*&=M?W@V;[LL7P+7-0L*"X9&@S-^']-VKG9">NV[Q5(3]QX_++G9 MHW$&O%]H3;N).Z#[^S#]#U!+ P04 " !]>Z16U-@LG6$$ !P"P &0 M 'AL+W=O(!IZJLM9SKS!F>QX$.BNPXOI$;K&F+VNI*FYHJC:!WBKDN3.JRH"% M81I47-3>8N;>+=5B)AM3BAJ7"G1355P]7V(I=W,O\O8O;L6F,/9%L)AM^0;O MT'S>+A7-@AXE%Q766L@:%*[GWD5T?IG:]6[![P)W^F ,UI.5E ]V_3WSG?R9<4U7LGR#Y&;8NZ=>I#C MFC>EN96[C]CYDUB\3);:_<*N6QMZD#7:R*HS)@:5J-LG?^IT^!X#UADPQ[O= MR+&\YH8O9DKN0-G5A&8'SE5G3>1$;8-R9Q1]%61G%G=&9@^%+'-4^F=X]Z41 MYAE&]WQ5HA[/ D-;V(5!UL%=MG#L%;@8/LG:%!K>U3GF+^T#HM;S8WM^EVP0 M\!-7)Q!'/K"0Q0-X<>]O[/#B5_ Z#_^\6&FC*"7^.N9C"S$Y#F'+Y%QO>89S MC^I HWI$;_'3#U$:_C) <-(3G RA+Z[%H\BQSC5<8U9RA3GP.H-TK4&S %TK]"A*H-&=J0 0F>%;WB/NR0DOR R):(.-NU+*FB+5+&=0%Y MSWO$*]G4YJ59]\Y9BYH 9*/IO1Z?=WYR5Z24PPBWF$F5M^,E?Z8CP+23O3:P M1 5W!8'#18O;:]7-K5S D9_Y 7$093L1W'4CGZ$\.0LI =+_"2>M@,V#=\P M"T_B&,[\.)W0+TM3^ ]RLO^[G!.K >MU8;TN[$#.U$].DW; )NP-,Y(S2JR> MH?V-3BP/X1#>K1KA_JPA=ZL#H$FM<"S/N M#;G6,A,4R9PN#5. WO$MU'21:S2F1.E%P)2N*0V'[ Q?G3%8X$-Q!'J\'-RMX MO4'+@!\PD(Y!]H*!:!DH;)=0I&6COD5;V8K+^\2D;+21(K<-?[*S':=TT5TR M4=7_HZJ_,TD.9=JX;"^M(, -K' CZMJF*6VZ)2(RIY28A'Z2VK(=,38=P^>: M.KN2>I'+!U#-/43-K5'3$D))=8B6A8;3: H)%?R_.!-9>RH=THPG/DLB&M"&IZ\<$L%!%U2AVKA> M3U.4J 3;AJA_V[>3%VT7]6UYVXN2M!OK=(EK,@U/IG0TJ+:_:R=&;EU/M9*& M.C0W+*@E1F47T/>UE&8_L1OT3?;B;U!+ P04 " !]>Z1611(U M=XJM=\EIXKLX3;?A[Z>CDC QF!RY=Q=JGE+.K2%TXZZQ.6B7M(J[]UOK'USL&,N,:'HJ M^0V;F]7Q(!_ G"Y(QE R45_) MUR8/.PJY_X1"V"B$SN]Z(>?E>V+(Y$C)#2@KC=;LC0O5::-S3%A0KHS"KPSU MS.2L7'/YC5*84D$7S&AXNQ%;;"1LQ<]8>]":D-=P%A6YGO( M?Y_,M%%8(/]T!5W;C+MM6M(#R>M70>J_Z_$X;CV.^ZQ/ MKFJN@%S #58W5?I7.)4E4E(35]5_"+D1<,H)*S40,8?SZ:=+N*P=T5WA]"[8 M'4ZS].M7>1AD[Z#8=>#6.5 \<*!1UX),6^*0?>.R^\XI3B_RYT)5RZ;G$0-F] MY2>F1C6P=X'<:[P;Y.L5TXA;NX!<++3%@@B@=Q7A;0:^?0=UP\R*U< V=H"4 MLA*H)J3%E[D\!M6JP'%@2V=?C#)*G71LN9 MEXZQ(_CC(?(_'7MA'K@G?PRN;8;OVNN7VIC?\"Y((V\/+;]+,N'V1B"L6UKL0L] M&>('##T.PS;T'G)E+;FREY*KKJN]O>WLJ[WOIE6OW:<:'&UHP<02C&MR]2S* M_D6&V2:F;;TT?-K;Y6CMBNV/PCA7Z5@LTK;/H4-"2=- MN, M[5&?NUXI'+;*>DZB=DYZ"(,KPR[6(@Y>-':EZ"58F@CL03N^=2D$<8[U M&S]'=[261M9VD,"?;8]_1BE,T='TY:TB0N$PML43>7&4UE?LT#=U3I5-A-D# M2#OM3A1F;@N2)0)FD/5NF&O[XD]G7!M;AYIP-QD$:6)_XS%<(=^L0P&ZG89P M,L4&4X&_H9X^"ZV%(WC(D[V7(9[%3\/Z&K N#O6NW,VA/7=>P);6G6J_"3TW#IQHB\4#G/86?[0+=%,FP>+&3CS, MGF5!@'T_!&S'+R_J. ?Y:^EP?&HVO7N1]-AZPWWE;BS9$8[Q[N2JJ4[Q&I< M Z>$^J37OFW/R2?U\?"[>'W(QHPNF=# Z0)5_6&&@Z*J#Z[U@Y%K=UB<28-' M3W>[PK,^558 OR\DSG7-@UV@_?=@\A]02P,$% @ ?7ND5BM60WR2 @ MUP4 !D !X;"]W;W)K&ULE511;],P$/XKIX 0 M2-.2)FDW2AMI'2!XF%2M!1X0#VYR::S9<;"=9?OWG)TT%*FKQ$OLL^_[[COG M[A:=T@^F0K3P)$5MED%E;3,/0Y-7*)FY5 W6=%,J+9DE4^]#TVADA0=)$<91 M- LEXW60+?S96F<+U5K!:UQK,*V43#^O4*AN&4R"P\$]WU?6'839HF%[W*#] MUJPU6>'(4G")M>&J!HWE,KB9S%>I\_<.WSEVYF@/+I.=4@_.^%HL@\@)0H&Y M=0R,ED>\12$<$]P!+B.7@#$ R#VNOM M7N5'9EFVT*H#[;R)S6U\JAY-XGCM?LK&:KKEA+/9/0IFL8 UT_89MIK5AOGW M,O!VRW8"S;M%:"F0:F83DN ^H0 M@_H1@^S-J\DL^G!&=#J*3L^Q9QMJR*(5"*J$6R4EU;32\'(JI_2?C7!:_[9" M8%*UM76!#:.2 *L@'Q7H04%#"CA=,@,==9E;+6&;5N<5]8V!4BL)K"X(063X M1(/%T#WCQ7G"#C4ZME()FB%4F+PF9M4:XC+OYK"M-"+(ON30E1Q0P>356#'N M$\/&2W\-Z44TF=(ZG46P'L7-9C-(HRMZ3]*63&,"IW#JKX5'S291[_U(,22? M7JCON_%TG%HW?;/^=>]''JG<G+ T"OZUH M\J)V#G1?*F4/A@LPSO+L#U!+ P04 " !]>Z16L CM$&?;%)BG-FYIP9C99[ M;;[:!M'!4RN5746-<[O+)+&\P9;9"[U#14\J;5KF:&OJQ.X,LC(8M3+)TW26 MM$RH:+T,9[=FO=2=DT+AK0';M2TSSQN4>K^*LNAP<"?JQOF#9+W[0&G\E6ZZ]^\ZE<1:D/""5R MYQ$8_3WB-4KI@2B,;P-F-+KTAL?K _K'D#OELF46K[7\(DK7K*)%!"56K)/N M3N]_QR&?$"#7TH9?V/=WIWD$O+-.MX,Q1= *U?^SIX&'(X-%^HI!/ACD(>[> M48CRACFV7AJ]!^-O$YI?A%2#-04GE!?EWAEZ*LC.K:]UVPI'+#L+3)5PK943 MJD;%!5KX^8%M)=IWR\21+V^1\ %WT^/FK^ 6\)F0&@N_JA++E_8)Q3@&FA\" MW>1G 3\SYL49O&),O AXQ9L2OQ&62VT[@_#7U=8Z0]7S]RD6>B>3 MTTY\1UW:'>.XBJAE+)I'C-8__9#-TE_.I# 94YB<0U_?4X>6G430%5QQ;CHL MX3=4:)B$3XJ"9XHCW/5^[:GHS^*?CO[@J!X<2<&V0@KW'%ADG=,@1M^#E:4C M+CLJ!*!&= UZMDOJ; R\6RU%R1QM-DP&NWM?SQ;V2/PS"Y66]/*@6G>6 M7-EWET UP9NQ*. &.;9;-(>3G%@8W)*A)K^&6LH8TGP,VXO](\SC;):'_\G\ MPPDKJ57]WJ%I7]AELWB69Y#-XVF^(.N\B.>+PB^F<9K.X8S$TU'BZ;^6^%A2 MCN+1MR918^!:,M&>U/KM5ZP MM\GL&N9B3S:K:X,U78DIWXH0 ;]U1S4FCBMI+UPC>C=#\,!:W?E^5MI[85O] MB!?PT'Q_\#\4U']DQ.O#@S[0T0T#52?E<\\LQ;@C3GA?@WD\F_CBF<0?BN(5 M1T=HGC3 )X[HR? LT*S84:5:2WS1JPWF4R@6*3QH1Q2^7?R*0/#4E A(K M,DTOYE3?IA^[_888"*-NJQT-SK!LZ$L%C;] SRM-E3%LO(/QVV?]#U!+ P04 M " !]>Z16P?S_[G & "R$ &0 'AL+W=O&/DQ/CUNVY%?:37/_)>WL2DE?(2MLG MK-W<+)E T6DCZWXQ:E"+QKW9;>^'C04S_Y$%8;\@M'J[C:R6OS/#3H^57(.B MV2B-&M94NQJ5$PT%Y=QJ_: T7LIZ+AI&K-.Q=LWG%]?[QU. > M-'-:]/+.G;SP$7D1O)>-66EXW92\?+A^BKJ-"H:#@N?A3H'OF3J$*/ @],-H MA[QH-#BR\J)G& RL*>%,:\3 6?&]$UK8KW^?S;51F#?_;/.#VR;>O@UAZ4BW MK. G$P2+YNJ&3TY?O@A2_]4.(^+1B'B7]-,KQ&;951SD K9&<)O".T5N5Q@3 M'\R*XT]Q#K6++*?( L:E6(V!@3W1X"S9:72EWC^"ZU^NL(\-=VO !.8/ G!] MUW*X8'H%ETR4<(78Y0JNI6$57'8H#>$(ETH4'#[Q&]YT'#Y@#-\VA:Q14E.L M4/]H&H13N]G5BBD.OT&4>'DXPT;@^;Y/']+^0^@%>83O)("/:+>"7[@9-(H?LB](,ZMS#3*\)VF\%1WAL]V9^@> M_Z<[G4/\:.H'4[O9X$ZT//&MY;.,/)#WSLRM8_(,=B1\,B9\LCOA7V]'QC6& MD8^:+$B3&])$DRH48^;489OJ5!OJ,*<.+/J<8!NA\W 4UA@>>AL;GW:(3TOQ MT59<0:%L,90XOVV5O.VU(7$+66&]%ZGP:*/,G?4E1^^W-2T*O1C3 M-YH1Q&=^3B2!./Z(4Y%:T9\5IS HJO8'SB/?D/_S1AQPL"V_'^8Q /M.B;M^=*1QSNJ9]KQDYQ78MF?2QQA$\$Z MFG6471TYN.P4^7I^Z MAG6E( ]C<0![@<- NHL,GJJA)6[(82;R7PG$ ]5W30\8UF19^)A>E8A3(-^\8;:"O4$'#7OUC342D? M:@E%#!O8Q:U:;F]IU9WG(OD$*TK)G1W(+JU4AF QYS]8LNA,A\A8X/FX*026 M*SGR^6#@ ZAXP&\+WJ)0S$%M#SHE7J\009^WJ+-X'JKH4*7Z Q:="S//'972 M$.N<']EQX0Y=<8ZES83W>W>;1[*3 +*K[ I?XAW7^5 MNR&[CI&MO97.I4&DV^:*(VX53<#QA91FZ- &X[\I3O\%4$L#!!0 ( 'U[ MI%9?W'QQ?P( ,& 9 >&PO=V]R:W-H965T$ ]NPW79#_/&<[304 MUE5]2>SS??=]=_9=OE7ZWC0 ECP(+LTT:JQM)W%LR@8$->>J!8DG*Z4%M;C5 M=6Q:#;3R(,'C-$G&L:!,1D7N;0M=Y&IM.9.PT,2LA:#Z<0Y<;:?1(-H9;EG= M6&>(B[RE-=R!_=(N-.[B/DK%!$C#E"0:5M-H-IC,Q\[?.WQEL#5[:^(R62IU M[S;7U31*G"#@4%H7@>)O Q? N0N$,GYV,:.>T@'WU[OH5SYWS&5)#5PH_HU5 MMIE&[R)2P8JNN;U5VX_0Y3-R\4K%C?^2;>>;1*1<&ZM$!T8%@LGPIP]='?8 MV> 90-H!4J\[$'F5E]32(M=J2[3SQFANX5/U:!3'I+N4.ZOQE"'.%I]U327[ M17V)WI!953&WI)Q2# MK*#Z%Q^CV%YQNE,\3X\&O*'ZG&2#,Y(F:4:X*H-$ S6^%7N$(.M+DGF"[(22 MG)$+)8WBK HL5%9DH<$@4S"H%;EBDLJ28X5 *@63D25SG;XITF.3QYH"R4:]L=**RH(')^O"U!@6C M)PJRP_SCGG]\(K^&5FE+EQR."1@_$3#X3T"\UY@"=.W'C\%2KZ4-/=I;^PDW M"XW]USV,1WSV-<.KXK!":'+^%GEU&#EA8U7KVWRI+ X-OVQP2H-V#GB^4LKN M-HZ@G_O%'U!+ P04 " !]>Z16T!=S(W # ;"P &0 'AL+W=OT[J/D, M+%XFN7;_9%O+1@')UMK(LE9&#THF_)<^U''84T"<=H6X5HB/%?I/*"2U0N*( M>L\AGDGO8 -B#>0.,ED(YD)[ M2J9Y[H:4DQOA4\5NO+P&0QG7KU#DT_R:O/SSU3@TZ(7%"K/:XI6W&#]A,2$? MI# K3=Z('/)#_1"];RC$.PI7<2?@!ZK.2-([(7$4)RW^S/Z_>MSA3M)$-'%X MR1-X'S%UIUDFU\(P49!;)06.,\#4-YI(168K*@H@3!R*,9&QB@/Y_!X!R8V! M4G]IBZZWWF^W;B_]I:YH!I, ;[4&M8$@??%';QB];@O-,X$=!*K?!*K?A9[. M, T47F/"&5TPSLPW+ L^&Y7/QN_'^>$CX&&'#M96J4W:&XPB^QN'FWUVG?9_ MD=V@83?H9'=35I0I>^B$2ZT!CUZ0;$>9XHK1;>0\ZF"/W#&KP7_H/TH/%3XVB#M>U9:.;DD M<]S22Q^L$S(W5!F"A1>O[?2!Z2^7KHJ<1N>G4:\M1)VN_>SE?2:P@RB.FBB. M?FN5&SUGH)X)["!0%TV@+CK3KUVT)O5.NV M4>]4_5GJX5Z?48(J7/NEB3M>_UXWJTV'-W6-S='Z%79^OE%[A/%M([[&!1.: M<%@B9'1VCM5.^5;,3XRL7#>SD 9[(S=<8?<*R@K@_E)*LYM8 TT_G/X 4$L# M!!0 ( 'U[I%;GD-\&]@D .)? 9 >&PO=V]R:W-H965TDD,VG$/P!(I+9FSDZOS4S39NQ>\Z+3%[0$ M2QQ+I$I2]MU,/WQ!2M82) B9IT65%XDD S\M%LO-XUT25R]Y\52NI*S(+YMU M5EY/5E6U_32=EO.5W"3EQWPK,_63Q[S8))5Z6RRGY;:0R:*9M%E/ \_CTTV2 M9I/95?/9MV)VE>^J=9K);P4I=YM-4OQZ(]?YR_7$G[Q^<)K=]*BR2#F+[]:OZ3\WJU6H> MDE+>YNOOZ:):74_B"5G(QV2WKN[RE[_(PXI8K3?/UV7S-WDYC/4F9+XKJWQS MF*PLV*39_M_DEX,G6A.4CGE"<)@0="?0@0GA84+8+'1O6;.LSTF5S*Z*_(44 M]6BE5K]H?-/,5JM)LWH?[ZM"_315\ZK9G7R6V4Z2.SG/EUG:N/8/Y'Z_JR1_ M)(?B5_"E;D*])\:2"+5$OOQ7Y8C>OR+O/LDK2=?E> MZ?Q\_YF\^^$]^8&D&?G'*M^5:F1Y-:V4Y?7W3^<'*V_V5@8#5H;D:YY5J[+^ M3KG0YT_5BH_+#EZ7?1-8!97='TGH?R"!%X0&>V[?/CVPF!,>=R%L],(!O99O MZPT MY-__54-)5\JN2G_;?+;7I>:=>LD\*G<)G-Y/5%7>2F+9SF9_?YW/O?^ M:%HTDICF GIT ;6IS_ZFPJC8+]JTSOUDWDRN<]/SC#,1>N)J^MQ>07\8BR,J M@N,PS39VM(U9;7O=C,R'MYLZUU:/IG69OWRL7N()*;YB1_]Q!V%,<=T 9*8YH+HZ(+(&BKZCA=J MQ\F[K2SJS]Z;%KY7BUL!ZW="VC9",S$^FAB?&\T?CMF\SNSWRD?I7&HA_OKS MMT6XU:"QVXLDIOE.''TG'$6XP'0!DICF M\#9/!08_P@9PMRZQ#=S!;9^&_] M'^4#^9*55;)>-R8;;;1JC=T?+#5]Y0&L/' 4I0=A+#<@J>EN *CRKN^1U'3? K'YS-4E M@(IC6&JZ&P#(?"OLC$_5O)>'O8\B%-J?[O5AG,,'K@X *=].4NJ"V%GRM77R MZ%U"4M.7"D#FQZZ"%96LL-1T-P!;^59N.9FO12\/AX)Z-.S&HV$1Y47X@Y4JNG]-LV03W)BT*]:G18M02%9:: M[@) MH"ZBEI4NL)2T]T =!78"V(G,O5A=CL#4\;\;J(V# MY2+V!. 7H">S0 M]G[C#TNR41P["0B4B8(S($&@KM--2.R,OD:+N!HS?;10$L;'45G;45 M3H$$@KM)/6]Z22Q;;(\T>%,$9C4I)!WULF\@1-BMRQF'-?T M(X\6DA?*TJAE+RPUW9^ 8:&KGF*("FA8:OKM'P!H%+>K2/LM0Y5P:?>&$.,H M9KX&*& 4M6/479)F9+FKU)5@1&?[]+$[@Z6F+Q:HC+IJ)U)4FL)2T]T -$7/ M:B?2?ILPB&+/ZP:D85C(Z HT-;M4W;(:4?D99*RW<#1F^VBPD6!NZBK_B%% M!3(L-=T- &04MW](3;W ?E(^,4HW%K")VK'I>YHMU)P;];GY)E/[_-%;XZ+R M1 '#J*NF(46E)RPUW0U 3_2LIB'M-P-]%L?=W]Y,PT*/Q0/WC0+4,#O4:"%Y MF;1LMW#T[:4NRE<,N(NYZAHR5"+#4M/= $3&<+N&S-00]+I5O5.C=&.!FYB= MFWY*"_GZZ^+T4;U1<;[=#I0S[%JCM\E%X8D!DS%7W4*&RE)8:KH;6G?/G]4M M9/TVH,_\B'6CTS1,#)4S&" .LR/.8'A>*%VC%K*PU'3? I$Q5TU"AHIJ6&JZ M&P#5&&Z3D!G[?;UT;1PU<)<' Z!B=J#Z>[62!7G8I>M%?1%L]]%KY&F[TNA- M?HR61FUNH6EIOL18(R[Z@UR5#;#4M.?J04VBW![@Y&Q MZ]>]3=H\:J ,'0%!18C/'=JUQFX3EIJ^EN ,2*SFH@1OW.((V8)[KE:=,X&M AG(B!?6([^]AB MU'W"MALW^N@.%[6M&,@L=M4]C%$Q#4M-=P-@6HS;/8Q-?<&HBROF40-WVL4 M4[$=IN[D-DF+YG?#0F[RA5P;342M06&IZ4L&/HM=M0UC5+S"4M/= '@5G]4V MC U/#T:\US8T#0LX'3I#":@GME-//R[_#\D8M8"%I:8[$-@K=M4;C%$I#$M- M=T/K,"[0U(]]G7;LKH M?751HQ* 5<)5NT^@HA:6FNX&0"V!V^X3ID:>W\V^YE$#*"P B,1O[._9YXW> M$A?E) %@)5SU]P0J'F&IZ6X /!)G]??$V_I[AF&6_IX :A%H_;VS4BYJH0E+ M3?=9Z^A09V>'XAX>ZN;TT/;QH=CGA[ZIG31N&S.D"_)/-]E MU?X \>.GQX/J?VQ.9^]\?E,?8-\KF2RD$4]0/W\,<^KUS?U%QR/]9_]#U!+ P04 M" !]>Z16]TP^+'@" ,!@ &0 'AL+W=OVE\[7N.S[FV;].]5+>Z C#DKN9"3[W*F&;B^SJOH*;Z3#8@<*64 MJJ8&0[7Q=:. %@Y4O<32[:IC)WPL[2A&UB!N6FN%49^SU*P&H1F4A %Y=2;A9-Y8O-=PC<&>WTP M)M;)6LI;&WPJIEY@!0&'W%@&BI\=S(%S2X0R?G6<7K^E!1Z.[]D_.N_H94TU MS"7_S@I33;VQ1PHHZ9:;I=Q?0>?GW/+EDFOW2_9=;N"1?*N-K#LP*JB9:+_T MKJO# 2!,G@%$'2!Z+2#N +$SVBISMA;4T"Q5$"?*U MDEN-&)WZ!FU9<7[>6;AL+43/6/A"U1F)PWO=4W>)AKRV!"-'8#O.+HM'03)._=VA MB:=9T?LD#ONL1^J27EWR.G7\X5X/24R>;'X:7L0'N[<:A]+&XW'RETC_X*W: M/HFW=\.$)AQ*! 9G%^<>46WO:0,C&_=\U]+@Y7'#"MLU*)N ZZ64YCZP':'_ M \C^ %!+ P04 " !]>Z16->,@0^H" #J!P &0 'AL+W=O_K8@45U1=R#0*?+*2JJ,&I6OIZK8"63E1Q/PJ"U*\H$UX^Z8RYQJF$C^C95F-?8&'BEA06MNIG+[ 9I\$NM72*[=+]DV ML8%'BEH;635B)*B8V/W3AZ8.!X*P]XP@:@31OPKB1A"[1'=D+JUK:F@^4G)+ ME(U&-SMPM7%JS(8)NXLSH_ I0YW)I[ !40.90B&7@KG2OB$S;):RYD#D@DRD M-H2*DKS3AF'= $=4"2:6FF#PG2ADM>9@UR=2&(4;H\GY-1C*N'Z%9G>S:W)^ M]HJ<$2;([4K6&MWTR#>(;R'\HD&]VJ%&SZ!^INJ"Q.%K$@51W"&?G)9?0]'* MH\=R'XO65BYJ*QTP+&'GZ?&M0&O/SEBS -WG8E_Y_,'I4B;DL1GW+/;8MHW-VB5@K; +NB M/NB*8M\57378&:?.V)XXFSSJ9UG6&_F;P^RZPN+^8-"&/>+NM=R]D]Q_.AJ: MCNY"W'DD!^\.PS2-PB/$KK!>?Q!V(R8M8G(2\58:RKNHDB>OB[,T#9,CJHZP MP2!)LVZJM*5*3U)] JV'Y(IQ[HX!(TF)9>S"3)^^/\W207J$V14V"()G,/LM M9O\DYA>\!6M1XHRO-HNR(L",J2-+@"- _.(GM+8AGUI()33@L M4!=<]#%%M;M9=A,CU^YPGDN#1X8;KO R!F4#\/E"2K.?V/.^O=[SWU!+ P04 M " !]>Z16-";=&\ " 4!P &0 'AL+W=ONI=Q->SP8VW@5\ M9[#3!V-BE:RD?+"33]G4"RPAX) :FX'B:PLSX-PF0AJ_FYQ>^TL+/!SOLW]P MVE'+BFJ82?Z#92:?>B./9+"F%3<+N?L(C1Y',)571N%7ACB3+& +H@*R@%1N!'/67I E%DM6<2!R3;Y@*=V+#!0Y_[H%U2.W MC&.6C2;GN2,,$&^Y;+25&1ZXAOD:/_DIPV?VYI/] *? MSU1=DCA\1Z(@BCO@L]/P.:0M/#J&^^A,:T_4VA.Y?/$_[%DK69"9%$9AW>$6 MF9S,W.:@+3]O5MJM_^J26^?O=^>W/7JM2YK"U,,FU*"VX"5OWX3#X'V7^/^4 M[,B*N+4B/I4]F4EM-,%=): -PP8"'%$E7"G@IL-C"EK;BEGM"P1KJ1*I+$H. M-CIM_,/*V0\)U1J,[G4Y5],9.CKV,-HF\3#HCR;^]M"2YU'1N!^';=21UGZK MM7]2:UOB1[K24PZ\0BMG%*W!'H-NP36GP8&4BW$8CI\([H@:C:Y>$#QH!0]. M"K9-7KDFWV]>%\'!U]@XV^8T(3#&G'!Y16F M4?497$^,+-TQMI(&^\X-<[RV0-D _+Z6TNPG]F1L+\+D+U!+ P04 " !] M>Z16!5CU);8" "X!@ &0 'AL+W=O6E;=J--E*[@4!BTM0Q^(#XX";7QIIC!]MMQK_GG+2A ML#1\26SG[GF>\[UD6BG]9')$"\^%D&;FY=:6U[YOTAP+9BY5B9*^K)4NF*6M MWOBFU,BRVJD0?A0$L5\P+KUD6I_=ZV2JME9PB?<:S+8HF/ZU0*&JF1=ZAX,E MW^36'?C)M&0;?$#[6-YKVODM2L8+E(8K"1K7,V\>7B\FSKXV^,JQ,D=K<)&L ME'IRFT_9S N<(!286H? Z+7#&Q3" 9&,GWM,KZ5TCL?K _J'.G:*9<4,WBCQ MC67*F'J)U2-;1QYD&Z-5<7>F1047#9O]KR_ MAR.'Z)1#M'>(:MT-4:WREEF63+6J0#MK0G.+.M3:F\1QZ9+R8#5]Y>1GDQN- M&;?P61F#!LYOT3(NS!LX R[A2ZZVALG,3'U+7,[#3_>XBP8W.H$[@#LE;6[@ MO]00S;(,9]J$G"]QP*;G<4*4*I[]+8 ,1UQ"N M9W?)U6AX-?5W'<2CEGC42WRSU1JEA1(U5QF46NVXZ]LN_@9I=,0?QN-)-W_< M\L>]_)0\M2-NJF'J"-?RF %5+K",4D=".DLX?J$D#KMUC%L=XUX=\Z(IIDIS M:U&"6J^[B,]++39WVG\Q/7F0^#(+1O[3^T30I4&_JF>GN ME2)K!DM[VH[E>3.-_I@W,YV:E@K2@, UN0:78PI9-W.RV5A5UK-II2Q-NGJ9 MTZ\%M3.@[VNE[&'C"-J?5?(;4$L#!!0 ( 'U[I%;:R(V%) ( !,% 9 M >&PO=V]R:W-H965TUT &/18ZE*:JRK#D17"FCN024GX70Z(R5E M J>Q7]NH-)9'PYF C4+Z6)94_;T"+IL$!_AIX98="N,62!I7] !;,'?51EF/ M]"PY*T%H)@52L$_P9;!<12[>!_QDT.B!C9R2G93WSKG.$SQU"0&'S#@&:G\U MK(!S1V33>.@X<7^D P[M)_;O7KO5LJ,:5I+_8KDI$OP%HQSV],C-K6Q^0*?G MPO%EDFO_14T;.Y]AE!VUD64'MAF43+1_^MC580 (SE\!A!T@?"\@Z@"^WAR&K*_>[I&@QE7)^AS^ANNT:G)V?H!#&!;ACGMB,Z)L8FY&A)UAU^U1X> MOG+X#543% 6?4#@-HQ'XZFWX&K(>'KZ$$UN&OA9A7XO0\T7OJ,7ORYTVREZR M/V.R6I[S<1XW>$M=T0P2;"=+@ZH!IQ\_!+/IUS&1_XGLA>2HEQR]Q9[V[+F-1#.6-1P2"JS9,,KJQ[+NQ5.#"A$8>]Q4TG M\PN,5#N"K6-DY6_Q3AH[$]XL[*L%R@78_;V4YLEQ@]&_@^D_4$L#!!0 ( M 'U[I%9A\CAQ8P0 $D7 9 >&PO=V]R:W-H965T4$1WE0FMC(<7P[Q3&UYM/\VB.?3UDFDYB21PY$EJ:8 M_[PE"=O-+&B]7GB*UQNI+]CSZ1:OR3.17[>/7)W9E4H4IX2*F%' R6IFW<#K M!?)T0/[$MYCL1.,8:)0E8]_UR7TTLQQ=$4E(*+4$5C\O9$&21"NI.OXK1:TJ MIPYL'K^J?\[A%O]NKN>^]?[_>6+JKQJ:.\RC?_M> M5"$TZA?2T_U:;'%(9I::SX+P%V+-?_T%^LYO?90G$MMC'E7,(Y-ZS7RQYDR( MRX]@2=8QI7I8+7&":4CZ^ M1/Q?5J]/+?#1R/2^8VB]-,F/N@61>1>89R6XS MH:X( 4*6+F.*]4K5.^@+&:_! EUOY+10C,D&HO@5BF]$^4MN".\KW>^4[GEN MNW*C]L#*QU7EXW<.+T*C-\;6N ,U\I&/VF/+F'@@UJ3"FABQ;L(P2[,$2Q*! M.-WBF*MN*D&B$$GO&)MTF#Z-'<<9M9B,60]D$$'0@W4!_& M:T$$G;7!':NUH7YLKSSHU-W1,19X3X7$29)/Y-[F90Q_[Z)\*K5]V(85@*?J M1:72J;A/I+;/C6IN=(Y^5*KNC4W/0\AOC4US]J%TM<& QEY^?$\J==YJ2N9T M0W%J[P#-YN%@7RKCFN4C;]PN_ASN -;V )K]P9#6!+M>P?6#W+SNHYW#+<#: M+D"S7WAW>X)=(]';G\QYAW+59@(>ZR8.M2C8-0\H"!S8-@_F1$-!:OL S?[A M\,0YD0,H*<_A)V!M*&!PLAYF]";OYCZ1VOX_M;5106:C,K"'E:K-L3N9N&Y[ M;3$G'PI7&Q-D- #'M[!2IXG3;E_F5$-1:J^!S%[CX"Q$73?AH7'G0YS#2Z#: M2R"SEQC2OU#75@2N[[1=DCGS4++:5B"SK7AW^T)=N]$9:NI'Z 75_Q9A\/=$)JMWS^?]0 M2P,$% @ ?7ND5E!TO+EA! 9Q8 !D !X;"]W;W)K&ULM9C;;MLX$(9?A= 6BQ;81#SHF+4-) [:!F@70=/#Q6(O&)FV MA4BBEZ3M=I]^*5F1+(DR6H2^B25YYO<_DR$_29,]%T]RS9@"W_.LD%-GK=3F MRG5ELF8YE9=\PPK]S9*+G"I]*E:NW A&%U52GKD8PL#-:5HXLTEU[5[,)GRK MLK1@]P+(;9Y3\>.&97P_=9#S?.%3NEJK\H([FVSHBCTP]65S+_29VZ@LTIP5 M,N4%$&PY=:[1U1S[94(5\35E>WET#,I2'CE_*D_N%E,'EHY8QA)52E#]L6-S MEF6EDO;Q;RWJ-+]9)AX?/ZN_K8K7Q3Q2R>8\^Y8NU'KJ1 Y8L"7=9NH3W[]G M=4&5P81GLOH+]G4L=$"RE8KG=;)VD*?%X9-^KQMQE("\D01<)^"?32!U JD* M/3BKRKJEBLXF@N^!**.U6GE0]:;*UM6D1?EO?%!"?YOJ/#5[Q_EBGV89H,4" MW!6*%JOT,6,27( '/3*+;<8 7X)W@DL)YE2('VFQ MOWH!7("W YS7?2ITJ)Z[2%90^W*1V M>W-PBT?F_3(E7L MXH,>Q./F@6LIF9+@[P\Z'MPIELM_3+4>Q#VS>+E^K^2&)FSJZ 4JF=@Q9_;[ M;RB ?YHJMR36Z0-I^D!.J<^,TV&J^" 35#+E!K.;^3B(23QQ=\>U&,)@3,*@ M">NX]!J7WDF78Y-J,GI0\H\<8!(2$O6,&L*P'T-B-NHW1OV31O_2N_>-WOC M5YIMF/_S=* X@ZMDSA1$O'+$7-/:"D_;FU:[$A-[%LZJ!,Z%'MKL@R6Q3A^BI@^1G84>#2:/>#%$_85N"",1]*%Y0./& M96QMH<<#!\CW4- W:@CS_+"$B,DH@BU]X0N7>BW0^>G8BXYZ5)//%(<)CD8L M'MT@H-/+G>]800L]Y@57%XI?)#S?,&4V>U+J5R?=EEJW\!;NZ*QT1U;Q;DNM MVXL6\,@2X6N=SI)&&(;]:36$P2B.1X:U13RRQWADH#>"N,]X4QB$T33D-X(H[.]-QK (C5 >M9A'ISG_6="%?F;4SY/5C;XJ3PN:,_-]NU76 MVU+K5M[2'IT5]\@J[VVI=7O1$A]90CX:PAQA'X:#]62(0W& QEC:4A_9PSX: M MU#/AIX'8:1." C3,4M]O%+L8^'.(^('_2I;P@+XSCT1@RVT,>GH7]#DZ>, MKXS.K#+>EEJWSJ,'^/,^P=M]A#\'XW'+>&R)\7@(;XP"XO=GTQ"FN>2/S&;+ M>&R/\=@$[P"3OE53F+[!'[':,AZ_E/&U0-!E/.[[&T81O[\+N4=O 3A1?%.]&'SD2C_05X=KIB$OR@#]_9)S]7Q2OFML MWBW/_@=02P,$% @ ?7ND5OP' SS; @ ] @ !D !X;"]W;W)K&ULK59M;],P$/XKIS"A38(E3;H41ANI:WFIQ,2T,?@P M\<%-KHDUQRZVTV[_'MM)0P=9Q-"^)'ZYY_$]Y[//XZV0MZI U'!7,JXF7J'U M^M3W55I@2=2Q6",W,RLA2Z)-5^:^6DLDF0.5S ^#(/9+0KF7C-W8A4S&HM*, M13;S .H0,4VT9B/EM<(:,62+CQL^& MTVN7M,#]]H[]@]-NM"R)PIE@WVFFBXGWQH,,5Z1B^E)L/V&CY\3RI8(I]X5M M8QMXD%9*B[(!&P]*RNL_N6OBL

$YW3)4,%KF&89 MM:$FS$S4^6(#?SA'32A31\;D^FH.AP='< "4P]="5,K0J+&OC6>6WT\;+\YJ M+\)'O(C@7'!=*'C/,\PZ\+-^_"#L(?!-2-JXA+NXG(6]C.=$'D,T> 5A$$9= M#O7#YYBV\+#'G:C=ILCQ14_;)I@JA5K!G*J4"55)A)OI4FEI3L>/KFVH5QEV MKV)OC%.U)BE./',E*)0;])*7+P9Q\*XK!,]$]B @PS8@PS[V9,%3\IS(*6HN :Q,G-M/G<%HUXA=BO8VVZ3#$9Q$(S]S;[*7C_^4^5) MJ_*D5^477:#L[JK3EJ]H#5-:8=;4OZU%4R_[=Y_1XP%VI.N0*&*P,-CD=>P"[4,G^0502P,$% @ ?7ND5J3Z&ULA95=;]HP%(;_ MRE%639VT-2&!0#N(1+^V2NM40;M=3+LPY)!8=6QF.]#NU^\XH1$=@=XD_CKO M\Q['/AFNE7XT.:*%IT)(,_)R:Y=GOF_F.1;,G*@E2II9*%TP2UV=^6:ID:55 M4"'\, ABOV!<>LFP&KO3R5"55G")=QI,611,/Y^C4.N1U_%>!B8\RZT;\)/A MDF4X1?NPO-/4\QN5E!8$SA +GUBDP>JWP H5P0F3CST;3:Y N<+O]HGY=Y4ZYS)C!"R5^\M3F(V_@ M08H+5@H[4>NON,FGY_3F2ICJ">O-VL"#>6FL*C;!Y*#@LGZSI\T^; 6$X9Z M<\G)_#_?=>+@ M\X$4HR;%Z)!Z,D%W&U/4[LO1]H5M!FN)N))P-W>51.$@Z@[]50NYVY"[!\D$ MZ[;!ZJC>-NQTT(W:8;T&UGL+UFN#]79AW2CHM,/B!A:_!8O;8/$N+(AZ03NL MW\#Z;\'Z;;#^#BR,@WC/-QLTL,%!V'V.5,T7%G4;: MOU3R#U!+ P04 " !]>Z16L'1R9@8% !2'0 &0 'AL+W=O;?/Y*8;2<6M%X.?*:KM

7;M%05'RA9"M:VR"7\LC8UWSG:C&QG)P1B6*$%%F2)LUA^ M9MO?227(R_'F+!;%7[ M:_W( O-,2)94S8I!0M/R/WZN!J+5 $=[&E#5@ YM M<*L&MQ!:,BMDS;#$TS%G6\#S:H66;Q1C4W0K-33-+^.=Y.I7JOKD])JEJ[-[ MPA,P(X\2G($[991%%A/ EN6ADQF1F,;B5/WX<#<#)^].P3M 4W"_9IG Z4*, M;:F8Y'CVO#KKQ_*L:,]9;S _!RY\#Y"#W('V2WW[C,SK=M1MMY7^>A!0/0BH MP'/WXBF=5ZF0/%,.E>"O:U4 KB1)Q-]#XDJTT3!:/O$NQ ;/R<12,TL0_D2L MZ2\_0=_Y=4BJ(;".<+<6[NK0I_=,XAC$R@- YAY8J($8$ERB^ 5*OC \34,? MNI$SMI_:4@;+H#>JRSHD1S7)D9;D-1'B0LT%SO-KHV9NQJFD9-!V)9+78G#F M0NA[/:)#94X4NL-$O9JHIR>:SZ5Z'-^#6!$_D+>W0RATE;?[O ?+8 "'>?LU M;U_+^XZDE''P!Y-$@'^!=QYX/X/.P5E&\KD6#E'78A\[&0R!=88AJ(FQWBUS']8>Y0J>YJSI:MC=D0;.D7 Q>YE5Q ME[UF. 4?5IR0W&.#=TXM\K&^,H76'8=6NH!&YU0%9TJ\(;2N^"950.V]^^!Y M5<&T/3@*0X3\GE4'ZR+D[KEMP28%0'T,^!]SJT)L<_$\-.HS'J@*_& /WR80 M0'TB*&?4+?Z.'V,RR$[;?[2-#*%UU3:I GIFYY VI1PMWA!:5WP33: ^FQP\ MA_R=[ FCH']K>JVJ2[()#E![>^[Z4:WT-S2E298,\C2:&DRA=74WN0&&9IVI MS2%'BS>$UA7?Y!&H#R3E1=]4%YVFRIY$2,"Q). $"X#!AO"Y&I;3P:$HP<.6 M$YUS!_7]^DI5]VFW22=(GTYV_(J?]_E5CW3TL^Z/2".H22/(;!I!1M.(*;2N M^-8[#GT:>9M?*_">$_O/IZ]5=:DW^03I\TG?KU_(FL[5%DX7X-.WC&[V96D] M[M$7T!!:=Q2:U(-&9MUK- 290NN*;T(0TK];.30'5##M.WPPYY141-7D#ZN'.14?4+0G^'HR_8CWJB@)ADAL^]4D-%X9 JM*[Z)1TC_7N6- M*VX)GC_ MQ=3&/6M_&I=EWX3<- A >< +VO2@_8,1U].0VC=5^5-:G(=HUYV MC48G4VA=\4UTKL#['O7[>??UNI*^W?K@E7]MO,%\15,!8K)4?Z16Z.4B@'P" !P!@ &0 'AL+W=O*F-^"/<][G/8 /V8Z+1UD!*/14LT;.O$JI]M+WY;J"FL@+WD*C M=THN:J+T5&Q\V0H@A4VJF8^#(/%K0ALOS^S:0N09[Q2C#2P$DEU=$_'[&AC? MS;S0>UZXHYM*F04_SUJR@26HAW8A],P?50I:0R,I;Y" C;%FZ ,2.D;?P:-+T1:1+WQ\_J'VWM MNI85D7##V7=:J&KF33U40$DZIN[X[A,,]<1&;\V9M%>T&V(##ZT[J7@])&L' M-6WZ.WD:GL-> L8O). A 5O?/+,YOP=1HSFL%#I'2_W:BXX!^EJB6Z(Z014%:68F%/T-/9V#(I3) M,W2":(/N*]Y)TA0R\Y7V9=3]]>#ANO> 7_!P2\0%BL)W" Z%)VYA-L?1^S3) M_*V#/!G)DZ-D#9NX8'U6O ]+ YRZ8?$(BU^#Q2Y8? @+<1"Z8&ULK5C;;MM&$/V5!1L4,6";7-Y$NI* 6&Z0 M &EK6';S4/1A+8XD(B17V5U9]M]WEJ0H2EJR:JH7B9>9PW-FY[+D<,/%-[D$ M4.0USPHYLI9*K6YL6\Z6D#-YS5=0X)TY%SE3>"H6MEP)8$GIE&>VZSBAG;.T ML,;#\MJ]& _Y6F5I ?>"R'6>,_%V"QG?C"QJ;2\\I(NETA?L\7#%%C %];2Z M%WAF-RA)FD,A4UX0 ?.1]8'>3&BL'4J+/U/8R-8QT5*>.?^F3SXG(\O1C""# MF=(0#/]>8 )9II&0Q_<:U&J>J1W;QUOTCZ5X%//,)$QX]C5-U')D119)8,[6 MF7K@FT]0"PHTWHQGLOPEF]K6LZT"T'-RHP\&M'=Q3 M';S:P2N%5LQ*67=,L?%0\ T1VAK1]$$9F](;U:2%7L:I$G@W13\U_@(8 TFN MR!03)%EG0/B<3->K50:X6(IEY)9EK)@!F999];FH4D#X6],7!./ M7A+7<3V#^Z3?_0YFC;N[[VYCK)J N4W W!+/Z\#[G1=7D[40&!R3ELK9-SOK MFKR1*S:#D85%)T&\@#7^^2<:.K^8E)T);$^GU^CT^M#'?ZQ X#(7"Y/*RC4L M776C>!D/_-#!\+ZTZ1NL0CKP&ZL]7G[#R^_E]3$M=#J:6%6.0>MY,0WB U+' M1E'L1F9.0<,IZ.7TR'6A9+H&"),2E#'-@Z-P1!X&Y("?P2J@K=#N$0P;@N$I M0:O*])*4S?J*SZ^>D/ '3?B23!76LBYYW0 J^Q1%W7.9EL7^UZ^O2G?O9VP1 M7U*I_C9)[&=Q+W#Z"/5&L!$0^+Y.5_IYEZ0 4RE-S@2V%[!!$[!!;Y7W5/C@ MG!5^)K ]C5&C,?KQ"H^.TM -'<PYS;!W@GG/ .W*]Y\>@UO05B/S&2+QW M//_G-#\3VGX8=G.;]@_N)LTKU;B!Q;WJ&S A+XS:^]&\RI50A^2\4$M)7)\D M[,V4 )-_P?(KK#Z5N^%/3YO^IVGLQ]IJC+<2:=0M\32HP18J-"#M2]Z-;]H_ MOX_R.TGEC*]Q=X/K#>;$/NM@/Q?:OO[=:*&V&P\N\[!6>'CM- MIW&N'?^H(778^;2C)>VF/CUE[,/)A&,CD= YW QT& :#\("QW7J+UI\P\,5S MD182"8,6*ZJM =:+XJGRQ?N8*7]/+PR6P!(0VP/MSSM7V1+^K-]]F MQO\ 4$L#!!0 ( 'U[I%:>F+K+@P, $,. 9 >&PO=V]R:W-H965T MZX&MDU2D)RH((P MBCALEM:E>[%R ^U@++X2V(O&,])2UHQ]UX/;9&DYFA%D$$L-@=7? ZP@RS22 MXO%?!6K5:VK'YO,C^HT1K\2LL8 5R[Z11*9+:V:A!#9XE\E/;/\.*D&&8,PR M87[1OK0-IA:*=T*RO')6#')"RW_\HPI$PT'A]#MXE8-W[# YX>!7#KX16C(S MLJZQQ-&"LSWBVEJAZ0<3&^.MU!"JTW@ON7I+E)^,WH.*@4!OD7E *R:D0*^O M06*2B3=J_LO]-7K]Z@UZA0A%GU.V$Y@F8F%+M;B&L.-JH:MR(>_$0C[ZP*A, M!?J;)I"T_6U%NF;N/3*_\@8!/V!^CGSW#'F.Y_?P63W?W1N@X]>!] V>?S*0 M0@"VZ%9"+O[M"UP)/.D'UGU\(0HJ>#&;G, M&9?D%S9UR#:E[@1A5:O]F2GA@F9FPO H,5V;T)WVYR6L>8:#/&^I!*5>(D5S MT\H16V=D:_CW\@T[7%S?/>+;M9FZ_71G-=W9(-W/3.+LJ2*?=:DYOGM,KFLU M"_P3T9S7].;/[$/S->HC-PCPT@H?":REU74..Y@S1D]7*"-)'@NMK;FQ:[N# M&?Z*.<'K#)ZJP0JF583JA'=4@SU6\X91FZ-WX.@-KK_$F67F=] MOTMRV*A-\K!KNX,;8ET\)QMEV/_%9?-_;,_N87]V)Z.TRN V_V+-(Z&U-1]V M?'=P@WU^JP2=\T9/IPP;E13MQG$\![XUMQ2A5MY169YOZ]GZ)G1ISO]'\U?Z MAF2.^0>8\GJE3J];0H72M%&0SGFH>/'RQE(.)"O,H7_-I+I"F,=4W?* :P/U M?L.8?!SH!>I[8_0;4$L#!!0 ( 'U[I%:HF>GOM0( $L' 9 >&PO M=V]R:W-H965T]=^\>^)RLI7K4)8 A3Q47 M>NJ5QM03W]=9"1759[(&@3N%5!4U.%5+7]<*:.Y %??#P2#V*\J$ER9N[5:E MB6P,9P)N%=%-55'U>P9X&T6[MBR-';!3Y.:+N$>S$-]JW#F]RPYJT!H M)@514$R]\V RCVV\"_C!8*VWQL16LI#RT4ZN\JDWL(* 0V8L \77"N; N25" M&;\Z3J]/:8';XPW[I:L=:UE0#7/)?[+PX]$C6:".K#HP**B;:-WWJ?-@"(,]A0-@!PEW \ 5 U $B5VBKS)5U M00U-$R771-EH9+,#YXU#8S5,V*]X;Q3N,L29]!N@!YI\(#>F!$6N1/MC6(=/ M+\!0QO4[W'VXOR"G)^_("6&"?"]EHZG(=>(;E&")_*Q+-VO3A2^DB\BU%*;4 MY(O((7^.]U%ZKS_A(,P.J!G_N_P\(B#S(5?^$]DSCX:]1\-C[.E-#0K_ M,+$DF76KP$:BG5VRWW".'/R]6NK84=L.M4K'\:<@\5?;U>T'Q<,XZH.>J1[U MJD>O4UTP044&1S2WQ*,M.4&T*WD_)@X."XY[P?%1P9=.UZL$Q_LFA^,=P?LQ MHW!7L;_5ERI02]>N-+_:WPCGKA'NK,_PIF@;^U^:]IK! [QD0F,Q M!5(.SL9HH6I;=SLQLG;=;R$-]E(W+/&V V4#<+^0TFPF-D%_?Z9_ %!+ P04 M " !]>Z16%T!Q%O(% !.)@ &0 'AL+W=O*LDA=)ZKU);%L\O('S+.ME6G))X3Q_'G"8O2V6I9O7>3K9:BD'&4 M\IL,Y462L.SI/8_%X]4,SWZ\<1O=[V7YQGRU/+![_IG+KX>;3!W-VRK;*.%I M'HD497QW-7N'+]>N5W:H6OP3\<>\\QJ55NZ$^%8>_+6]FCFE(A[SC2Q+,/7O M@:]Y')>5E([_FJ*S=LRR8_?UC^H?*O/*S!W+^5K$_T9;N;^:+69HRW>LB.6M M>/R3-X8J@1L1Y]5?]%BW]57C39%+D32=E8(D2NO_['MS(CH=L#O0@30=R',[ MT*8#K8S6RBI;UTRRU3(3CR@K6ZMJY8OJW%2]E9LH+:?QL\S4IY'J)UGW-)8OB_$W9YO,U>OWJ#7J%HA1]V8LB M9^DV7\ZE$E*6FV^:0=_7@Y*!03^Q["VB^#=$'$(MW==P]VN^:;N3X^YS9;\] M!Z0]!Z2J1P?J?8A2EF[XK[]@W_F]/B$V3W41UUZDO-PN\P/;\*N9NIYRGCWP MV:HN:7-XIF)'?FGKET+55[>\O+ZW/$-B9SF'M=NZA%^5*.\%#RM"/7WE=X;Z_Z D'2X\4[K7"O5/"/9MPSQ1.PK G'"P] M4KC?"O=/"?=MPGU#. Z-,PZ6'BD\:(4'IX0'-N&!(3P,@YYNL/)(W8M6]P+4 M_67/%9IWDF M0]..0QW:^*:3(GM!& MY':'3?&NQ0O2\P<+&&NPDP;P6(.12@;J2%J=8=,9Q@8NX,''FM.8QR!55S>U M&?3 XH*7[-L5LLCX"[ZCS0!'=PSL]J\Z6,98FYKN&,9[/8?K(LM*L^(NCNY9 M%9F+BOGQ8,!IZAY_/[U%_TZ.S6B@FCFZV;%NS7,, [V)8"H>R(+6' "\SK88I M@'4BP' D& J0V&1_Z&/CBS,%^XEF/X'9/Q0BB4EUCWA]KL/%QXK77"^;-%!YBK(7.(AVF]TOS)#%9O<#$-R9F"E@3#6L"P[J'$O1'&R/7PIZU MB$GI_DT*'G.L)PUR H-\9(@D)JPO_)#T5P#PX&/-:?83>/7^\R&2F O]P*74 MN-RF0#[1R"G2&+&@ OB.X[Q);6VPZYG3V=$$Y[ A->7U+.2)#'![RXL MTQ$8J=<-@T4XH%83G29P-UXF2(&$!T#2/C3\9F< M"?:-X2FB ]71@<+1X7D;KF:.P(ZQC0:/--:)SA$4SA%#Z9F:"0+CP.N+GR)! M4)T@*)P@AL(S-9,"=HR]-+CX6/&=/7LX* QE9WHZ#L"5QRK7<8">W*BW!F=J M\MY0/@7KJ68]A5D/IV9JZ^J2D6\%3CG9[ MN]P/S,>9EN:-RRD6^E3' KKX:4;2LX:"^>1+R5DJX%\6[@]M?3S8JP%S7OW!.]?R,NF7'=-&"P>=AG_))JT\LNX_27,G=J?+. MVT"-EM4/+]4'4ARJYW_NA)0BJ5[N.5-WVK*!^GPGA/QQ4#Y2U#Y"MOH?4$L# M!!0 ( 'U[I%9T ED5T00 +L= 9 >&PO=V]R:W-H965T,FT.\^=0;7+.EF51FH0DBD9ARD06S*?E>P_Y?"JW.A$9 M?\B1VJ8IR_^]X8GW=%04E(KO@N]5XS4J6GF2\F=Q\,]R%D1%(I[PA2XLF/FWX[<\ M20HGD^-791K4WUD4-E^_N'\LFS?-/#'%;V7R0RSU>A;$ 5KR%=LF^HOE&9,5I?-2Y^528.CW_R$2.OK-DR]$] M9VJ;\H3=(9.CK6FZ54:MIJ$WZ(D.XJ)+>')*2$TGO67Z% M*/X+D8A03_DM7'['%W4Y<;# MU^S!850Z%+\>NSF>C",=SDZWX24"K^LR( M3.E\FYX*?' <-I+0*"+'>3VJ>#0^$7=8QQV"<;]*;?*MCF;(%W+8^GI"QA-Z MG-(CH]%P2/PQ1W7,T9E#GMBKVSOIHSXGO20Y*X#C:WK<6O3)*#XZ,6T-CH>Q_[3$=<:X]V&/VSDB/#@*VQ9%_J23.NFD MTYPWQL@7E4=?'??DYG9L:8U!/)X%L,IB^!K!O+K3",,6LABF["77=67IOV:KO)#$ MC6IQBV'>G@\PW :H?U5].F!5+6KQL">(81#:G2>^)S>W;8MN#&*R$\@J*W"( M((D;T:(6PZR]:-[;0&U%A21N5$M<#".W(\@P1-(JY=FPQ9:V&,9M V+$&PLL M[SS@/;FY^R]+;!+UL /K%=M]N;D=6VP3$))G0:RR@"8/E+C1&KMAF*^77,JD MS5'?!LPG.[T#(Y:V!*;M^0@C;8!Z@WID0%#+6C+H"6 $A';G:>_)S6W;^0N "/M_6_K[$ 2-Z)E+($9>]'4MT'JV8EY5*?26MP2&+<=&48\6U=/T+-A M2RQL"0S;!L9\=_INX/+.8]Z3F]NL93:9]("Q7L'=EYM[*]&"F\);[;-N)D:O M7M"@Q(UF"4MAPEYR0=/7B0M*W*B6N!0F[OGXHFV M@)"$C=@XY8Q[0E;% 1U MU^GNR\UMV]*:PCOC+MBB[3UO^PZB1W3ZAA>U>*4P7B\:]=Y8_FS5""5^9LNAJ;/K,#T\*#P=:;LJ';4]2 M:YF6+]>Z165C%;A,@" M "C!@ &0 'AL+W=O1V&)LVQ8.9"E2AI9Z5TP2Q-]3HTI4:6^:1" MA'$4#<*"<1DD([_VH).1JJS@$A\TF*HHF/X]1:&VXZ ;[!;F?)U;MQ FHY*M M<8'VL7S0- M;E(P7* U7$C2NQL&D>ST=NG@?\,1Q:_;&X"I9*O7L)G?9.(B< M(!286H? Z+7!&0KA@$C&KP8S:"E=XOYXAW[K:Z=:ELS@3(GO/+/Y.+@*(,,5 MJX2=J^U7;.KI.[Q4">.?L&UBHP#2REA5-,FDH."R?K.7QH>]A#A^(R%N$F*O MNR;R*F^89H.6<6'.X,1E?MT.Q%'<@\?%#9R>G!W![;5&]CQN[UTC.S Q!LG#QM ,R)$YII769!9,F>&F M X]2+0WJ#5L*A#M95M;%*)ERP;V)'9@QD5:B=O3'7 D!=!"W3&<_#_E8R[L\ M+,_=[6M3LA3' 5U>1XQ!\O%#=Q!]/E+\95O\Y3'T9(IK+J6K;LD$DRD>$EA# M##R$ZQ6;I'O5OQJ%FP/$_9:X?Y1XDJ8:O4%TS#;._4/,-49_G[D;'28>M,2# MX\2%JMP]*1G/P"J@/B-0'SS@@U?LY]TH>H-_V/(/C_+3=7C'[N$KNS\-_G<[ MW&LJU;X\&4E=;W4/:U;8#3^K&\S>\;M]TK^@,&!"XHM3H8D@%Z[HEUA.K M2M^&ELI24_/#G/XBJ%T [:^4LKN)(VC_2\D?4$L#!!0 ( 'U[I%;C9[I^ MK@( ,L( 9 >&PO=V]R:W-H965TU4U76[K-)#K#JV,QVH/WW.SMI!EM@FPH?B!W? M^^8>^QPG64OUI!< ACP77.BAMS!F.?!]G2V@H/I4+D'@R$RJ@AKLJKFOEPIH M[D0%]\,@Z/L%9<)+$W?O3J6)+ UG NX4T6514/5R"5RNAU['>[UQS^8+8V_X M:;*D5C>*>SYC4O."A":24$4S(;>16 KD%JDL%N$1&DT]D4JTKD3,RHDJ],#&O C6A(B<76LN,40,Y^>6A;?05 M$U3@$+>3$ PJ%W RO@']YU^L'GL UFK]KNZX%>T@R&'FY< M#6H%7EJYM:$=R&P+-&I (^<>[:JNIA2H*X5!&VUT2-H#F6W1=AO:[MYEW:SB M-M!*W7=J^W9=I6%\%@?GB;_:1&@+"\[/HR9L*[E>DUQO;W+;>[@MO;WZ_UV' M YEMH?8;U/[;JZY_2-H#F6W1Q@UM_*:JB_\HIRBPO]^J[J]A57+^QE%CCWE\ ML\Z9T(3##(4!OLT]HJJCL^H8N72GSU0:/,M<=^R!UGR_ MI#\!4$L#!!0 ( 'U[I%:LZJ4%EP8 *LG 9 >&PO=V]R:W-H965T M=''J&-@DVS9 TPV2;OM0 M]$&Q:5M=271%.DF+?GRI2T1)I.A+Y2!(+'DX/#.4YAR.-'UFV5>^IE2 ER1. M^<5H+<3F?#SF\S5-0G[&-C25WRQ9EH1"'F:K,=]D-%P4@Y)XC!S'&R=AE(YF MT^+<73:;LJV(HY3>98!ODR3,_KZD,7N^&,'1ZXG[:+46^8GQ;+H)5_2!BB^; MNTP>C6LOBRBA*8]8"C*ZO!A]A.=7Q,\'%!:_1O29-SZ#/)1'QK[F!S>+BY&3 M(Z(QG8O<12C_/=$K&L>Y)XGCK\KIJ)XS']C\_.K]^R)X&@;@:@ N BV1%6%=AR*<33/V#++<6GK+/Q2Y*4;+:*(T M7\8'DW878&,'P/ MD(,P^/)P#=Z^>0=XB=R [VI_=^C5G04FKC.+"[^XQV^52G!/-RP34;H"S5S_ M_I,T!S>")OP/4TY+W\3L.[^WS_DFG-.+D;QY.Z&CV[3?0<[XS)6 @9ZTT MD#H-Q.9]]O,V>:098$L@2T\6%HFHU@K\:UFUR]*M6[C-B]'3#$_'3\VPK!,? M&99;A^7N&596K&_X&-/]XG*UN& G+NO,1\;EU7%Y]K@D$/&>,<;#*VC(QK'VBS(N@0A#K@=#/H(^)@,[A)#6YB M!7>3SEE"P2.558C*HEXE MHH1I9!U'N\A\+_"]#D*#F>M-?*<'8H,WH17B:WE?-98<2-AS>5+J'R/BBHJ= M!A;G#./NM=EC!WMN'X@49F3%_''QIU04?87)/OA0SAG*6SM41;[PE.P+!Z7? MH;RU4Z$(&-H9V'2E&H,FVIV"Y _N5B>#'0RP@WMJ)U24"NV<>DUE_/.H7"(I M-D&8Y&OW3WFBI]Y# Y_" #I=T 8SQ\,])14JNH1VOMQ5\:OA.TN^PY0Y*7OQ&;3H(08Y=H)=1@!UW2FSS%EM!.EY_%6FHH^B+WI)R^!RDU MIU"GPXD+M:)I($W')WU4I$@3#LF:<#_:-)A9>!,IWD3_GSE08S/YCT7)2*(I&=(O?:62!]1_H!^IYVX^CT^,%S^B J MEQT"U ]LF.O1@4:R([:QXAGBN/'5$LF;X;F=$.H:!G 121 M(CN1-@N7W.';M;3=U\&W[D#>VI$KFD;!*:N850,]" MJYN#@Y[H]S0,>J@8*[6 [6KA)N4BC.-B&8T]2.OP@YN0 WEK!ZMT!X:G;,<. MJDJ&\M9.A5(EV-X&.+HE6_FU]2[M4Q\;6J/G;E<9S4M:QO*Y&Y]1SH@6.D);-<310?$B&Q0 M 3&4M_830"4TB'/"FD0&E2%#>6NG0LD08F]_'/\X%.J-Q.[ST%/("J)D!;'+ MBK*;MR_IVIT=O*JGD!U$R0YRRJ<-9%#],92W=BH:C_MW/.^WDR[1NR,X\+5V MN,$,>9[;L^4A2A(0NR38BW*)3O@H(%H3UV &)]COX02B9 $YO#EBA*D_98<. M\K2W)'0S'S6>A[=1*EE #I<%.]BV\MAMS7C=)E^/G9;9<>.UIX1FJ^)M, [F M;)N*\G6B^FS]QMG'XCVKSOE+>'Y5OC>FW)2OL=V&V2I*.8CI4KITSGRYVEGY M9EAY(-BF>+GJD0G!DN+CFH8+FN4&\OLE8^+U()^@?C]O]A]02P,$% @ M?7ND5FVK0..C P &UL MQ5CO;]LV$/U7#EHQ)$ ;B5+\*[,--/&"9EC7(%ZW#\,^,/+9)BJ)*DG9[7^_ MHZ1(7BMSB9,L7VQ1XMV]QWO4 S7>2O5)KQ$-?$F33$^\M3'YF>_K>(TIUR+*5*N:&A6ODZ5\@795":^&$0]/V4B\R;CLM[UVHZEH5)1(;7"G21IEQ] M/<=$;B<>\^YNW(C5VM@;_G2<\Q7.T7S,KQ6-_";+0J28:2$S4+B<>&_9V7E8 M!I0S_A"XU3O78*G<2OG)#JX6$R^PB##!V-@4G/XV>(%)8C,1CL]U4J^I:0-W MK^^R7Y;DBS1?+1)>_L*WG!A[$ MA38RK8,)02JRZI]_J1=B)R ,]P2$=4!8XJX*E2AGW/#I6,DM*#N;LMF+DFH9 M3>!$9KLR-XJ>"HHSTQDJL>%V98!G"WB'BY7(5O#6+I8P C6\@0\D ;C*#"K4 M!N9;GL.%S(RB%85YU4TXFJ'A(M''-/^"ZS5<4K^;=&]@AEJL,FYP 5PW]Z\R M;51!33;P"D0&[T624*_TV#?$S2+TXYK'><4CW,/C/5AO8-8:^X?\CP-?R\7&(I*/BE2+Y2U;(RZP+N M+&!WW9G.>8P3C[:51K5!;_KC#ZP?_.2 'S7PHS)[]-_M;==:[VOU3.@XD;H@ M'/#7KY0*K@RF^N\N5M$SL#IM6)TZF_*;M#N:)\!369!VY)(V8D-4M$2[@%>I M^V5J^\[:3.D--O8W'7AZ#9[>_42BK$CVHH$CDCZ''%5,P^,N<%4=%NR@"TZ" MH,>Z ?8;@/V'JOCWK=Q5\0QC3&]1W>VA3B4[BQS8\T%#8?!"2AX\ ZMAPVKX M?$H>?J=DMD_)HP;/Z']2\JA3R2P:= -D06M8P8.UO%:(#U:SN\Z!C6<[QLM> M2-!UX2AISFUJ'KB]EH5RR M[G4B=)8YM/NM%;+>2\G::<*'$FLME+D]]'&R[G\GZVBOK%M+9$YO>DI9#SIE M'06C/1A;@V-NA^N2->%[N*R=90[M?NN+;/12LG8Z\H'$PM9.0[>=/DK6=>Y[ MO:W#UAE#IT$]H:SK0M_*.AP-O\'H[YR@[=<(.DY23S4DN*3 X&1 [QY5'?"K M@9%Y>:B^E8:.Z.7E&CD!M1/H^5)*PY_3F,\OT'U!+ P04 " !]>Z16 M1E(KJ]0$ #>'P &0 'AL+W=O?4-A!;6JR+)@@2;'M1](*1:)M8271)RDX7^_ E)5FR M8IF-%@,D%[%.\Y'Z?W'$$:<'QK^(+2$2O21Q*F;65LK=C6V+<$L2+*[9CJ3J MS)KQ!$NURS>VV'&"HSPHB6W/<89V@FEJS:?YL0<^G[),QC0E#QR)+$DP_W=! M8G:86:YU//!(-UNI#]CSZ0YOR!.1GWF<5S2Q']XC$))0:@=7/GBQ)'&N2ZL<_)=2JVM2! MI]M'^L?\YM7-/&-!EBS^DT9R.[/&%HK(&F>Q?&2'3Z2\H8'FA2P6^7]T**]U M+!1F0K*D#%8]2&A:_.*74HB3 ,^[$."5 =Y; WIE0.]UP.!"0+\,Z+\*4-JW M!PS*@/S6[>+><^%\+/%\RMD!<7VUHNF-7/T\6NE%4_V@/$FNSE(5)^<^X72/ MM5D(IQ'Z1*(-33?H5OM')24"_8+N,>?%)5<^D9C&XN>I+57C&F&'94.+HB'O M0D,]=,=2N14H2",2->-MU>FJY]ZQYPO/"+S#_!KUW _(<[P>^OSDHZL?V_JU M?#O&,V!\,^:W++Y&SKC$T%1(GJGQ)%M(@9ETFVVJ#CE('/#.(%:OLKF70WO_ M;_.JZINX9+E/11@SD7&U_=?O"H56DB3B[S;7BW;[[>WJ-'% I/# J[!-!-RF6)$)85"-B91K%"R.Q MJ]:0,!\2%@#!&K8,*UN&[Y2UAI#F0<)\2%@ !&N8-ZK,&QG'U&W"N*1?<3X? M5+DK2]5$-J9?U1C;J DLNE)>M4\D"N[P9'B[(T?_58.\T-W8?E?=(6$!$*RA M^[C2??P6W97,-)5$\24B+ZJN$$2[L*8I3D,]IRQ/' M*.;J^ P_JKKHP[S%#NN9S4)H/2@N@:$T[3JI%]YW>R&7#4!9"TGQ06@!% M:UKHU19ZT.FI)#;RD^OTS_-3>>%I@AI-6A*4N8N=!06B-06M2VO76/RUI"A5 MH2VQV**/L6*5XZ)55]#B&93F@]("*%K3HKJ =OOOE;9 2VY0F@]*"Z!H30OK M"MTUE^CW3"E/P,8EAH49VMD>T$+?/?^\T&LFX0"JP:;F=0'OFBOX M1Q+&6 BZIF$Q35YSEB 88N7[#G.5]@2*R5HAG>N1>@QYL9A<[$BVRU=+GYF4+,DWMP2K ML:&ULQ59M;]LV$/XK!ZT8$B"-9#M^ M268+B.T4-;"B0;RN'XI]8*2S150B/?)D9_OU.U*V:B>*FZ(!]L4FJ;N']SSD M'6^XT>:KS1 )'HIKL02 MYTB?5K>&9V&-DLH"E95:@<'%*+AN74T&SMX;_"EQ8_?&X)C<:_W536;I*(A< M0)AC0@Y!\-\:)YCG#HC#^'N+&=1;.L?]\0[]G>?.7.Z%Q8G./\N4LE$P""#% MA2ASNM.;][CETW5XBTZ542[AVZDJ2:.$MS!2A04MP)PAAOA$KF%>'#B=3)"%S>\IFG^93 M.'ES"F] *O@CTZ5E1#L,B<-TFX7)-J1Q%5+[F9 Z\$$KRBS0=C]?YON0S9 9WF.3"6KF0B? U@(N8UX>O MBU2E4 D;S8DOJ5,4](+U372!P&8377"__N7F@=S*?8Y\V?@ M]5Y3HE<".Y"H7TO4/WHC3L:H<"'I='?+@/-))Y+O1\H/#V5@7757W#U8),I] M(C66\&J?GM_'=0KK^&VG>\G5=;W/]:E5_[);VQQ0&-04!DA-EJ11>/N#PUZE]&C[B$>P\Q5Y.E[T\L M)+I45+U7]6K= EW[E__1^IA;HZJ3^093]57\&O%5MI#C@B&C\SZGG*EZE6I" M>N6?^WM-W#SX8<;M'1IGP-\76M-NXC:H&\;X/U!+ P04 " !]>Z163B5_ M5Z,# "2"P &0 'AL+W=OO*-(<"RVN^ J97%EP46.FA M6+IR)0!G-JF@;N!Y+;? A#G]KIV;B7Z7EXH2!C.!9%D46'P9 N6;GN,[+Q/W M9)DK,^'VNRN\A =0CZN9T".W1LE( 4P2SI" 1<\9^#80044F4@L'ZL8024&B3-X_,6U*GW-(F[[R_H[ZQX+6:.)8PX M_8MD*N\Y;0=EL, E5?=\\QZV@F*#EW(J[2_:;&,]!Z6E5+S8)FL&!6'5$S]O M"[&3H'&:$X)M0G"8$)U("+<)H15:,;.R;K'"_:[@&R1,M$8S+[8V-ENK(;\WU>F5P/:J%M55 MB\ZA]X?CN\ET.IG>H>'@PV Z&C>IK2!:%L*<4^M^U FC3J?KKG=U-(3YK7;D MU6%[#..:87R6X7AZ^QUZ57Z\LV_LQ8$QU1Z]X["PHYWK-]-KU?1:9^D-TK0L M2HH59.A.'^/HX@.7\M+ZZ0J-L,S1.WUVH_>0+>$*S; III4G-WFOUKJE<#V M*I+4%4G^/Q]B\II5>R6PO:JUZZJU?_Y#;!]9./+BEG=@]..HMT&0--N\4]/K MG*7WR'330LE7[?(+J@T.^FY::KM+F=YWT-*L91D05)L;"B-M6HI3%NM4F,<"5@P;<7FN]4[XM?VDP,- M#4%Q.SHA8:=C\'_R -P"[)Z\813$_B&]XS _:1\1='>ZFP+$TC9]$J6\9*KJ M#NK9NK$&PO=V]R:W-H965T?Q MW7/GRTU6E#WP&$"@IS3)^-2(AS2'3+Y94)9B(9=L:?*< 8XT M*$U,V[(&9HI)9O@3O7?#_ DM1$(RN&&(%VF*V?,Y)'0U-?K&>N.6+&.A-DQ_ MDN,ES$'>D8KDGM('M;B* MIH:E'(($0J$8L/Q[A!DDB2*2;ORI.(WZ2 5L/J_9+W7L,I9[S&%&DY\D$O'4 M&!DH@@4N$G%+5U^@BL=3?"%-N/Y%J\K6,E!8<$'3"BP]2$E6_N.G2H<&0/*T M ^P*8&\#W#< 3@5PW@MP*X"KE2E#T3H$6&!_PN@*,64MV=2#%E.C9?@D4VF? M"R;?$HD3_ES0\"&F202,?T(7?PHBGM$).HLBHO*"$W25E<6ELG08@, DX4?2 MY&X>H,.#(W2 3,1CS( CDJ&[C A^W-CX'M."XRR2FP<;ZXDII/_*"S.L?#TO M?;7?\-5!US03,4<76031)MZ4<=?!V^O@S^U.PFO,>LCI'R/;LIT6?V;OA]LM M\* ;?@GW/62[;?"-:)PZE8[F<]Y,)18@;Z1 WQ9HKA)0Y76=UE]?)0)=22/^ MNTW]DMYMIU?]9\QS',+4D V& WL$P__XH3^P/K=)MT^R8$]D&[*ZM:QN%[L_ MHVDJ2Y^KBR(;75ZP,):-!AW*8B[+_*A-S)+4TZ2J]S[Z)UZ_/S$?FR)UGKRK M2'LBVQ#)JT7R.D72Y=90YQCAE!:9:%.F9!HTE'%/3RUK2YHVJ]' V[0*.KWZ MSY@'=U4@:O(CT=>L-M/3I]V;54]D2V(=NP MEFW8+=OV1:Z]915T.K)K.9B-820%MM1#'4>A MBJ;\-->[]=QXIL>EK?WS_GA6CG\O-.4P*C^\2Y)QE,!"4EJ]H6P#K!SPRH6@ MN1YY[JF0 Y1^C.5,#$P9R/<+2L5ZH0ZHIVS_'U!+ P04 " !]>Z16PHHV M@@8% !;*P &0 'AL+W=OQ"F?*4LA5E>JRA=+FA ^8"N:RB//+$N( MD+O9B\I7&25A(4IB5=+K)"'9VPV-V7:F M8.6]X$OTLA1Y@3J?KL@+?:#B<76?R3VUIH110E,>L11E]'FF7..K %NYH*CQ M=T2W?&\;Y5UY8NPUWPG"F:+E+:(Q78@<0>3?AM[2.,Y)LAW?*JA2Q\R%^]OO M=+?HO.S,$^'TEL7_1*%8SI2Q@D+Z3-:Q^,*V/JTZ9.:\!8MY\8NV55U-08LU M%RRIQ+(%2926_^1[=2+V!'AX1*!7 KVOP*@$1E_!L!(,^PK,2F >"LPC JL2 M6'TCC"K!J&^$<248]XTPJ023P@[E]2LNODT$F4\SMD597EO2\HW"085:7O,H MSWA"^1'6VBD*8A1Q6KJ\Z._GY\;O1/HTJO)&GF*)__Y154"!HPO]K:=]-R1NV\_*'V!5?D06=*?(I MQ6FVHHXM\/)>C?%URV6;OSBBGVAL29D/"'$B8"PGS(&%^"1L5 ML'R"O)GC03[L;O9MVUI)KRLU[&C6=C0[[7B=L'4JD%W9L,UIG8!3G08)LR%A M#B3,A81YD#"_A%E[)C*&$PT?6*VEECF>:.U>LVJO67V\=D^B5I]UBD_U&23, MAH0YD# 7$N9!PGRKQ6>F81WXK*66.=2M=I^-:I^-.GWV/E=$?Z6TS6B=ZE.- M!@FS(6$.),R%A'F0,!\2%@#!&K8=U[8= [_BC"&-# FS(6$.),R%A'F0,!\2 M%@#!&D:>U$:>_)17G,F'^:XVF#0?(+>=+3G5M3T".I !74B8!PGS(6$!$*QA M1JSM/K%JY[[B5(3]>8ANFL;HP&S=@4YU6UM0RQR;!X8##>J"TCQ0F@]*"Z!H M3=?M?=C'Y[SL=*M/?7:#TFQ0F@-* M#)KD :79H#0'E.:"TCQ0F@]*"Z!H34OODCWXYV1[\,=O_]K , [GIZ!YG(J& M<3,H_C!!!%^L?#\I=?.7A MEG(_7SE:+.S;XXE2CF+Z+$-I@Y&\D;)R)6>Y(]BJ6.;WQ(1@2;&Y MI"2D65Y!'G]F3+SOY 'J];3S'U!+ P04 " !]>Z16O(CCQF,& ]*P M&0 'AL+W=O@A"F-QU?.EW%[V^\+U:43$*[:E,7RS9CPB$F[YIB^V MG!(O-8K"/AX,QOV(!'%O-DV?+?ELRA(9!C%=56^@1D1#ZDH%0>#CGBYH&"HD&,?7'+17]*D,J]=[]#>I\^#, MB@BZ8.&7P)/^56_20QY=DR24G]CN+=M!#[F)D"S*C6$$ M41!GG^0A)Z)B,+2.&.#< !\8X(LC!G9N8!\:X",&P]Q@F#*3N9+RX!!)9E/. M=HBKUH"F+E(R4VMP/XC5>[^5'+X-P$[.7D?;D#U2BN8TINM "G2&KCTO4"^% MA.A=G(66>D7/'2I)$(H7Z!D*8O27SQ)!8D],^Q(&HN#Z;M[I/.L4'^G41CG7[/CA0>('W7LRQ%O"&\%?(MEXB/, V^GSKH.?/7L @A21A"%$J MD? )IVU#7?PX,BZ0CZ(Y>C2'NDTTC?]V\1;M%-<^@KO,$W$9DEB\1$LF)*M9&<];=..U.E>K[V?EP,)CV[ZOT-1M-+@X;.=J! M/Y&644'+2$O+M>ORA'K@%H;-D'+FO[ZQHQHP9_(V@Z M*;JL^3PN?![K??:@*@>0;YFW>1C E!@2"51(UAX): NI>HR;<6.@C?>\:+:9 M-&)!._(GQL)YP\XP5%1UB_8@D>8 I3_H^ M"[T@WB"V"H,-R9+E.4PSF?6+-IK.&R&$&S1I!]DU@ R!U?B<%'Q.M'SB@35$ M'Z,8XD? M.Q"88<%4UKQV[C1@G6MVR;!'$-@-1(O"A(O3C1/7ICDVR288PBL MQK7 VW8+E@4 >&PCG7O]I6 W,,RDJQ"BF!QB0(A$@+Q_+ULSSNJICN, M4OT=I+Q^1%WI,X56YZ^R/+>Z\Y=(G_'@/RBDW^/,:G!F#UHYTXZB,V>&T.J< MX9(SK.5L27FJ6B"HSN:@";T,^U9QF%U>[P@_(ERTT%T3V2B:8PJM3FNI,:Q3 MB0S+J,HPBN:80JN37@H-2Z\T;E5RGZE?-CQ$TJA%&TYB^0.Y/VSD_O@"3ZS# MS#D%R/N K((PD(^H40-0FOY(D_DFM<;"*)IC"JU.:REQ MK/&I,M^01,E)-XGFF$*KDU[J)TLOH'XB\YO":-(RY3=;C1JM'/T@GTI"*7HL MO>K)EC]'YF^0SQ]8?%9$7;Y6^FZB&]5&1M$<4VAUNDMY9)U*'UE&!9)1-,<4 M6OVGZU(B8;U$>GJBXZ8D.LQR?=]=F3*%5F>J%$-8+X8^KM>!"^'WK3F]=UCB MZSOI&HI&T1Q3:'6"2^6$\8GR'QO554;1'%-H==)+786U$N)G\M]N+O&MYDRO M[[\S6[]"$.%2$&&](.I> Z!I=6702J1)$;0PBN:80JOS74HJ/#I523 JN(RB M.:;0ZJ27@@OK-Y7*S1/Z-2%A=2=;I#^:NM6?!;]5OV]E>MS<*3FL$4:EDRFT M.GVE=,)ZZ;2 ($UWGDC8NDL_U]MW#CVCFTRFT.K=\OY=\9)J9NC0;N2QOL/.]#3[M*NU(W.[ M7SE7&%&^2<]G"G JB65V.*]X6IP!O4Y//AX\GUN7B^PD9PF3'2R](7P#JQ<4 MTC5 #EZ=PR*%9VC @ N 8 !D !X;"]W;W)K&ULK55=;],P%/TK5IA@D]B2)DV[C3;2VH*H$*AJ&7M /+C);6/- M'\%VF^W?8SMIR+9L@,1+8SOWG)YS;-^,2B%O50Z@T1VC7(V]7.OBTO=5F@/# MZDP4P,V;C9 ,:S.56U\5$G#F0(SZ81 ,?(8)]Y*16UO(9"1VFA(."XG4CC$L M[R= 13GV>MYA84FVN;8+?C(J\!96H*^+A30SOV')" .NB.!(PF;L7?4NI[&M M=P7?")2J-4;6R5J(6SN99V,OL(* 0JHM S://4R!4DMD9/RL.;WF+RVP/3ZP M?W#>C9U90<0^ )L!A0[1"IVA5[2@2&W1C]@"D>H.F@IF#H[#+ M_A,7)4=3B@E3"/,,S2=?EF@)"N0>%#J>@<:$JA/#=;V:H>.C$W2$"$=?<[%3 MIEZ-?&VT6P5^6NN<5#K#9W1^QO(,1;VW* S"J ,^?1D^@[2!AP_AODFLB2UL M8@L=7_0,WT(H#2XZO>H/@79?A_T3VP'[4V(]>8D_F/*6[##*[J4+G(,U1E=(F00E>$THT@:I#L3YHKXK@E MIS>(X^"1Z(ZJ:!@%W:KC1G7\HNKF^J7MZW?0>]^E-GX27AA'T>.(.ZJBP?!Q MQGZKK]B>;B[AEG"%*&P,+C@;&AI9]&PO=V]R M:W-H965TB,'[W MG'RXT@-WUR_LGX-VTK(2#F9&_9 %5E-^Q5D!I6@5WIOM%^CU7'B^W"@7OFS; M^\:QL^AWR )Z_A$65G2%$RI"@) M?.D!OH5Q""%-5+WX-U$_;U8.+=7AKWT2.\[S_9R^-Z]=(W*8$UQ2D=7@U,7<+13WGZT4'VLI79,04FP^.SR@C/;M6MG MH&E"Q:\,4O^$9443#JQWH//2&'PQ?!,-,S/[ U!+ P04 " !]>Z165^4R MU#T% V'0 &0 'AL+W=OU\0!>0^C6[>]%55=3.M0L&HB8QXQB82OOCUW'2&)382X#. M]J(D$!^_QS[V!'FF3YR%D*L;ITW7RZI"G)>VQ%,_G+G/&4 M"'G+%VZ^XI3,5*,T<9'GA6Y*XLP9#]5W#WP\9&N1Q!E]X"!?IRGA;]7ONJ@7KB M.:;;?.<:%*Z\,/9:W/PU&SE>H8@F="H*$T1^;.@-39+"DM3QO3+JU'T6#7>O MWZU_5B>7(Z3M@1N=DG8A'MOV35@X%A;TI2W+U'VRK9ST' M3->Y8&G56"I(XZS\)#^J@=AI@)&A :H:(*6[[$BIO"6"C(><;0$OGI;6B@OE MJFHMQ<59,2L3P>6OL6PGQG?I*F%OE()KFM%Y+')P 2;E# $V!W??U[%XN[B6 M?L_ U9;P60YD*(#W9CGX=$L%B9/\\] 54D]AU9U6?5^7?2-#WQCALO[TK_:B=0>_.7".KP7O">P##+P!Y"(-?@0OR)>%29/EAZ0'7PX55#[ZA MAQN6IBS[[1<8>K]/!)N^EI?ER+2-@-50N\Q69TI$CUU1.^88ZX]*D1:Q? MB_65=6P0:U;E?X"JH%856(?P;Y9M:"YD/$W58(*\&$= E-@O,@X7<9;%V4(N MMH1D4PH^Q5DU@9_!/ZU363I5=ANH;HO-:#.&001A-'0W+7+#6FYHE?L')UDA M]E 584-%% Z\=@U1K2&R:G@NQ^M0"5%#PD40#MHE]&L)?:L$N07.:2Q5N#?% MI"1)!SW]IAX\Z+?K&=1Z!J=$D=Q1C@FA03.$0MSW#=,'/;W)>M:5^$W!H=A" M-Y1+V $554#NV+1<5U])S,NK9Y*L*7B@'$P*F:V[JO./0KRE5> M((?XXD4AXI"U_#2Y+5J6TU#,A]ZH6[TMU42[*RKJ86B8$Z3=0 8=M .O:QX"FRP+ M!ZAO"$^D48:L=#DI$:A,[VHRH!5I&B$[C3KF1I6U0R1HDB [2;I&UY')2:5B M+[0& <:&'1YIZ"#\$[,3]!$E#]*X0G9I=^1"I2G:RP=P#QMJ#Z3AANQP M.R%)J2PWDA3/4 D@32AD)]3Q20IJ5D>FU:>A@^S%T9GR$]2LFDS2-';0>;%S M>H)2"=H/Q*!GVB(T?9"=/H:DY%%ZQ^.IV$M2P%/A3:LZ:R=';@U8HPO;JS#+ M6YJ/J*BP9A@^3T5U>GJ"F_A3+TG:XP-K!.+#BZF#=#199EAM>.?5G+UV.B4S MJ4SOO:- ?<-.B36,L!U&'9.3RMHAHZ()@L]3'IV8G."VMV\^,E1W6+,&AS\Q M-\$?41]AC2IL1]7_DIM4FG:1T/=Z06"8&0TW;(?;":D);A9)ICC7A,)V0AV? ME.!FI610XVO4^,=521VE5;WLOS0Q3YZOB>.?ESBG9R9^\S5>FR?NSE%62OE" M'=CE8,K6F2A/M>IOZT/!J_(H3#]>GBC>$RZ73PX2.I=-O5XD9YB7AW3EC6 K M=3#VPH1@J;I<4C*CO'A _CYG3+S?%!W41Z7C?P%02P,$% @ ?7ND5O2F M!^- ! (Q@ !D !X;"]W;W)K&ULQ5EM;^HV M%/XK5G8UW2NM3>Q "AT@%=JK5;K=4%FW#],^&'* J(G-;%.*M!\_YZ4)@> - MY(DOQ7'.>7S.X_,D)VYOP\6K7 (H])[$3/:=I5*K6]>5LR4D5%[S%3!]9\Y% M0I6^% M7K@30,'-*8I=X7N F-&+.H)?-C<6@Q]=^[P[8B0U"&S^"V" MC=P9HS25*>>OZ<5CV'>\-"*(8:92"*I_WF $<9PBZ3C^*D"=TS&@%Q:"0&H)B'BXA7Y)6#1=2_3(9L#2#4+CF#+T^1X4 MC6+Y1:._3.[1YT]?T"<4,?3KDJ\E9:'LN4IGD\;DSHK(AWGDY$CD/GKB3"TE M>M AA'5_5[-04D$^J!@2(^ 3%=?(QS_H3(C?$,_HO[L30SA^N3-^AN -G\/UW./!^;"+'$EB-JE9)5"W_*#GONTFU62$.Z51+=AV&6S;&*Q!)TUQ&L%.W21+8+6\@S+OX,+U M'-BDRA)8C:J;DJH;Z_6<([;-]=QD=*R>.V6PG7/K&?V=[G3"6<[,1/'9:S[, M-K3QH6]<[-1-M 16XZ5;\M*]<+UW;5)E":Q&%?:J+L2S7O$%Y&XU8[_K[Y5\ MDU7;Q\TUCW?:)OQ_5;V^_S-G5V7GE1NCS X=%X8YH%.WVQ9:G3Y2T4C[_ MLCCA[6!>^.1=M816IZEJ!''[TB*PVCW:0JO35?6/V-ASG2>"H.'I'QR\(QJL M?-P^(H.JB\/F-LXL@V\1G49QI+:'@OCW=X%QX9/WU1):G::J?\2=2\O :E-I M"ZU.5]568F,K=IX,N@<%3O:_#9ILO*!9 Z1J[(BYL3OQ58">02H1S50I@A<6 MJ48-F!<^=5-MH=5IJMI)@B^L 6*U?;2%5J>K:A^)L=\Z2P,%9.TPQ]L708,1 M:9$]$;@[QZT)B$5V"BUU(&NF\N/&MZ4ZX43[+A$F@((C70]^>0AA-( P .@X !D !X;"]W;W)K&ULQ5==;]HP%/TK5E9-G;0V7Q"@@TA .ZW2*J&R;@_3'DQR M(5$3F]D&RK^?[820T#0:4J2^%-NYY_CKBC[)E' *]I GA(R,28GUC MFCR((,7\FJZ!R"=+RE(LY)2M3+YF@$,-2A/3L2S/3'%,#'^HUV;,']*-2&(" M,X;X)DTQVT\@H;N181N'A<=X%0FU8/K#-5[!',33>L;DS"Q8PC@%PF-*$(/E MR!C;-U/;50 =\3.&'2^-D4IE0>FSFMR'(\-2BB"!0"@*+'^V,(4D44Q2Q]^< MU"CV5,#R^,#^52GF\ MPRQ$O[]+2G0O(.5_ZOS-]N_4[Z^^"3=\C0,8&?*EY\"V8/@?/]B>]:7.G);( M*E9U"JLZ3>Q^5GE!V23(*J\N[8S+TUSJR[7UW8[K#E$X3J"VX!OAYQY(2V253+TB4^^=:]=KTZJ6R"I6]0JK>BW6;L;5 M+96E[75/2K>2EMLU72=8[K..]=P+J MNUIBJ]IU[+#LQJ[DW"IV7_<$MGOZ]:V+ M22&;I2X\!;;2EQ,NI6R(R#K68K6X (UUVW^R/E$7(]W='VFR6Y7L1U0, !<. 9 >&PO=V]R:W-H965TU&!)@C439EM/,%A G*59@!8QX:1^*/M#2V18B MD2Y)V_%^_8Z4(CN+K&!!FN3!.E*\N^^[?.*1@XU4MWJ!:."NR(4>>@MCEF>^ MKY,%%ER?R"4*>C.3JN"&AFKNZZ5"GCJG(O?#((C\@F?"BP=N;JSB@5R9/!,X M5J!71<'5=H2YW P]YMU/7&?SA;$3?CQ8\CE.T-PLQXI&?ATES0H4.I,"%,Z& MWCD[&['(.K@57S/H%%A#DFQH;@]%CC!>:YC40X?E9! MO3JG==RW[Z-_^J0NPYA-T##F'E$#K<92*'\I(;'@^4W("RJRF: M-1Q5YTW@,F'_*Q.CZ&U&?B:^*I:YW"+"" 7.,J/A ]P(A8FR(#5H[NIY=6=MA&O,N:&71I+C&K6USS=J!;PBZ!> G%X3WO4=@:\ M7 M)]!AOT,8A!VXF5S"T?OCEKB=NIX=%[=S(&Y9KNGC-=A%KELEIC>VT%=LW MMU';M&M4U'AH [/=*Q-S^$IX['.,*I,I'-&>M46N]'$3MO8LS'G"*13EOL5" M2/E6M]3V8XW_8VMD N>:L4BJ;?E_*+XU\C,UP8)=JPG>6/,5@!G>5KR_MY9O4 U=S<2#8E<"5,>V^O9^M9S7I[U=\O+*Q.=8>>9T)#C MC%R#DSX53I6WD')@Y-*=_*?2T#W"F0NZN:&R"^C]3$IS/[ )ZKM@_"]02P,$ M% @ ?7ND5CAS'C4? @ F 0 !D !X;"]W;W)K&ULA93;CILP$(9?Q:)2M96JF$":KE) 2C9;=2]6BG9[N*AZX< 0K/6! MVD.2OGUM0V@JI>D-^##_YW_P#-E!FQ?; " Y2J%L'C6([8)26S8@F9WH%I3; MJ;61#-W4[*AM#; JB*2@21S/J61<1446UC:FR'2'@BO8&&([*9GYM0*A#WDT MC4X+3WS7H%^@1=:R'3P#?FDWQLWH2*FX!&6Y5L1 G4?+Z6(U\_$AX"N'@ST; M$Y_)5NL7/WFH\BCVAD! B9[ W&L/=R"$!SD;/P=F-![IA>?C$_UCR-WELF46 M[K3XQBML\N@V(A74K!/XI ^?8,CGG>>56MCP)(<^-DTC4G86M1S$SH'DJG^S MX_ =S@2./*7\HS&K?+G0Z+ M!U5J">0S.X(E-VM QH5]DU%T;!]!RX&SZCG)/S@I>=0*&TON5075WWKJ/(W& MDI.Q57(5^,C,A*33MR2)D^0*+QT330,O_6^B9,UM*;3M#)#ORZU%XTKCQZ64 M>^+L,M&WR\*VK(0\PA*EZ_FL[C#U?\SD:_LVOTXKZN(50L06?9, 1R MPRQIP92@\.(-]Q"3UA2ZDYA7SCCZMAV MR[[:_H3W/>LN:<>5)0)J)XTG[UW1FKX/^@GJ-M3>5J.KY#!LW*\#C ]P^[76 M>)KX \:?4?$;4$L#!!0 ( 'U[I%8C[609C0( .T& 9 >&PO=V]R M:W-H965TZZ=-+1=5H'$2^-KWW-\SJU]G6R%?%0%@"9/%>-J M[!1:U]>NJ[("*JHN10T<5U9"5E1C*->NJB70W((JYOJ>%[L5+;F3)G9N)M-$ M-)J5'&:2J*:JJ'R> !/;L3-R=A/S0K%%:5!T8%50E;[_TJ:O#'@!YA@%^!_"/ >$K@* #!-9HJ\S:NJ6: MIHD46R)--K*9@:V-1:.;DIM_<:$EKI:(T^D<&-60DQF5^IG<2\H5M056Y#U9 MX)G)&P9$K,B)Q/-;T+1DZ@(A#XM;:X25Z-6LZ.;=;HF MK2[_%5T!N1-<%XI\XCGDAW@7/?9&_9W1B7^2\([*2Q*,WA'?\X,!/=._A_LG MY 1]W0/+%_Q[W7_<+)66&/T<*EM+&P[3FCM_K6J:P=C!2ZU ;L!)W[X9Q=[' M(<__B>R@ F%?@? 4>[J@# 8/1@N++J,H<3?[RE\F1;'7YQP(BGI! MT4E!LT9F!7:$05$M--K;+X[C(TTOYVC KFV#5613#1KG^U[]HUM54?S$^SE;>O]0],^!'ASUB4> M:P8KI/0NK[! LFVN;:!%;?O34FCL=G98X'L$TB3@^DH(O0O,!OT+E_X&4$L# M!!0 ( 'U[I%9Y>7KJ^P( %H+ 9 >&PO=V]R:W-H965T>H!; -Q#0/L5@%< O+<"V@6@;9S)I1@?0BQQ,.!L M@[C>K=CTP)AIT$H^R?2Q/TBNGA*%D\$4*)80HPGF.\QOT9>ZPJYCNO5Y'/S=KA; M P^;X2%$K\'WU'CE,7F&SSOUF-"O[VHKNI.0BM]UMN>\[7I>753Z8HDC&%JJ M:@C@:[""CQ]:'>=+G6?G) O/1+;G9[OTL]W$'HRBB*TR*53EBH"L\8S"E1KG M)B^5R01J7^*TKOM.1:=[3C_/21:>B6S/SU[I9^]=BD[OZ!-K^4=% MIS'TJ2X=1W3]HZ)C5[J.%/C"=&\"&8WY?[I<+1O$D>F+#M;'K?Y-WN?]H\F[ M3O477A#5BE"8*TKGNJLJ"<\[N7PBV=+T-C,F5:=DAHEJ?H'K#>KYG#&YF^@ M93L=_ 502P,$% @ ?7ND5LBB?HZ: @ J@8 !D !X;"]W;W)K&ULK55=3]LP%/TK5H8FD ;Y:EK&VDC0:AL/DQ"%[6': M@^O<-A:.G=E.R_[]KIT0%1;8A_:2^..>XW./[>OI3ND[4P)8!J[YIK1N(,RG-=W $NQM?:6Q%_8L!:] &JXDT;"> M!>?QV3QS\3[@,X>=V6L3E\E*J3O7N2QF0>0$@0!F'0/%WQ;F((0C0AG?.\Z@ M7](!]]L/[.]][IC+BAJ8*_&%%[:XC=/EX@4P)X[]DU\5& M 6&-L:KJP*B@XK+]T_O.ASU /'H&D'2 Y$\!:0=(?:*M,I_6@EJ:3[7:$>VB MDC=EPZ79Q:37.LD[B12LQ>4;B)ZI/2!J_(4F4I /P^GCR&AVA6 M[UC2.Y9XOO2?'%MPPX1"7X!\/5\9J_&3F]N MD+]^%8^C=T,._">R1WZDO1_I2^SYI62B*?!8X"XK6X+&8ZLUVD,$IRLNN$5? MAAQH:<>>UA6;;3Z)Q[A#V_W,!H)&D[=]T"/%HU[QZ"\5"R4WQQ9T]3O-+7&V M)R<>CY/XB>B!J$F6G ZKSGK5V8NJ;Y2E8DA3]HM%23HY39]H&HC*HFCR1%.X M5TE<%<>[M^'2$ %KQ$4G$Z31;65L.U;5OKBLE,52Y9LE/B:@70#.KY6R#QU7 MK_KG*?\)4$L#!!0 ( 'U[I%:,>-R?'P, "X* 9 >&PO=V]R:W-H M965T%)N)AC;-=(&C=HAV+8BZT+#\5S2%V&:Z7O3(IHX3X3THR\ MU-KEJ>^;.,6,F1.U1$DSN^"*U;L"/ADNVP&NTM\M+33V_]I+P#*7A M2H+&^<@[:Y^.!\Z^,/C.<6TVVN"8S)2ZV'3D#3Q(<,YR8:_4^BM6?+K.7ZR$ M*;ZPKFQ;'L2YL2JKP!1!QF7Y9_>5#AN =N<90% !@I<"P@H0%D3+R I:$V99 M--1J#=I9DS?7*+0IT,2&2Y?%:ZMIEA/.1F.59=Q26JP!)A,8*VFY7*",.1HX MAFLJFR07"&H.4VERS62,<(4Q\A6;T3@5$HP%XYF!PPE:QH4Y(MSM]00.#X[@ M +B$FU3EAKR;H6\I9K>R'U?QG9?Q!<_$]XWI$PC;'R!H!6$#?+P?/L&XA@?; M<)^4JN4*:KF"PE_X KG.=N2:_?M7NM3TT:O)&S+47"6I%PG_?H1EDF*,F/I:'KTB@+BLL$ M,\GG/&;EOC4&23PN8Y$GZ.9!V10U2"6/XUQKTK8R:M*M#*97!.-.J%44]#M4 M&*M-/1J,PO:@-MKBV:EY=O;R_((2-3&]X&S&!;?GOS/WUMA;N#,2X/QIPL-,QS(1[*G4)UOU2".S&; M1"LCZ6[6;V^GR'>-.A_#L+G(^S7)_E^0W&!B4V8![V-$MW=IWP+=4$N@8C @ M.)5,$YW^3J3][A,RNR;AH-7,95!S&?Q/!].@X6#:.'-*FKM&W;#]-&?^QFWN M7E)T!2Z(!@B<$ZQUTB>9=/DZ*3N4@>*"GRE+SX6BF=*##K4SH/FY4O:QX]X, M]1,Q^@-02P,$% @ ?7ND5I]9:0TZ @ 4 4 !D !X;"]W;W)K&ULG53=:]LP$/]7A >CA2UV[+@MF6U(4L;Z4 @MVQ[& M'A3[$HOJPY/DI/WO=Y(=DPZW@;W$.NGN]W'1*3LH_61J $N>!9VJZW;"(NLH3MX!/N]66N,P@&E8@*D84H2#=L\6$SG MR]3E^X0?# [F9$V96WU-(BT^I M,M&-+?P5GTUBF/2 M_2F/5N,IPSI;K)00S&*7K2%45F2EI&5R![)D8,AGLJ@JYMI'.;F3W1UPS;RX M!4L9-Y>$\A9EM6*M6BQGDMPSSC'%9*%%?8XE+'LMRTY+_(:6>ZHG))E^(G$4 M)Z^!7X.%:')P&@].8X^>_)?36V9*KDRK@?Q:;(S5>%U^CUGH2&;C)&Z$YJ:A M)>0!SH@!O8>@^/AA>A5]><=",EA(WD,O?%\NL,>-ZXFY'-/7(:0>P4WDOIC& M6;@?89T-K+-SK+-SK!W"-#FEG4UFX\3I0)R>(T[/$:3Y!_B\&1 W%N# M-VW'I"$:)> YUNE[#%P8S@\HL5? M4$L#!!0 ( 'U[I%8',IM9=P, (,, 9 >&PO=V]R:W-H965TX%:9VJ=MT^3/M@R %6 MDSBU'6#3?OQL)X1 0MIM? ';N7ONN2>V[])?4?;(%P "K:,PY@-C(41R:9I\ MNH (\PN:0"R?S"B+L)!3-C=YP@ 'VBD*3<>R/#/")#;\OEZ[97Z?IB(D,=PR MQ-,HPNSG$$*Z&ABVL5FX(_.%4 NFWT_P'.Y!/"2W3,[, B4@$<28PHN$W$HC%P.@:*( 93D-Q1UY$"4'USW@X.0.SDL=W-Q!*V=FS'1:UUA@O\_H M"C%E+='40&NCO64V)%:O\5XP^91(/^$/4RY7.$C5W#T&CE^H#18D3"4EUF09G>E/+](X#5*4I90J7$=6Z^J ME6M5^#:&_L?=TBD2ZS2+'U$FR"]\:#]TJAG8+;>]ET&=E=7KU&O>+:AU&ZF- MXRF-0&L,:UEA.=01[%9#=ZWN/L$:*Z=EN?4$>P7!WC,$!<@W(IKH]2J!>UYG M?P-4C6S+.[1E;6M;A:Q&?EGUD:>I[D*LKRZ-@']["QX+;3?]4A&VCU\&5R66C26&3]4+%:=-)7NG_<6Q^J#ENWB5N8K#V7K&PO=V]R:W-H965TO@9@0#U1G;R9 _#[']@OD^(QG)Y9^Y7M*!?H>1PF?:WLA#K>Z MSH,]C7U^PPXTR;[9LC3V17::[G1^2*F_*41QI!/#L/78#Q-M,2NNK=+%C!U% M%"9TE2)^C&,__?>>1NPTU[#V>N$IW.U%?D%?S [^CCY3\>6P2K,SO:9LPI@F M/&0)2NEVKMWA6X^07%"T^#.D)WYVC/*AK!G[FI\\;.::D?>(1C00.<+//E[H MDD913LKZ\:V":G7,7'A^_$KWBL%G@UG[G"Y9]%>X$?NY-M'0AF[]8R2>V.DC MK09DY;R 1;SXBTY56T-#P9$+%E?BK =QF)2?_O=J(LX$>'1%0"H!Z2LP*X'9 M5S"J!*.VP+HBL"J!U3>"70GL8N[+R2IFVO&%OYBE[(32O'5&RP\*NPIU-L%A MDM]9SR+-O@TSG5C<'WEVA7.T9/$Z3/S<;HY^1<_EG8;8%M5-[H)OQY"'99/W M#A5^&/$/6>,OSPYZ_^X#>H?"!'W>LR/WDPV?Z2+K8!Y&#ZK.N&5GR)7.F.B1 M)6+/D9MLZ$;6Z]G ZM&1U]'=$R7PT4]O$":_(&(0LZ,_2[7:2B M+Y8^WZ.5'VZZS%1*AYH)"7,@86X)LPM8_L/\LC G!I[,])=SEX!"2BY9M4N6 MTJ7G[(>8INC3.@IWY1N[RRXE8ZA=D# '$N:6,.O,+HQ-W'(+**+DEEV[92O= M^LR$'Z'5,0WV60J$5FD8T"Z_E)2A?D'"'$B8:U_X94[Q:-HR#"BD9-BX-FRL M-.R)OM#DV.F14CC4(TB8 PESQQ<>$=L5 TV>NSL@#^_PN!2BNER-:4M%+D MI3K$8+,@:6Y%L]1#\*""RBZ0Q@4"D.A7$"D%-@RC[88RU& W(&ENKQ%X4#%E M,YKZ!U:NO'OG\15&>CKLCJ<#M)P!2G-!:1X43?:M*6E@=4U#DFNTG[$=4-7!3UL#JND:/K%Y-&.P8:%D#E.;BR\*&U2YK0$64 M_6H*&UA=V?@D]K0SMU?K!KL$6LP I;F@- ^*)OO9U#WP^ %$WVNBF@8'4%19W@@Q9/*MIY0D2,:2N[ MLZ:6@=7%C)[I.&AEHZ))J7&[O.UT-9J,)^VYZX'RWD+)_X=M:@=$N5[MG3RK M,4,GKZ))=QXA[=GK:#6]R-==T)YY4#39CF9Y3]3+>T5.K%8.=@"T!@!*<\EE M#6 T&K6>AXY&4VQ=>1R:A3U1+^Q[9+IJPF ?0%?_H#2WHIT_?V_707 M)AQ%=)LAC9MQ=E^DY>:E\D2P0['99LV$8'%QN*?^AJ9Y@^S[+6/B]20/4&\A M6_P'4$L#!!0 ( 'U[I%8=N&]O, H -ML 9 >&PO=V]R:W-H965T M GT_]^ 1.7BZJ<4*TW-]VQPWD*^SVQ\<.Q??E4E']66R%J MY^]=EE=7DVU=[]]/I]5Z*W9)]:[8B[SYS7U1[I*ZN5@^3*M]*9)-5[3+ILQU M9]-=DN:3Z\ONNB_E]65QJ+,T%U]*ISKL=DGY[8/(BJ>KB3=YON*7]&%;MU=, MKR_WR8/X*NI?]U_*YM+T1-FD.Y%7:9$[I;B_FMQX[^,P: NZ+7Y+Q5-U]K/3 MWI2[HOBSO?!Q;>GLU64RN+FSW8I?GQ_^3O_HXX*_""%PI87\#&%OA]@3^V(.@+@F%!^$)!V!>$ M8U>8]06SL07SOF#>A76\=[MHHJ1.KB_+XLDIVZT;6OM#EV]7W222YFTK?JW+ MYK=I4U=??SA4S355Y=P6N[LT3]K^J)P+Y^NQ-9WBWN%5G3:9BXVS2M+2^2W) M#J*]_J:J1%TY-^N_#FG9_#;)-\ZG-+E+L[1.1=7^_K!KKO\Q$G629M5/#?;7 MKY'SXP\_.3\X:>[\=UL;'W>;O;#;OO.YR.MMY?!\ M(S9J_;2Y"T[W WN^'SXP$O@Y*=\Y'ON7PUSF&_;GEBY?B;NFW'^Q/!JQNNMU MYM'M/ED5B_5*Y$X9]:TN]X_FLMV756E78/67]\:JYS M/M9B5_W/L(L?CLC C&P?S]]7^V0MKB;- W8ERD-YY,@U8\.:9LB5! MMMDB81$2QH^P\.Q^]CS?&R2+7#$&P93\9Z?\9V3^MTFU=;XDZ<:4.%EJFS@2 M%B%A?*8E[B]<;S&('+ED#((ID<]/D<_)R-O#EO-G>^,?.XFPC1X)BY PCH2M MD+ 8!%,Z9''JD 7^F'"![!@D+$+".!*V0L)B$$SIF.6I8Y:O/HV8FH*LLFT* M)"Q"POA2/V9P!T\?R/5B$$R)VG.EQ'#)L&_6Z^*0UY53BK5('Y.[3)BRIRFV MX4-I$93&>YIR!#&;#8\9H6O&*)K: V)^UW2#L0V@ MMA!*BZ TWM/.VX MW.6P#: F$$53VT"Z0(^6@3\W39#4:?[@9"*IA%.V)Z,N MBON+0W.A>V@PM@34$T)I$93&>YK:$L.&@'I"%$UM".D3/5HH?LSK)'](FV-" M\W,"U")":1&4QCV#2)R'P?!U 731&$53PY,Q85[D%R.."Z%R$4J+H#3>TY1.6,Z'?0#UABB: MV@?2''JD9I)N8)]\:\5 =WA8*"\8,CFU8.P.J$B$TB(HC?>T\^ZX\):A]C@! MM80HFMH?TA-ZM"@\/DYD1?YP48MR]VHS0 4BE!9!:=S3'>*%]LH!*A%1-'4" M2%I$1EO$;KSI\7F\Z?ALX23GXTW[0[G>MB\J]F6Z-BI&>@G;]H#2(BB-,X-B M7'K!L$.@B\8HFMHATC$RVC%:S";0).M&@/I&*(TS@V_4YQ.@:\8HFMH'TC2,PITK77R4,D(I7&F2T;3G )TT1A%4Z.7EI'1EO$F7V^+TI@[U"I":1&4 MQJ&T%906HVAJ>TC[R +\H *#RDB: M,8JF]H#4E(S6E*^,+=#5UME#S224QIG!3(9LJ":A:\8HFIJ]5).,5I-CQQ9H MC'430 4DE,:9+B -8PO0-6,436T"Z1\9[1_'CRW0(.LV@*I'*(TS73VR0#M+ M#5TS1M'4][Q)^>C3\O'[QA9HJ&U+0&D1E,9]73<.CPVA"\8HFMH/4C7ZKXTS MDE,+=+5U\%"]"*5QWZ 79P'3PH?Z111-#5_Z19_VB]34 EUJG3Q4+T)IW#?, M,++%7$L>JA=1-#7YL_<^TWK19FJ!1EEW O9=S]BW/>MCC-XB&/8!]OW,;^$1 M?>D1?=(V :86Z 6LNP,J%:$TWM,&4PNNUA]06XBBJ?TA;:%/VT++J06:9MT, M4(D(I7%?EXC:$P;4(:)H:B-(A^C3#A$QM$ O8=T=4,$(I7'?)!B7VBM+Z*(Q MBJ9VB#2,/FT8+886>M+Y1SIXKCOX^[FEU[,.&&H1?8-%U&[!"KIFC**I^4J+ MZ-,6D1Q&Z&N5#^D(M8:_I9>PCA3J!'W="1INP@JZ:(RBJ9E**>B/&$HTY@EU M@%!:!*5Q*&T%I<4HFOII1](5!BY^R"" JD(H+8+2.)2V@M)B%$WM'&D5 ]HJ MOC1D0)=9-P=4)T)I/-!UXO#HH-_D_#ES,3@/&:-V2LU1"L* %H0C)P=HBG6L M4%<(I?% =X5:K/HF\SD;YOH6^B^0^B^@]=\KTP!TM76>4.,'I?% -WZSH= Q M;3.T@C%JM]1 SSZ9D/9X8T_QTQCK9*&V#DKC@6[KM+]4?1/F#7-]"_\62/\6 MT/YM_%E[&F2=+%2]06D\T-6;OQ@.;QDV\MSANT9BU(ZIZ4JI%M!2[?M.QM-0 MZZ2A&@U*XX&NT;37XX9MW&'*;R'& BG&@M=&[\A3['2U=9Q0:0:E\< @S3SM M#+MAJV#F:\^W;R'# BG# EJ&D1\%#!VC@](B*(T'NC*;:>?-#1NQ>> /\WP+ M$19($1:,>7?NN//A-,HZ7Z@;@])X8/AX/W\8K[Z-]B+V+316*#56./)3^[[[ M'#>]@&WB4%H$I?%0'W^["&;#SX V;#0;'EJA]DL-71JHD#90EB>N:9IUPE Q M!:7Q4!=3VMOM#=L,CZE0.Z7&*\542(LIQ.EH>@GKS*'6"DKCH:ZD&!N^U%T9 MMEIJY[]BU)ZIP4MS%=+FRN9C^Z$6JZ&,3/]@_9- MLVA#5(RZC6H:4CN%M'8BSPG3M=;W?Z#=M&ULO5AA;]HZ%/TK5M[TU$JO39Q @#Y *G33 M*G52M:[;AZ?WP207L)K$S'9@^_?/=D(@$+Q1Y?4+Q([/\3TW/LFUAQO&7\02 M0*(?:9*)D;.4LG\PXI68&1$P92*J2! *Q.;J-ON>40XSN,TFR!9TE@&Z% "G0Q1U(0A-Q MJ3#/3W?HXMTE>H=HAKXL62Y(%HNA*U6<>C8W*F.:%#'Y)V(*T">6R:5 [[,8 MXCK>5?HJD?Y6Y,2W$GXB_!H%^"_D>W[0$,_T]^&^)9R@RGE@^#HG^*;FL0)7 M-DB*A"_IJC%/5A[M\!NQ(A&,'&5A 7P-SOC//W#H_=TDLB6RFN1.);ECV(,3 MDJL5](%F5,+5@_)NTW+ZYT$!T;V$5/S;E)!.FPEIB:R6D&Z5D*YU#6S]I3)" M*"]HOY(DAR;5!55HJ/1[>3W&WB <#-WUOISC40'VN]6@6IAA%69H#?.;>0VJ M*&_7P-5K'>WB?A8PSQ/T0.> +I3A?P+AXK(I?/L4V"^@34_H-E M^L))K+Z/ZMN)U#L+2=W,2 J-KK12G;L(6R*KJ>Y7JOMOXLI^FPEIB:R6D$&5 MD$%[KAP<^:W;"<,#4QX/PC@(FTV)O=U'V_O_;?F+.7#WM"]?!:UKW2M0L/UK MR=;*BIE:AAF35Y)=12Q=@6Q\)':JX*&6RO M9"8D>DG8HC%^*_+LE=<26UWGKA+"X=O8T5K4G)V4EMCJ2=F53=A>-YUGQ]Z1 MT_J^=VC'XT'>"3/NRAQL+1I:,J-]#FR@C8_(#O1.>]'=V]>K_>+"''<(%+$\ MD\7NM^JMCE1NS4'"0?]$'[68\X(=37%.H_:V"ZIV_ G,%:5WW5,FX\711]&0 M;&5.#V9,JDVKN5R"JHZY'J#NSQF3VX:>H#J &O\'4$L#!!0 ( 'U[I%;' MZ%INYP( /X' 9 >&PO=V]R:W-H965T]5!J#)8Y%S-78RK,PET1514'EKRGD8C-V>L[6<,-6 MF38&-QZ5= 6WH._*N<2=VZJDK "NF.!$PG+L3'H7L\CX6X=O##9J9TU,)@LA M[LWF*AT[G@&"'!)M%"C^K6$&>6Z$$..AT73:(TW@[GJK_M'FCKDLJ(*9R+^S M5&=CY]PA*2QIE>L;L?D$33X#HY>(7-E?LFE\/8/31UV M E"G.\!O OS]@/X+ 4$3$-A$:S*;UB75-!Y)L2'2>*.:6=C:V&C,AG'S%F^U MQ*<,XW0\K11:E"(S42P8IZ:VBKPCB_ M !B0:\%UIL@'GD+Z--[%9-N,_6W&4_^@X#659R3HG1+?\X,.GMG?A_L'<(+V M!016+WCM!4R2AXHI9LI[NE/^*UY?5?/-_Y@LE);XY?_LJF-]3K_['-,-+E1) M$Q@[>-T5R#4X\=LWO=![WU6$_R3VI"3]MB3]0^KQ9VQ>$M; *^C*LPX.;;!I M4NLX#*-A;S!RU[L9=+CY0>@%K=L3MD'+-GB5C?%$%)UH@V=G]H>#H;=']MPK MZ ^C?C=8V(*%!\&F5+&$\!:/X%VM;R,Y-K<1[VAK.>EBK^6C':K>613MH717]DZLF('63%L(7FL$1)#T$=(NMI4V^T*&W#7@B-[=\N M,QS0((T#/E\*H;<;&PO=V]R:W-H965T--7\$VUFW?\^UG89N= 4D7IK8OO?DG--[K\<; MI>]-#6#)H^#23*+:VN8BCDU1@Z#F1#4@\:126E"+2[V.3:.!ECY)\#A-DM-8 M4":C?.SW%CH?J]9R)F&AB6F%H/II!EQM)M$@VF[A*=1Z2$BK;(*%XL;_DDT7FT2D:(U5HDM&!H+)\*2/G0\["8BS/R'M$M*7"<-7$K(N M(?-" S,OZY):FH^UVA#MHA'-O7AO?#:J8=+]BTNK\91AGLVO9:$$D 5H,E=" MH+'+FFH@[\FT+)ESFG)R+4.Y.-^/+L%2QLTQAA@7:K8/)LE=K5I#96G&L45R M[A-QT1&9!2+I*T0R$?2),WV M\)G_?7IZ@$[6&YUYO.P5O"NJ)9-KXZT.'G^;KHS56,C?]]D5X(;[X5QS7YB& M%C")L'L-Z >(\K=O!J?)AWU:_Q/8,^7#7OGP$'I^R7CK>I5 56'S$E41'"?& M8IV@(3@*T 166"@)5GMQ3^B&ZM(06EETBC8-9T4H/4RT-9 [G%:FU4]DZ<-O MP-:J)$=8?J$0C_>Y&2B./$4WV1[R-,&J>-@U:4_,V7D?\TS[J-<^.JB]ZZD@ MK.L3>"QXBS5.*JT$*2@O6MX++)U9>"9Q@+/0FPW:4'0XOF[^('7TFXSA"Z$' M.?]K-<0[PT> 7ON9;)!Q*VWHUGZW'_M3/^U>[,_P.@C3^Q=,N$NP%]=,&L*A M0LCDY P%Z#"?P\*JQH^XE;(X,/UKC5<::!> YY52=KMP'^@OR?PG4$L#!!0 M ( 'U[I%:Q&[WUV@0 PB 9 >&PO=V]R:W-H965TDXQWC'\3:T(D>D[B5$RLM92;2]L6 MX9HD6)RQ#4G5G27C"9;JE*]LL>$$1[E1$MN>XPSM!-/4FH[S:P]\.F:9C&E* M'C@269)@_G)%8K:;6*[U>N&1KM927["GXPU>D0617S8/7)W9%26B"4D%92GB M9#FQ9NYEX#G:(&_Q%R4[L7>,]%2>&/NF3VZBB>7H$9&8A%(CL/JW)7,2QYJD MQO&]A%I5G]IP__B5?IU/7DWF"0LR9_%7&LGUQ#JW4$26.(OE(]O]2+N>>.\['$TS%G.\1U:T73![GW8+TC M6!?=L52N!0K2B$0M]K[9OF>PM]44JWEZK_.\\HS ._R"G/Y'Y#E>KVTZ9NO9 MAI^AGG/4W/^OSK6Y>]0\>+^Y9_!%K]*\E_-Z[]0<_7VK6J ;21+Q3\OPK@I< MOQVG0]FEV."03"P5JP3A6V)-?__-'3I_M'D:$N9#P@(@6$.3?J5)WT2?SK%8 MHXAN:4322*A0%\:8DPAMB(KJ:W6(3FB:K\?J2MNRO#+VTE4J2)A?P$8Y3&]? MVZE[IE?#=E^"UD9>U:CAVD'EVH'1M8=?]S:W&0E=W08)\R%A 1"L(<.PDF$( M&W6&D)I PGQ(6 $:V@RJC09_2]19_1FV3IGO8.U/3<.I:L$D+ "-:0X+R2 MX+Q3=$(_T&?"$W3+<-KF:B.MZZJ A/F0L (UI#DHI+D C9274!J @GS(6$! M$*RAB>O4B8IC7"@^>9*(ID+R3"6J\B-:JKX03EC6OJ6;<5U5*6G#O1 W<,J_ M9ISS03L.H&A-K^^EAZ[1ZWDLBE4LTNZF,94O*ON4&=<':D^@+,JWB!>"N6C= M&LS\SC*81SLJ!M*:;T*.(X"B-57Q:E6\KIO&[.H6S=7>326:K3@A27%Y0<), M[^CW6\)3731!US3%:4C3%7K$4FWPB_OKQ].]^S% U^H'L5_/)T MO%5?XT@[ZPM)\T%I 12MJ7F=M+O 6;L+FK:#TGQ06@!%:RI3I^ZN.7>_PWRE M8B!-)5%XB7B^KK#0 3)42K7'1=!,O:3IS6+O)[CCN.[AY@39;0!%:SJ^3NS= M;IG]KPV#7_.BLX+,5".\TI<^KU479:FR5630N@(HS0>E!5"TYC>AKBVXP,4% M%[2Z $KS06D!%*VI3%UA<,TEAI\+CI#I_;RDO0F.WO P.()6%:!H3>>B>$K_+7#00* M=4&H>#!<7:U>:9CE#_(/KOON95"\F%!CBOZ16 MJLM6"T8# #*% #0 'AL+W-T>6QE+] MS[G4M^\"=S_[<';6>KJ\W?5?6. RC+RD-P>07K5P7H-AU,DVM9U^;HAT9PMK+W(&P$8>QMG)V7)EY\XFXJ"NL4?G'#8)ZNX8"85>S'9H%4F MQD%5&#Q3I=EDT_-+D?*1+O2JG18YKKES@IK_;IVG5%!%^*9HT_O'7.4W*XZ[ M_TJR_:VR*]BKL7YG'[O(FU,0F9R"R)/HR=XIB$R/7V1\ AKKL^71B8SJD]#& M<6OKL-5X SC4#L+O<#SFZZ3!>,ZX9J*V9BS+J'AUYC+TFHS-'VI;_&9^1G,R MY_JQ 0?A>OR-9FQ>I,VL>RA$/6L]_@K+:R?-B=KD8B*C"YJ-:E--QW88F(') M6E\0L(O=%>FA,#XUQ43YD M9#]8'G],:B[_2M,TCI,$J^AHY%4PPNJ6)/#C9\.T0026!S+]6:WQW<8[9'\? M8'NZKT.PE>*=B*T4KS4@_KI!1)KZ=QO+ Q'8+F"] _G]>:"G_#%Q#+N*:<.> M8!Q)4PR!7O3W:)(@U4G@X]\?["F)XS3U(X#Y%<0QAL#3B".8 M" (7%LWX,[ M[Z-H]9Z*UO^]'/X&4$L#!!0 ( 'U[I%:7BKL

($4MC:!G%L):W8(%@JK2 KQG"L1:&8*V9(D &I#4B73ZLSJ8U/=' M&@ =!AFH)H>_='IN'IR3@LH&8<;=="!\";$O!T%,1Z6,Q_A7+W##P?*3'R,# M25O!%5&[ZSDR)RM$7']6?.]S9+JB].W.D>_VF6#7/[1N["(VUHAYA!/<<5_^ MK+NEJZGNV4N9V[Q4%9"R4*^U5M*XFUT*=XAN?B7]L1Y]/'"Q/^D2>J%+WLZL MGO*MW6%+MN!#_'[,]JMW_^?&H]D[=L"UYO J.S(S[.*V_?:X\[UQ[U M[/0M7_E$Y\9GH$ZFUES;(5?$+1KR[\/>H)UWJG_T8Z=TR/T[ MFRUB*U=L%IT=Q'R#I=7?R+\N[GMO>QSW9D]Y[OS^K^801WB=M&/!>*^X4L9Z M1I(T1#!N%*&WU[CK9>]9_V ]NN&9D^TMG-3_L]=H_;.W]6WC>&; M'S_L-D\_X>;Z_LG6QS_W\W.:K<_MF6RR;XUC^)_8;GTX:-)/)\V/FWC[VP9K MKG_"6ZU-OGWP&=[I*VE^_//*F"F-GYRA!,ABN!(A=6"<^.TUIY3(@CCWB@5:J1; M%*2;D2UF5BCB&46&$H(X-11IJB6*5$J2!6]LU$NK5.EEA4V-=#72O6VDRS'4 M)& A,(T\9BV4& @UCE&:L-2WE[VKD>Z1D6Y&KIC%Z'T0# GE3:Z22Y!3'B.6 MC)16VL1]S>EJI*N1KD*ZO,N)A%&O/>9!!>VL251:^(LCSO@:Z18%Z694C+$% M]BT(19'IE(4.) )&+I VR63Y0BYR*0JJ\+(Q[*4@W14AA->&MDT>B#+R_$'T M!([:.?QK^ ?*?WFF\+8$8$95:69M$"#Q\H2-/N_HR#X<%=M6C4IF\]U99S45(FCKON-3,)?@AVN^2+]UL-$]B M$>K*<6ENM38*@@OTV &*7^*//'R?XV&>UMT?Y])"*$]LX0K[HSREC%K70A8/3 8H),.#!I89Z89!=0Y&<+D&!0S=8B MJT[YX:A_%G\\**YE<>/OS#?_$$;NLB7!:+G8WTKC:/3NC[%I7&!DT&OY]UG1$8RCEA,"B<@9([ 3!SN]F.< M861%;]+/DUDQJ#(/!N7?8*W>[ Z&MM,IK62Y6,])!FTW*B='7N4:MCM*-L\B MN'ZER--K^ANS]S^/'*Y8P8'=Z_5S-MPXG+T;\R4_8W<_2"6H!'U'*JK&P7\#(!JV1MM1012VL M"&EIM=>]8J[VS[IY,IE6BM9N>_#K2983TMH^HGS:'DJ]O?,)FO+OH_%O>8+Y MWL%AE;2VNC[PY-T"&$65 MJY-[ %YTYN_%KOT)[]V&)<3VBYR!USL XI/;<-Y;?M?FSH65!,S=3\AG_B2_ M(#P^KPWPT+-7SU\?]V4.KDRQ'\/RU WA0A\#?*NZ%.Z[#[S7CP:PVXK](G=_ M3BB!_NV=Q'+9R1WX,_\Q9[CT<[_D>TRG#@R@D3'W7!]&/Z?!P-W'B2CY8VAI M/Z;,>:%O':QW63D@&]]=X4'CA)-2EBF=>$S42P 58;?S1 M [BI, [FNXN=WA'\FCK1CU&L=YZA-UXL[SC%G611Y8FMM>(Q*L9S]%WIE#N)!!*:5I]5_1Q9 >%BECF::.-CM=<*@="8,8!D; M@^YX:UMQO M/FEU^S_83>9*ZT0!F_F P2:C,LBY3:^YR\6,T!.ROX-QZ /8! M,,*821],O#Z878;T\:*=KZOT2&'1.UN7CG9[XU:4"9D'H\ZP#6OX]+):M?M" MAUS1\#'W/3,P#VT=P4X^3I.$@ZMNTNNN /,M[N"Z&D,!SU&!LR YEC_^?B M+G*<=X;/OV+=H-<9#:__RB4/YE6RJE6C7?_WU5LBYK5W>6H,)>Q2ET_]N]L_ M#UG_ >RO'^T^L@D:^X?M'-F3P=+O%U\1WF]\6_1]R M3G(YL_X8=4/L5Y&D_VL7IBT%P FL//_S:S^B@N6PI/9@>5D[)2/:__YNKY^/ MBS(!-YM?6FM__;6Q7KS[NOG7^F;S8_'WYZWUK^];7Y:+S>;[ZY/F%^4-LIOT M2]':*MYO-="G+UM_;:ZOM>"7#YO-M>;[S;6_"GC3UD;I72M^^]I< M^[J^"9]?#EN^WK_V2W_9)?\:=1BNP]Y0S'F>,%C($)TWVM$@@EM _UH^!2E? M..N7 6F'&A#J6TPZU8J^_ML M&PND".XT_?GE,YA+%/T^#YL,W7FGY]=J9Z//[@;;/1E?,YX+,P^%41W>OB,* M._&854,X?LG>9>_# M8I3]/-!G6=AC4.V>P+3*+4D^9AR/TQ7.SRQ4,.U^G/3013?DI*?RU:43<_JQ M[J2\^?O==DS%QG'THY)9;Z4$\ZV_7))5L'6;#_/.+SS;0>6,U?8@CT[#[L,4 M^&WI_=9Z8^E?R_E]H&GMF+>% ".9\8_?;_K=2A;=*1U!4[Z2E>);UOQ(V4%R MW3M-WKN3;YD'_0QUL@C(Q#44LFO-M\_]9>.SW#$'SH_IC053\O2$5@_/%%:6 M;_[VN7#-M F>;8DO->E\],[U;F!,2[L9_V6Y-$48D,DK.UAU8)"J?H=NA;;" MUW)K\U]+#)X^.CV?09,;7)A%_2L[^K'/&OUN#*-.W$J73QTWSUO^[F3\X9L^ M?SSZK@B!24\X4LEJQ&.(R/K(E,G;M-S*V^ORQ/^?#!3'$ 3=@=YPQK#I1S^ MTDQR1-0<9%-^_6Z7SF*UL4FY1'2*/ AL0A(FAF0I)II'>9/,RL60$+XR_:=^ MA>4KBU'FP^1X%7$O>1:](N@CZ'+ A\P\@H@(Q[)N[(MJ++^=/,M+24:NKUS\ M*V\IBG*M:@$E+U0QIO6KI?@6@@^+-YPOY_PR,OCNZ= <9_!ML,;I#[*]]X,T\L][G\CV M:4/LP/.:!\W]QK=/QSL?_X'6?)VM$-#RIUOK_[2WUK^>P,\GS?5_]AJGG0Z\ M&]VF\+WU#_L[W^#-6YW4N*)2C*<<"\8"$IXRQ(/DR 89$);:8$Y2,(DLK4I* MEQ6GCYW!]RH2E6L"L.HUD MB7O/4+3)(ZYU0":2A*BADL6H>=1I:97I945K&*QA\!7!X%T*# 9O+'5$6R8$ M5U$[J05/2FBN)7?&W ('!_#"\%,-B(L%B#,B-DXS[IUVB!#-$8\&B*$D!O[1 M N"0>2.SM,,R$>+A)01K**RA< '>^CE+K=8 ^+P .*-MXVSBT3N/I RR+E, M2%L83J^558EJ3ZF G;$PR^SQ]0H?$0<7S_M:7[GX5SY1P=[G5Y%_/QUE6CR* MHM+SZ,B?QV?<;=1>2-WTY_1RYSFSE3[V>F&PU@U?JM2"LQ5\?2KF&7[NE'4_ MX;JUJ=#G>FF?V])^A>BZ\ :3$"C22L#2SDA$AAN*8F3&1J(I9FIIE1.\S#2? M4VGKQ/#& M3O1>[Z'>W!R!;7?XQ\<\]_XNI]Z55&!Z^09T"^E8L5S!SC4B/A:$7%N#M(:$1<$ M$6=Z"?C/>8.4T-R%X) /%0 JI1I:*@!P5U!+FK.,ZQ_W/G@;-+\BU1KT: M]1:<##=!O1J&KA00#CC(S>)&>>B0#@PBKAP M).O1)^0]UEA:15BTL#&F=)FR1\^ JB->ZRL7[63K[?R\HAJS?6MGII!4VPH'G5N$=!$ZGN5P/C M5Y4LU/T*9/RJ[(9^XXW%*X;RE]38VU5?J8M07%.$@EY8"^NB"771A+IH0ETT MX87VW;5%$VI!_EIVL)8=7&J+%()/F&H2/)VLGVE?Z?[._9R.T\ MV#Z >ZQ_.MKZMD$:'S\=-5H[G>;!YDEC_<^]64'^QM'6NO^.@PDN!8X4"$NK0I)ER1[L,Z[E5VL<7)RWO@,.LD"3\4XY@C6WE!C' MG*2&@Z>7<= 1FK#,,BVPK"$>?4):)HVTEM8SHF(,/I^T+TN! M:QBL8?#UP."=LI&TH39P##9A@"M8K0PUF@C,@E#*REO@X#P%^6O,NPOFD-!>"$FRX M==$F+3D@GF$^)J-O W4UY5LD^&.7X4^2Q'#*XIP:V!ZW.1-=J8B$%#P"S7-: M ^436BUS\S**,-4JZ;5*^FO!W[F['FO5Q 6"XY-93Z1505-'"9)1*L0S);58 M6)0$X4H%3UW(R3%:+,N'PW&ME[JXEC]W9UMM^0ME^3.^-XQMX($9I *-B,,E[EL\HKB9K4,^L):]W,Z5.IE?:$,?M:_PJ2.FF"D+*SM M7*N$'$X*L:"D"2YK%MBE58[Y,A>SM0^>;UVOI:OKD+#:+_[H?IE:FVL1@/NB M:'4%W G 60K+D T USRFO!^3$:6H17 X$-B&PWY,B67#7G(IVOJ L ;"!7!3 MU4"X($ XXYB2VE&/F4..*(JXDPX9:0RRVAK8M\ N1J6E5;5,'U[&IX;!&@87 MYZWOY+1+/&*3(B =_!2B(0:V^!BH@8J!\7AWIUVM4/UTF#?CIC/#"2*0-A5ENA?.4)&]=S HRLU&P=5!8#78O$>SN@G462\FS6C$FG"9MM<-: M.6\),5SIFO.]./R;\5I:XPT1GB+JL]>2D("!J6^S+KH@O9Y]2$HNN 0-XDARY-"FG.# M>0ZF"&)IE9&5!0F86%39KOH\]R& \4 76 T8CP88,ZXL(A67A"E$B6.(:Z*0 MHXRB*(-3C%$9(@ &535@U(#QB$K"#POPJ@'CT0!CQ@\4E&MK0&C!HQK:Q4\+&BL!HQ' XP9QTE*7DDM"&(F M!@2#I9&Q3B& =<9I=$ 2;;DE69#DC><'C/NKOU(U,?-V-\ $_@/EOSS]2]'R ML.@\F>WI'W^Q7XA883QWQ,4$P78WNU=C@!^*P54.HO:@B-D%.VC_C/EK8!G>)D]^&]CB/VB#?*O4ZG=[1X(_;=* H._!IQ8[!L%=PM;+= M5>U8FA5![B>>>Z/,+8/;WD[F]FZ?,?THC<6:/8DFKWF%DKRU&N^-79=!N!9% MO7.?W4GD^4[Q\"_S_ A=6+/J\/@Z0J N7?W<&]W=SDZK0;] MQL=-OK.W>;*UO@O/^'RPW?*GS=;GSN6-[M;'?SJ-4VC'MW_VMM;WCYH?&T?; M>[L'C;U-OO41-K@?=W:;IPW2_/C/9XSOC)BI!.>(^"L19BDA''Y$U MV EMK31*/%GIZCI4J@;"A03".E3JM0'AQ3/%UL9W+YB04D24@LT)GC$@S85$ M/$6&81F4, 7>9*C4702T+NW.QGXL_1RNH-+$UV]T?=526R_^G.41.>LD,[_. MO7\^CEJ5=902&Q9X1,)%BKB5P%&]9L@;QJPAA%'L )K)LB8/EK.N13<6U[3G MQL)JTWY^UC6NV,J) ]8E$"-,(TXM029PB;ST1$8JE><*3!LO2[8@L5QO3U7C MXY3W<#F?8O7C(=C'K._P5DCU\.WSB\:PN=.3J=UD#57S@JI+0A*EIRQ:;HQ7 M'"7L@86$9)&-3B/LG=,NBTR0L+1* :LX?5.>LMKLGX&ZU&;_.&8_XQ>BDB49 M,45"4#![X0S2 CLDC511>NNXS Q%T66.'TQ17I)?J+)1L^#D9>LP]H''=W\4 M\?@P=@?Q^KJB;WY_-7=N M!1YTDK"9,BP!5#&V+/@B:136CI)%9QNU(3^F(9]>,.36U^]6>$(H]RAQG.N8 M&HE<"!)1*P-U@HG(1'9XBF5>NT6>GUF, WUK=\@B48[->T5>04\I;;^1['^ M&:;" XO6$(:YXOJR42^CTO#;; 6;NTG65R;GC__J&WZJ6QZAHIXR90G42.?)$%<2XDL MYASAA)G#DC%A8QE*HKA8(*-^4SZ3S6L3I._) L?)S0PZ(/1&.56Z9()U=OYUG)2_;S='4&_C6&_UQV\*Z=W=5TK3^Z-XV'?0K^WN[9_LCF, M!X-FKYM;V>]U.N5",8S].*@7B+DM$%M7!/!H8:STDJ)@C$$\$8>LCA8)G*2B M+E+B7 W$-1 _,=FN@?AE /$,4U?8*1RC0RF%#,3< M(\-C0IB3$ AASE@ 8BZ7*7TP4U\ (+Y"&2N_E*\F;#E3K_K+2U3/^M]+;U'9 M!W5@\1%[0V$_1IUW6,@0G3?:T2""JX "OA/#6C8Y3@3,#!$-T#3.0] D"!:T M]1' (TIQW7.P-C8IEXA.D0>!34C"Q) LH(KF45Y^#@4B8)5G(B;*+>/.46H" M5L9K3CVCXWR[6XS5HBF&7=T_]^W77_?3S7F6$T&R+/:3 *JO5]ZZHQ#9;<:F MN%ZM;-R/O+2IF7S,,T6L_W,QMW6,(?C\*]8!8HR&UW_EHBS:K&3.V%I7_]?U M?U^]C3;837=Y:ILG_%)*ZM2_N?7E%)+4R^2]M\IJ+D+2&0:XU,PE^"':[SF( M=OREW?YY&O&/B%P_VGUD$[SA'[9S9$\&2[]?[!?HE'&+%(4FWVX4KN^ME![/ M7,M! Q[1JQC*'[!2Q7Z5V_N_=F':4H ) F7[GU\/&XQ:JU2HZZ4B,S"8B(/_ M_=U>/XD79=9N-K^TUO[Z:V.]>/=U\Z_US>;'XN_/6^M?W[>^+!>;S?BM56\WVJN;S2_P*O 3U^V_MI<7VO!+Q\VFVO-]YMK?Q7PIJV-QD:S M]:7X[6MS[>OZ)GQ^.9'\!K1YD@1^=>U+%H04J!CO-)JC [B3O[BUX, G,2&. M"^)YY-X%Z8D-C&(/DU6[*WT\EU-!^^V?)?!O=@?#_BBO3[D2^W]B@&[XL0;D M\R>@?1RLMP>^TQN,^K$%SW_7Z?G]Y]X&G$RV =NB<;!]#)1^?^<;T._6Y_UM M^DDTOFT>P_8 *'Q#;'W\O \T_1@H?2?^Y_/)SK=PZ"B7.WO[)SM['X#2?X;G M?P7J_GEO9WW_>'OOPWZ#PM]/]_G.QT\GC;T/J=EJ'&U]^BZD88X[X.XI 8LW MFB,CI$6:T"B()$:X<)EQ26R=!O8GB4U '9SVVEKA4R ,N$1(2T6$O=5AMK+^ M"#!Q?>/SYC]KK+_VRL?\RFNO8>_K;9VMSX,MD?C.?%)>"YDL[\ MNA$7&RV (!&G:932<,ZU2YE"!>Y9D $S>;]5YC%)X0VKS'L[V"T^='I'19[9 M\$0 [LFNM_ALA['XW![L+[; Z]:H7QR.^L"_8LD:1X,J"G/\%OW\%N',GDOM MU6&O *(,#;6NW6D/3_(?SKXP#H H>27\'=H'O*/HCWO^@]S.6 M&+%2K(_Z^?FWXJ[+Q5&$]I9:L=.W&QS9P[*5NWE4RGO]M/UVN;3Z/&0IZ\86 M=C#H99H-WS]J#W>A?>U!&8(ZN1B-7]X-5\Z'=>H)(>;RE.4-[.#\SM5CL[;P MSU[G9_5\(/2Q?5@*#Y\U!6C]"-ZY8O$6[&24GW%H^]"C[6YF^;NV^Z,:E0.[ MGUN6VL7ZWWFAX?K_Q)=4\/LFW M[?;RS+:=<9-6BF_PVKW\Y]R]%X:_W%CT;=XF%?#CX##Z4<7Q)[-H4 X]C(P? M]?O0@L[)Y%Z[]F>>%R<7;CC/E%>$"IY0N=":]4;D%B.1?AK0?37;,R@V^/N"9^\? ZHT[<2LUQ;Z]5 MX[^5MD9#L*5N)5TUZ9F_QQNB04D)W_+RV#SZ[EA4B02)2(HXQ_##3H9[A4PD M'-BS=(&QR\O=PB'MM=.X-)AU0(AI MZI?5$Y.5M*B6TK?<%1\R,RSW'&^Y%QIV"/L'X,\SEG'?R+#Y",#?.]]E+BU\ M&6/W&^QYX+:=S'EG"L8O7J#G>(IU'1JB"U231AKI,V&/.D6/26"Y\L_;YY93RCN-[S?7&7 M?Q;F(E_F!KX*(:,>H5HYYFZ7U\Z9R@>+1ZR23^1=^O)^I MWF"I)76>^'$U+36SE- Q:3DA M"5LBN19$8V<,D;]7[,$L) ML2/*0S=S(Q/G6IG(K C)"]C/$BE,30F?<)%IOI^EA"ZQI(W(JTIBB!O,D>8T M(N,Q(XI*&T68$R6LO82+8J=74L+[F6I-"1_16F; .C272$BO$6=!(6>2 M0MXQ$@W51B<_'TI8>PEK+^$;]1**VDOXF)10<)^3!& 6L4%)1316 M0LJ:$C[E(O-EEA)BKFE.T$8^ 1ODP3BD8U3(,D6\Y)Y9;)966>TE?$UV>B4E MO)^IUI3P$:UUAA(FG^4E'$4A9 GDQ )RTB448(PP34P)H#"5\ M\UY"PDL^I&LOX?TH8>U]N"4E3#1@'CS!25G.G#(XVB0E%3+C)7 MQ!)J&A+EWB.:3/8[)(:TD PQ$G@,6F=J6'L)7YF=7DD)[V>J-25\1&N=H83< M4Z\CC2@:1A'/Y7"<#1IAFL,_#;!W0I=6Z8K1BV&L+X<2OGDOX?64<%9A<%H6 MY<5DEB^7PAO#HU[6;3BR_2N5,I9AI \ GCJPI F,BUE:+5569I"SL%6&\7B"P+S\&<\55?Z_.[!A"HNG"MQVP.#M+;J,N^4*H\G^EP^A4W?GS/L7#:N(2B?B7KG21F3K1CKI+3R9\"2KGE*I4?6Y4^J/0PV]"$L@K36'IF M?/OE\5_AC=#%3\H'5Q]V>MT?:)B;.]V07K=\W_>];IE@6;;HG>W8KH_%E]U8 MWF*8+VGWBV3;^?4[HW-I'UN*!/E^VU6M@ZD;"[-VH@VBR)=)4BS M:,O,9K1*MW\W_K9>3%X@?C=9:QHQY+"'7 M:'/-.*7.+'ULD-D6!P58AFUWL^;-J%OI5X4*.:8_Z$=@E:)G#A(%XE5U;6:SO#J+(1P%O;65OBPL0NB=;:8;_=*8C([6;X M@GK/^*]4KQ0?;BO!.S:E25OOLK@FYIF**LL0$\Z],1J64LEIB+E$C[]:E^J& MC6Q9A6TH!QXDN?!:[RUIWI=3=1^CH_,?/T7< 2ML)N'UN;,L> MUPORU0;5H,U/WYW@BF">D*7)(YH[*Z- >5!B"AH 8"+H$ MMISE%(6%/X%1=WWNM]@I5]UKX**;;WD'O)C%LYD5<7CYE5X?2%1%(BZCPJ"& MA6MA8?^H\>F[)[/6&EHVC.- MW\Q[QQPZY*>%BVSZRQ#^,U:R3,69HBH0YU$P9A7KA>H7PA4 PJ]-OHQ M@KX'4\.E46<(:U>:E]<:=4:+R_MJX9/@CJ>\G3;46>E9$D$%+KE3MG)=8ZPO M&O,406Z[PS\FE/A+1J.:"%]EH'O^I+GVWK,&"G.WB\ZT9:_NO)ZC]W=5'+/*CP\VPHRZ\RY-<^\ MO)+ >IDUPWN5##6L^=6"4Z\OUTY?: ^L+RZ2(*E%TN1]7(P$&>TBHB()+8B' MO]J\OMS@^M0X^AX2H]BJA!3AP$\\;%L,TP9A*10VVJL08M;SN)Z?+ -]R&+1V270.5F^ M<1?3R85L;DM;%GN]S[N8RFUQQH.FW(30"=.RO>?JU\N5?'J6QO[O"'HE08]= M)3$^H67]B][/:2,9%X:M-BRYU^WQE%?SUXSLO !/[/N2O>]5T3;SS/HK(.AP>W>N/?R M[V5?A6SJ$3JPU +OPY".(Z6T<$0&IHF.PED:[TR8KJRHN'SZ^/U",PZKL6_UWL56-H<4^_T8WNRBUSB%]AQ]=U&I9)U#S&B% MN,ZYHU%'A('[TJ"=9(;FT+ 5?CU3NM($[N63N[&.85UP;2X%U\2E+I_ZMZZ= M]MQMJ6NGO='::5?6FKI%[:BGJN%RXWJ\V3VCT%OI0^6BM)V_8[_<;0*Y?I$66&KN;0N%&09UTX9'4#;X":# MLPB0L]T9+/D7VID=K*A]C';;L'?N_O&6YL!1<^T[U8DPIS@23 '1"MPB1ZU' M&"O"1/:M*G9I9-]ZCP7/#3<*N8 EXE$8Y#AER-A@A!/!,.GK'ION,<6"99HK MI%)6H8W<(6NP1PQ@QQI*C35UCUWH,1]HH((9) //=;8\1S9RC1BEP,^HBBJ% MI=7+6Y>S!?R*_U3[_.D(O;EZGJ:\$-D7<-7IRF_E,WLC /LP^-=KK(>EZ(I6 M2[/V^E3N3+7%6C!+ZXT3]X/W2;#Z#9O_.9ZCC[ZG'T&.[B/-L#"U;[Y[5WL MQM0>_NN\:/&EO(.RLF8F,%.Q4'=5F+A=?:[75BWH;B^_V/F"O]VED)!*C'@: M'9 <'HW5!CK".Z=9"DQ'\ZN3GVQB\,+PTW2V?>KI=NO3Z4YK7VSO;1QOGV[SK8^;Q[#G$MAKGN[L-M>;G:U6I]UH?=B#-G*X!VF<[M/M@\^Y^,GQY81EI8A+/C#D MB B(V^"1H_"3D-9$S*/U7BRMLF5AV,PATDSAN_D8V#/+4-40^=HA\@X(*7VP MS,1 J H\&652$$YR)EQD@B3RJ\ P]JC 6&/?7;#O=%9MCVO%I$=24(JXT!09 MPQQ 88A.1$*4D4NKRH@YR7<]!_R] K+^:]6&A13*NB"1NC5JWP*U3V89JXD\<"8#"M8;Q)--R(BR>A^. MD<7$D@.L(UG247]MOMOZ7!S903$:3,)4^S'%?LQ!^.4Q M*EC>-8>KA?W1C^,#VZ.8[W"N$33[C7A\V,M2)Y5^0RF25UDX?-]VBHWC*M*^ M> >/WLWYW<5: K7'@RK8^#E*H'Z_&^Y7:DHWR!'A'=A]OGJC+DZ+\H%D8KV ML(HQ[Y;HE],%CN&72K/D<.0Z8\3)=_(P!RU\N^J3[/+-"0'+X]/K2?#_^.^3 M%[ZBQY;S8_X<=6.9"[!29-T4"SC6/QEG?>;;G,6%%6O>YUBA?,\O0]L-MA\& MQ;M>SOW[+5^Y]&'MR[NE?Q7MP6 $K[?VY6MY&X3Y-^EQF!.0V_=;J';9]H;G^UR318^IMR/AM MH(D7\S0NMI8@3*YI;8&*+[YW"+UVM-O.^18=VQ^G#>3>SA]5@?V'A].#=4&C MX\>H'?(R44VMPU$?9MHXY;X]./L4VI1'YK#?^]D.9>Q .Z9R>K^.2;?3+5RAS1F(G^G$H0F[JR7GN24ZIF(QP/FD( M[5B%AIW%+D"37"4Z=#+._*FDD0:#LVB(6 X?+*%=^&O9Z%3E:Y>S%;5ATW,, M-YO*R,X-@4$XB.>I,.55Q>@P1ZF7G3V^QSA%9BHOYCR3P]D,#,"]_6[NC+.[ MC--X?*^?,[MZ5?=,I8*L%&LS(S:(TQT M* 4%JON6O[6/9^STUDE@!,#L/E* MK0$V?8#J+2P37.$(T>31K!?5]H89K >4WJ8 M@3&LY=VRXT90SE.@,G%/B<$N1U!;#XQ>,*HNQ]E^:6V]_W__V?IK?>/SE__[ M/YH2]>]BX]/7S=;V#)6Y,/>O#-C^]<,O-C89(0..RKI$N/',>!6UI50XY;7S M?N'"@&]*HUB[51[=3"\^2?CZA ^^5^3F[+DZMVM,IQ_FWHXI954'S M;R(NDZQHP5Y0 .6C1'MJ>K\NJ*,][QEX6 >&OO#Q>:V1D'4,:1U#^MIB2*=9 M?E;?+'[+ZC7_RI*4+@+7*+5M@ -5HB2/4;FK#JZJ@ZO.S_*9PY$Z)F32W!+F MB-=2$B($_,@GLMF$_NKD;M83\R).X.^[&:Q.Y?8V\/;IMFCL;7.XY\'VZ2?> M/-T0V]_@N]^^BNW3'Z=;'S_O-CYNG%P^E6NT/N\U]_9/FGN[T/Z=O>;Z#P8; MRMV=]36RT^KL;:TW^,['C:/MUI\Y;FJF)!5UCA.J.)+$R5SW4")+B$'16T9A MY(B.*8OS+PLYKS*E=>1H#6X+\-9W":Y/U'!.2&0A:!YBX.6?+K" R[TKH'QGTNJ%C7-7U4^)41&\R\%#%*'C!@ ML+1@S5QC&RRSOU2UNQZ'[R$IWXS#K?12(D-?!IJ?S/+2P*U1QI4">!YQX*)( M$\\0AUT%#YPDC0&(U#*A\@%X7@>%+NZ.,KG$-,%<6XRYL4P;;6**6GKM ^Q, MYAH46MOZT]GZ#'-C3#@O$Y V$PW\$S!RGC'DL.T.75F0W9MX;LYOM9>B9IC)H8B:@6@-LB)>08Y2CP$#'CCL'@+ZUJ M\F"\OAJ+GM,S6)OXHS&TVL2?S\1G6!EUTAAG"3+$1L0=L#(;O$:$&N\ML<$Q MM[0J](,S\Q[=Q%\!)7N!KK.9 VH[S+$S#SR3_L7V^5??&WMNQW%X#*99Z(UR M5%_IO7V;ASKS[)I7M+8)07/9*.8H]Y)9D\]");? 8!4FYIKJ\?5Y]E.N6E]F MB:FU"<8^&22$HHAC:Y".#E8MHJ@7G.$@8-5B?)D*,B=?PCP,YYF]CC5LUK Y M%]@,25%FP MJ4::.(:\D)%)$H-TIG3!ZH?S_86%S07=)[RLO/[6[G0!JMM[8R<*[=;U?L9Q M68L+509S_FV[^P*+,=Z4J_=EMWK'PU'?[UKHDD5^D:75.Y7_/8I%:.=RAL.I M%RQL]R1G=\$7H?$ \G>J*5R6$CZ_69F;W^\=EZ7E.B+5Z]X9C0ZNCY)Y2NJ03/>*G[L?3K^+KBU 88<6:.S\B/KL.\T*(XM-";:Z MQ8?H^I4L#ZV6_K*D[;DN4JD"DU_4E=I"66(%9K(?]OJ#PHX U?HE+[3 Y([& M@#U%& ">?_3MP;@R;I7"G:51*L64L\O@KJ/#3"CO N&:!TP\"UG_@3/#-2'! M!<]T +1P3(RWJS1GU-^$W*6%?CYKS-]5D]?.WJTJ>4MJ\+[*BK=:/XZ^4RQQ MH$DAZ2U8L6,869%5S'6D-B2.A64Y(Q&O7)>&,JF".U[_IXWN(M]LE668C\XF M%DRBCO7G8D _VT HSCXME:=*6Q_# 7#4WNC'[IB85KR4KQ1%74'WB9&'R+J" M;EU!MZZ@^Q(JZ/Y28.F2(!,0-T\"I\#=@=_AH).0/@F=C&$Q>;MPDC8W6>5Z M.\O^=.^DN3KB2B8?Q#"BYS*%M5S*/YS6$2^G&,)DOQ6]5">&+7QO_K?SVJ]=/ M(F*%4/T(DD2"7?_0>TL227A-\5(:RU>D?@RQIT=JK&8OJ&<%?PS-K\=JK+C= M;6\I?_0R%'6JM;CB1>MV>)N\T7OH.[V,OOA<'NR]^6[XVYYDJ>4WWP\3OEK\ M'?M%Z=9^R[U1.0R+"7>ONZ+X&YCGA6[XQ<*P>,$<]96/F:UXZX"A!9_N]'<* M_W]+S<)[YRZ]H0YEOQ-1=^A<.Y211^O0^73B:XLU?DVZ6_<(K- 4.V>5Q\90 M[I*Q$7/)L28V)L$5'KM#*:5H\L.-@17OR_/ \M#VS$TZ>?2$*/U;C_7[-IJ;?-FZW-[9]V+G=;:<;.U2?/?&Z<[^SL'7\5,2/'IC^/& MQ\_[3=H0T";2_/CG?O.TTVFL;Y#&WD[^^VGSX//!3JN3];CH>4CQ5]9H_?@> M(XW6NA5Y:Q2L/+_A5ZPK6^+8X;WV7\).'X=IL M!.H9FDTA7"ZY\:K#3Y\:Z?AEI M,$(N)0+G #.+,1>28]H@93Y031@2M@-B+ M9<'FI8=08UV-=0OPUG? .D*TXXY(*H/ASFGMO7/&..R=Y=K'RUCWRVC[L>-T ML)7.4*^&N3G"W''C_;A@NTBP3XG8GOVBRW$S*I:NT;FO9*>S+I&L)9!:!514N:Q.^OT+BPTRWWOT_BS'/[/YA?\^H=+#=3UPC'BU% M5@F+#+7,&ZJ)4GIIU2PS.2_EA-J:%]":.>,2:QH,A8&.U#CF,%?&B.0I3(-Z M?[MHACR[OS4N!"H)05C9@+B- KF$'8J$:2*(9)&&;,E4SFK./Y\EUW$PK_+* M>EA?Y957*/J\X/P2NCCY)5>FI=89)W7&29UQ4F> M$U.A=/2:>6$\ESQA806C3GA"I.'$.#.N:T4I1U?) [[A=).#?,+RYT&SM7FZ MU?+0PD^LT?K*&^M_[NY NW?6W^UM?]LXWCY=XY=/;[9/&W3[8)LT]AJB>0IO MM^Z/FZT?1XV##]#R/_<;'YN[VZT/>XWUW4OI)I6"O9")22<32BY%Q$7@R 1E M4#).*4:#X1TD\6ST8>YDYXF;6+Q>NUA3J.WVVL/<0W5H:UW](N(D)@1V@1-$W=8&Q$) M%<+[8&.24OYB__"&:AD]F?6+$,8>:TH4JRQ$29 M:T(>O%FHP],7R(8OV2X50;JD%>$^<$N8]LQ$'2RCTB:BR&4^##_4>_]GM^:9 MO;]F +G.2<2P 4XLAX-#> IM^K=ZI-._#'SK-S2'KP7-,Y6;0\1/@MP62?^M- G[N2: MMUR9-8)B-NFHG'6_KF7&EF[.5"+Z"0Q)75OLJR"L0,4CEYZ"'6$NS5YVY5HW M;!P<=GHG,;Z+W9C:P[\[\ X+4X?J9$(?/YTV/P+IV_NSW?S6(%OKGSM W=J- MU@^V<] @C8\?]IL'FW1GSQ]?KD.UL][ \+QVXV"3;)]^Y;ZV' M _C]:/O;)[J]!U>;RK;])]K.<-=/ MYP4L9+[FMXS[F;.W#W-E=6.R>O4)QF,UNN81^6/Y^ *!F$*P6 MH/:@NH/M=$Z*0>PDE$9ELN>D;GJ[.QCUR_7+@VW;[DE>:?+*YRJ;KNJC'OLX M*&$<5L##HM.#7SKM@_QI+FS<[I9K$<#Y[U4WK!1;@,=331S?#&Z4X2,6OW5C MV<@X!I!J26B[4;D._*LXLH/G*=C>=H=_5+-C<](Q&U6;7TB%WR=&O<;>/ONN MM%!2A(BL509QHAS*XC>P]<6*$LR4ML#:U,KL=K>8E/;-B_Q=!MQ$'F"=%G![ MPRVLSTE+H(S:,!^3T9,#B_& S[I)Z@&_[X"?KN'OC)OH,+7(2L$05SXOG %3.Q;/^,&6+6NA6]!L*8;Y8) M.XP6?'\*=V _T#[($.9'_;PQ ( INKUA+@S=Z^=K?_N__Z-A>OQ[\UWS<_DC M^?>_JJ+0OC.:X&1[_*082I"<$*#,F?,KO <*G"=,R#^5@05E,][93HFK7W9C M'(X)]QUA#7NE ,ZPY@PFNS8:,[ SK*DDR8/-E47,;T"S"6V;\+3/N1!U#'^U MK6MW@+7'P?O<+]UA/=>OI'2M3Z??H\TD!TND/09(BT(@QY-"E 7)5**1<9CK M?&56T.W>X ;43!!X$%-2UZPFMA_V1AOWKT7?*8%&! M32 RA$K$K3'(TM+I[A/&P4DPR:55MJ)O&/:2,95H5KEU+T#:>O3QP,7^A8\N M@]PBT].;"/:W7G\_]@<948GZ=S&];5SD5YII^ 6XGY#786\(=G$WDU:!9Z$I M*L&<.4_.8.R\,HPY'( KW8V@CALYW:LU9[EY:XZ_:X&)U58@!; *G"509!SG MB$F+K1(J6L.65L6-!GU'''<4"(5( !CP).*ITQH'0J1,#OA$XG.1,%\HI812*,B(MYT&>+-\R1J#Z23RY/BB]^-X91 M)VZEZ]?ZQ:H._PQ>N>:G[P2VASK2A(C2&'%G&-(8%G?8O@AI*/ [82][O*@G M,01B:;*8*V5M(!%0PGF!I2^YUT6OW$U+QWZW=]2=[$;R/,G[C3Q-8O]GG-IM MW&E'<13S><-@+,E=$6(Q]#^4H8_3F-OUP?WUU%:N'2;JP,N7KS0R<6EZ2U+ODSV M66?"AG<1?OEEIMHMISA@ZS.]_N9D:8'%H3I%]=7>O^B<4X2Y)=.\]92[UYMU ME[B!M948!E25)^-U8C0EII1CWC&AKG%%SH0C7K&-F7#5DSMYI9X]//%^3':L MA;UYW%C?P(UO_W2VZ;;8:GW>VS[=$(W3W5U@KKLYG''KVY][C=;FZ8P6]M[& M4:/UZ7CGVS][.WO[HOFQ"=?MGVY]_-!N'GS8:^RMB>V#QG%CKYER?/%,G+%T MTG!#$(Z2(RX)1T8$A6!#:H(.CA@9EE;ULM*/GGKW6K*,:]1[K:@7C>$I1J(( MX=QCJF,*T7H"MA(UI_0:3WR->L^,>J>74<]CJS67 N72+(@;3Y$3#*-\EH8- MP4F&,KO"\ <7 '@JU)OO)FR1&&JGU_V!8!]QJ/LP9_87[T%FEL'O1HX?$+/T%HWU,#X",!X,LM0A$HI M1::0<@: D5"+G-8.4>UL3()HRT-9$9RQ.?N)YF!<+\.15,-L#;.+Q3IKF'UD MF)WAGS%@H6TR" N:53]41+E4,*+$2J\#[!() YAERU+-V3'UC#![,7EY)DUY M02-#8P$6U2MV;;B8-]6//K9_EH$N.59L'.13YO7FO*F875LYJ.=2ZE11ALN6 MB:ME7E9Y0[CT$+K;MZ'=-D?X=#KYO^-[GG\CC7(^U\Q7[A5']$0!:F?I-7]! M%WP>1SY]Z/4WJY?8= M,^_KR4PZ3)Y<;HM%_VQC-$IVEVKQ*2 J\P M?;_:@;\(^)+_/WOOVM1&LJ4+_Q4%,^^)O2-(.N^7WB>(H WVT-$2;5MN'_CB MR"L("XF1A#'\^G=E26! PMP$+HFT&5*K*RESKR6>M7!=)GR4Z;?Y=_JK! MWJ\E88E.JWM,5HE.JU5TVB^=@>GC/]@5T$60FAWF+:G$IY5(C1?R0E[2U(]Q M-.J.:]!\N.1(K\HLAK_OMK=%"TSA%HQM]_!#9^?S/YW=SQ^^@GF,LPF[=[@O M=L_?T^D:>O\NP]@'K\_;[;?PIB[AZW-O9E! M:B0G\E/B48PR(LZ _N8Z/$@YYW'0D57PZ[;:FX1HE2*U 7[T]@P7Z M?@'T37D$I5'.>,:0-U0C+@@8_;"E(:$2Y=[+))3.T >6[:) WP+Z^WZ6W/XA MCB;5Z1I5Q;.:9[3?7D.*8_*OK_^^J!]U"MP[NK/&:57"+]<6;-@&J+D_R.6@ MKA9HJLI+V?V8*_&E."ZLK4D8:[*>*W84ZZX"&AU M4 UCK?$&!,G"(*M!P1VZ_=/*K7K]#I-G#6[';C'/>'53G#WP\'__B*=: [)Z/;OW)=(&;ZLL:# M=H/?[N41^]E=7EK0B+HQY5?^/1C\,,_W(W*#:+\BFV"PO]ONJ3T;KOQV_17A M_28W5Q2>?K\)O?W%4_HE2/%_;6W&TC@89++P7_%*XND%>5'^I:OK\DM*$E^TY8H*7#6^N['R9AFP$ ,W.<#2H=JU):9![EOI_ M;;5!FNU/M+7Q)1D 0PL$FVAK$7=4(6/@GVB4L#09%J2M&@O7L&YAD89Y2@-K MOO]BA764<8VB" )Q'@VR(6HDC:?:&A(HEED:?E(@*)P,,E=^6KF8,7V]A)M< MQK!SQ4=NKZWL%5B:% [WDSJN>2"WG/]_',%_*O,^@]G.967N:D@Y,&@0#^!K M^?;;/;A=7-@Z9,ULZEP:"W_GEX)Y6DBK[9L==/HGP['U=OE*QY-7&N]VXP"1 M?'(]%J>&@WOS,U ZH9&L<:E*)&X ;B.+)&/,-FO&D7CJ[<)NO!1-A#CBNXJ.EY_6'[L0?2G'?Y"QLV&X^#2XM] M%<#45I6/PV^YL%,<@#:-B=%EP>.JFN@4-[@:^F"/C[L=7Y'DV9.==P PJ9T= MCH-QLGYW4L=/[EL%5?SV8X'SXZ\7O;_H/S#N3#">GHLBRAG#3[IVS%9"ORIH M>D-8!O'XP2]F$A_EV\4HMYUPP&AAQ'C90IX6%@*KG(/K#CE'P M874(G[>D?W7'WW-WA8Z_!R2,N[$UJG9LC8VJS42=UV2,897X9L<@2-/^(#=K MJ-ID#"\Z4_CQ2XT;:XSZU=GO95'PH^IH?'A'%XN*RO]@\)N/VX-/LY,J5+HT M'F=6H>$)7#P9\(_@.Z!GO+%SU .D&N8-$C0VJW_>51[Q"OUKHU\XJ=RZQ,>J M\!GY#^RRESU1)FJW."+[$.&I9*8S'.:RT+ A#/K?J_K3(.BWV@-C4;K9>U59 MS11UAM#($P$6RJA,P5J,0TJ&WV4@3IWC5(A7S?RU=AT#$.O]:G_YX^S')9/V M<-7B;,$.-#K;KG;T<<^XO.FW#VQOY[C:D]]ES1AN]_ZNU'JISX&>4"!]ZWMS M_PM/3#@F,:("2\1-(LAI&U$PV!)#N$[.K*Q+,FU,7 1)WH&4?N(H[R?8H %B M+EH.9>:0*<"M0MB!]04\/JI.\J['4&BAO3-,!2YAQ-A1C*,GG"LB2(CD#DG< M;KV]%OK[6#%LG63,W$E;.0AU^\=H<[3P/V->M),J3!E#RC4Y!,WW619/^_!) M[-6GR?#+BR%KG7ZQ7(L04T)81X6XXP)9H32LGS%1&IP(MBOKH]/^M!R.8X"O M2$ME8U9'-2"2&\>#3A=PL,)"7FVDU_XDUF!K;.3#PW%SJ(>8QA6RPD(#P>X, M#V)8O=SG9U& #+W?\D57FG&A,?,>Y78H8X,'!+T7QYI0V3/7U&G2T6O"@,>0 M/D/%\GVJMQT[1_?S">#)_:*F6\CY5A M\*,&Q_2TWM81[;;YNVKE]<:6!7&;J\W6+B=W;/Q=M&0;C!T@ M)Y5QF>TX._P1Q3X9_>3:8:>ZST$\:UQ:I+D5')A"_6P3]D;=,Y0ZWW,[N7XO MCO*QXZ2+7&4]731=&U;!$A<-=2HSO3(,>Q6*5>.?B-H8SBF._Q>(I<4>,G\AVMF#=>,Q,5YQ(#PZ'!V,!- M8-H9>:=#O/"=6FTTKMK)^ M6\C*)>?)_V/FQA]O)T(S?*<75U^(ZABSV5A?+\A15K;QKC*Z[1NTNGC\:W51 MS*T.;V@LO9=;9.$,M@\_ 'YLNWW*_JQZ[V,34+N$JGGPAZF-KO+K/95._-@. M+V1S_+19>Y^=L>M=;'KCP5PV_[RY[\4*W:YO>C_;N<9[W2W;UDT64^)IGC^> M1I=XFA)/4^)I%B&>YL[XF!OQ-$KFDW]A@G.,!QF=-,%;KYC2VA'+;]7*6E&) MVXY6&A]/CF#,9U-M:)^Q,_&/1/-6OS=F;M7P-C(WA'WPM2>5,^#H,D:+DXH( MDR 1YSH@*ZQ'RK#(#%/<'1@?9!-O#-+]/ECJ MN;?L%/^YV3'E]WLFG;]XJCALS&L8/RI7G,DU)>>?*Z[7I'G<77_^F6#S3Q4O M8RUCU6N"/ZZ?S\\_8WK^C7?TFL+W*\/P>BH;F 7-YQ\':8Q?KG*=C'^\ZT.%*_O0#3R[YU_%SKLMLM?^>MI\]R=BQQ\UWS>][A]U. M:W/O<*?]E>^V_^GNM#=.=X_>PACA/=L?9G:_X MP7+#9*%:]Z5:RBL160R4"<>EE-K3Z .SCCOG;+0/HUK/$F9[@X05\C5'3"%3 MC7V"C-@SC2RQ%##%P4\:?I7!6\.XQB!D0+ZH7,6B%-TF(.@6_I*$ MT<#*.7(^>,2E3DC3%%&.>2?"NZ =0*C&:T(L"H(^^/@U5?\W\]G$W/<<]EP\1%F/" ?9ROK:E4:_%2, M^PF4/!<1O/'(1UF72P@&/SD3?!HBS(\(S<2#PGGF# =3)X0Z"L R5&4FB&> MC$$.:X>T#\FGP+!S)+NBS-K3^T<7/*@+'LPD!Y)YX+Y.NT0<-XIH3C! 0>2< M66*C?D%R\"R%=0I$W LBI@[\E M,8L-1H@D@PDB%3-0!,6\8%28?:J25=6E6 MJ7ZR8ZE 1%T@XG;*\$2<>$'?22$3SXH44^=:VBK#DY"(4^D0CT0C9XA''BP+ M[K UWD_(!)YNB5&08D&18B:9("8*A8GA5 G !^,PI2X:$S@AB5BU*&2B*FJ% MSN.@7]#A8>@P=4 E?#*4"(Q"X +000MDK(LH:BFQ=8DI27+FIJ:$_J? P[+ MP^U$XHD846<<(.^\(.#WKUH62G2OKFJX1/J=PD@(#OQP&%OYH M98P.Q1LR7W"83J,BVCKB B+"1,0%Y4A'11&.#">-9>"*S4%(@0!OP"A 2Y&"(R,4G&M>58T@(A2P4AC& M<\##U'D+YIR#0C DI6&(4R>1=L8A'PW3*0::]/S.6PH\U 4>EN&\I3",7^/! MG#IOT=%:K)Q'VG."N)4.F20X$A(;29P0S-HZ8LCK27MYVQ^DV 'M^.U-KOO< M[;ZZ%)B%/WRY3/&;_'ZYI.4\YO%H]G'Z/$8!9!D:**).6,1QU$AC :PH.F,2 M4*.472[,3#>9O/]Y3(D[J3\/JMMYS*WZ7XYHY@P)TP7RO(TD4H.2!_.(!ZV1 M9<$@XJ,/P0J,A5]9UW)-T1I%DQ1D>-U'-)< 47PH\\6'J5,:3S%1GB7 !ZT0 MYQCL'VH3(H3B)#!G6,_/_BD(41>$6(93F@E(G #4%0?*"^''U!$-88HY:30R M3/#L@Z7 +YA FHNHE(A."UGP8U'QXX&>AT4ZHYE!,0H4/ 0*IHYC'!5:Y8)L M3C"&N,0!V6QY6!K!ZN31N]RVF>JG1(,6!*@_@UB<4YB',8@"#P]R3DX=M1 B MO"+$(V&\1=PIAUS$!G&0%"9TXB22.14?JU]B2WW/5V[O[-2T W_0F'1T8D_) M>)E4@9MT^&:P%*%_DON%7[S>ZZYT*SE)2:3$10+>3).E.BIF@^)82ZY<5:/Q M10]J2K.G9P+&&F,/$8<%0 **$N/7 FYB,2%@9+<[E2!SP)B+9JN9/+EDV M=X5-(6 M:<8#4B(CL5!<2+>RKO2:>G)]EV5#XL('YQ?KC!681)H*'!Q/*EE/@@Z<>\T$ M4%)4#IJ:-09PDCEFBD O.(1RR1"]*BJ'4*D2A) M6=7T2JP5,[Z0QV>&.?I3/7+P3IZFC]MY&%A\)_0^?; M^L6K 2\ -?076C7Y]49C.Z2ZW=S#"3&ZKC#V(X MZ<:=M'5TW.V?Q?@Q#KYU?+Q%I[K=OJ]^VDD?HN_O]P @PCAZ[$U_.!JV87!_ MP#5?%U,+NO%_/ISM?0['CG*YM]G$\+Q.\VB;[)Y_XJUWGTYWWFU_W]D,1_#[ MZ>YGT(Y#N.+\;6H=ON?-C2\N4D*M 7Z!J4:<48>,(& %"2>8\[ ZQ*TT(D#% M,2P"H$X$28!EOQ#5(SO8[_0J@3/5-OS"0$XSD+QX0M_,M-O[NPCO^J].#._=/8.!A^._?+U6YTHG9,R2N4X5\.V#2H/GC M$4^4?ZS",'==>SR,OU_\\)_0&1YW[=GOG5XU ]67_C.Y^P01\@-N!JGDYXT_ M_L]I)XP.?@= HI+E_6\2(C-Y\/A3LE9MC3<0:?R9U&M5]X1+O7 J*A?2NEF;ZN7+V7N M\U)CM:S5:[4/!C$VCN"Z@V$C CR%'X%>M[YL$8^'BL<5J_,!/*KFLO/3., ' MOO&M+L!EG3GZ[-KU"S1V\>-?@>$#^CH"W-RK#>/A\[<67VLNSU$Z<&\X; M1O.YN_&81Y8+;6BM-(F4\<0U5I;>D>2 V$U;=&)>O\/6MN;L#/S=.]HT]DK[W-6W3W^][F!KWIA=EY M]\]A:W.+[[6[,-(F:VWZT^9F]ZAY_L?17ON?;O,0GGOX]FMS8!\MV%=#[)N*?!6811<91E28A+@7.:4[ MMS%S2G+*F38BMS9<%>S)/5 ?I#;S!;XEX->S<]OJRZ];_1ZZ<*\W[D&V7W%" M[0V<3=H;$T(0BFON@6U*1T64Q!CB!!?DV3AF@=+[0^G9-(V,P7D61$ IL T MDGAD2&2(X.2,%D(PFJ&43Y?A*_4PED9Y%5,$[$+A+1><*.D8]MZKH*/Q1GGZ M;"2I*.]#E'CZB2D.?SG26LX#[#; T''!1:^*5=QSPT@E+.!-)4Z>#IK9X MTVJ.I+.Z0UHGDF3"H9 H("F+%BQ*K,"V])YK)2AAO+(HY;R\:35RF!7=OB1" M/ABJE604K!CLDHO.8T&%2RPD>/WB+:J_;D^QI! =V*+2H<@DRV6%@249QA$L M-0N8!LY4J#SE9%[ABH4G+9%/Z*^.=9UN9W36> ;&]"K,2Y("%BDPB;7G3GJG M(H"GBB8&[.@S,J8"G/<'SADM&F1BB@0>D>,L(2Z50II*CY*PN7,#MYH"<%)9 M>^NRN(8>K;L\&ID\)SHZS363UA-M2+#*FP!F#RFNH5KH[A3IT4E++F)$B@N# MN T,&>PL"M)XCU40+(H.VV]B20:;)U7K%">.L#FC*@JCK73$A#3D4 0B %'V:^'O/+" M<94.*)SG\1;67=\KU0I>;H*6!K@% M9E(P@0T8-SR0X'PT"JM$9:Y+[._J)5C<][\DPL4+)5SN9ER_[Z:@,%9 O(UA5D%>5,,!63$(1S0ZQ68-=ZKT72 M\"\K9Z3U!]DIZBREHY1CCSSW.,?1$V2UL2A%220GV$83*Y E\PH$K2O(UI1Z M7R\]4[="))_'=40&.4%_=*THR;#R%LZL/.+.&IT>?)(K@(#ZY[).C8P#^_W! M6:DR4JJ,E"HC=>-/I7(&8^>58_Z> M- _?\[W#@V[S70N,]WVQ>_X5[QYNBYM&/WQVE@UX>)?ON^>MP];FI[/6YL'1 MSKM/I[MTK[NSV3W<:7_H- ^[,TN(Y)9A0@:+J(2EX30YY'SR2$M*A8C24ID# MH^6K=I*2!2"HC<.QB :M"&Y!,VCA-/G=8X$")E@BGRB9=@@%J VW0P M@!*"1.\0EC$"N'F&M"#P#S5<,B:-\;D^$I]S;[Q2(62.UNROH\ ?8Q?^N'^/ M ,?E#H62TB<6N4I*6XZ=,U:X 'JEJ>8NL%+6HP[H-^O07 5'8*%0)-XC[C6P M.J8"H@;;D+"DP>9&*@\],G\^*'M 5.)R:YQ.-G)@Y28ZS+UT#KMHM01SRE,I M$BY\HQ8:-\4WDN!&&8H1(X0C;K#.?7D#8HE09@$O/;,KZ_*!L8>%.RR17VTC M''5ZG>%H8',WA9(\<6N]6N*]1(YHC+ E(,P6UEI7T6,4 MJ]KK]L+QHKN\V"7&=][SL#1@_*BV= 6,:P3&,ZIV.&-C<,D@9JE#W.*$7$YA M#3P*'4R(-)#'Y4O4-&*W & !P,?6M !V?%7 M@^T:M@?2-CY[G'7K03P>Q&'N?WV_AW=ZPQ%<./ZHNG?UE#AI<3!K36NIUGD)F=5'>XMFB3R>,Y*>*X/^SD"WX?Q&[UFI-7_G6 M1'?PCZ]8!VIR,KK]*]>E8V:&QWC0;O#;^GWR1'YVEY>6.F)N3/F5?P\&/QC. M?D1N$.U79!,,]G?;/;5GPY7?KK\BO-_DYHK"T^\WH;>_>$K/]N+C^0\Y9:B2 MK-^KUL/Y*AB.K#3!/^JR.IE\E[;Y4%NI!K23COP$1B+L$/T7Y1*^OM M*LT(-/E-9AB]7!W)WBZ/=1' [=;']L9??VUM-O[XM/W7YG;K7>/O#SN;G]ZT M/ZXVMEMOUFK_!JV=]M;'1GNG\6:GM;G5^@BO C]]W/EK>W.C#;^\W6YMM-YL M;_S5@#=M;S6W6NV/C7]]:FU\VMR&S_\]2P%O -^8ARF9^:$PP3G&@XQ.FN"M M5TR!J4PL7WFY%O"?>C_:=E_EESERN]7O?8M#H*#CLJ256+[F9N^MC2]:!A>R M0](RE\]F(Y!!Q3UB0L+B24U4)+5O]GYUS>_3UKV;S9#&J _VSU@>&K82B,:I M!?8PG.1H#AFFHIU!IE;/[9BWJ-\>=(M11L_JF6%*\Q<[\Y M>#TY:HN:PK@QS,SC,FNQ,966]GJ6\![)<@N6*7<5^2LKY^J6WYCXE*H/X-=/ M%VA_1U7RATS34Q(3%VRN/U>_Y.F#48'954WKAWADP8CO[5>__0/SF^WSO^$) M_? 0+5O\$*;G;$"^3+[VDCTSB1_G)"61$A<)#&>:+-51,1L4QUIRY;YLW^]@ M\:(IY\MKK-\VZW M>?C^M+FYU]EK>[K[>9NUZ/9Y<_/#T>[A5S+EBM_T9.?=[EF3?CK?^9S=\!NG MK:,_NZWSO8/=0\]V#YNG,)[.3ON?F1F&E$HJ<*1(,*\09UR#X24=,LY(S 2V MQI"5=;$JY"(WZGU\.-@][O&HC;6VF#'3-8)5B)K#_T=.N>#R3M;4U"G2D\C7HG4B*OV''ME_""M.F8:=*#B> %D\ M"3IP[C431#E;2,CRH,N,7#BKN ]84A09Y8 NTB*7X!\?6'+)!"N5!'0AJX0\ MN3)XC5L9/0T):PL ,QF%9#YZ[K1+Q'&CB.: 3FQCC-+;-2%42R7SD]GX_DH MF8KYL(3DP%M1-L334 4P"#68"]F MP+>Q9=;SP)6TU"1#8Z$.RZ7O4]3!XY < M218EFO5=)HP,XQ9I+*)/0N@ *[Z.YTT=?F(YJ#I3B$IP88>\$ISRP("4N5:. M?Z7'2_.68=TRH&G"SXO>9$Y#/2(0S M@@MJM40ZF80XTP*YX!32C ---Q+V<)/+6ZXJPE^BJ45-SJ:>P5]T[1X+F/MQ MWSVL,VP,3]QA]*.\C:63T]+\#K(]B]ZQQZQXVGK8Y9VG3J3CRZBE_VTXV)=KV^^?.Z."@W\VJ#'^8 MO;U=[D9X,7>CQX>0M[^>M_:_:,NCUP;#/N(TXCI&9(@1B'BL5,*8DUPKF6(\ MM9-7 M):,7QU*3KZXD\T)-X0G7[CZ)]\ZZ!B)8I;540Z"8\,;.4:_C3H:-[5Z.PLNI M:7]W;:_FZG@ES'6\0?_0O:=H::^Z]!4Z0]4LGZD3P,<#2>LK]+411S%2L M*=79& QL;[_J;_3'V8]+_K9G^4\5 ,/.Z.)@)XTU<^,",4$;W\%W1_?CB?*U M:>9AD[0VOE!)DL=&HES3$N5VS9GA*>0$T'V_9[ Q]MP\TK3;Y<3L?+Y1B"^^>?_C: M.MPFS?,_.O S/&^7M]I_='?:<*_S]Z=@0HN=S7U^4REVVQ\.6^_>T^;AI_/F MNS_AY]8!/ <4Z9, %3AL;?X!)O17OK-YD%J;7[]_P4P1)H4&0L,)XC$$9+"A M*">LM\4E*!'BD?G<711,4BW,LG)FYFTVVWWNPT MMQKMC?^W]?%6OVDM*O$BW$5,:I_U?>4QCD*\;V[-C$W404[>R=N&+ MG:-C0,)\FP!Z \^&/XWB4;;@IA!I 5?T[A6:V(*N/Z'==QJ$E?F;Z\9,+,/+ M*;^2OKZ%7[^WPKUDS[-B\&=8F*'V!@;\;3 Z^[ S(WMD(NF4,V*%\7 M2K;?B];Y)Z F6[BU^8E^L21R%Q)'1C$))$)PY AS2$82J((=5[%L#,JUZ0(S M_U_V"<5J]7^)&K.*DUZRW_H#X!5G$_4P$@NF<@5Y8_'_4%E1QZ?#([[P]SZZZ9BSS /[T<\-*T[\1#/ M3SP^C(_ _K:#T5D;Z/UP+!/#VO$0WNQ,-.QPB[6./ASM?@:M:.]^;QV^/]L] M_*,#S^,[[?=\[PB^N_D5M&H+W]2P9MO3O7=[!WOMK_"]+=J"9S7?;?/6YK[( MY9Q@G'BG#<]K?TC--MQGXXO@E'-B,")!9%,.K#ACI$#,J(-'U4D+#\4G8 M,',$V YCY=:"P77@3UK,W>= _V3^X,)4 7F^47SP-^D>7ZW4,W^CD,XN/L >U^L!.]&KCKWS7X>I5UWTN M9W5T>TJ@7*99R&^S6J3+*KT'<]U^4 MC8XK99&6'D^Z5K#H41#14>*<],+4OC)*)E3VJ'_2NU)(;:S@$XV^(8?9F#K- MF&;'IUT7R#%1B*PR8]-IF7TKV^+F5E%J_:2>E>7[K7+UM.T\?2 MM;YTK?\5S2\^Q&^Q=Q+?@@UQQ>3LY,"!!0CS?:P%.@GS_?/KWKL_#YJ;X6MS M\_UI\_P];I[OP_7_'+3./_&==^_/6N]:1SOMK?.;8;Z[1Q^^[AYMG;;H^]/6 MYL9Y:_/]^4ZV6#_#.-K[?&]S&^_271A+:V:-&9$#LX0S8+U*BK@W&#DB(^(< M&V.-)TZ2E76^BDGI8U\J<;W:2EQS;W7Q$[@KB/801)LNAZ,QPU0 CCFJ ,=( M $0+&C%C@Y0X!FW4RKJ0TS%*BU,S:PF(\<*5#[IP>/5PNQ0WT M/"O8^1#LG%'LQP=#3/0":<(TXBE(9+SS2$0=H@A,4"]7UJ5\:.^S1:KT\^K5 M^!FX3E'CYU3CZ1Y>G"5%5$*!RRK"2B(7E4,J,$5Y% ZG $;=T_O)/KL:+P'1 M630/X(?8&Y6*1;^:XTSJTE?8>#7L(F<;%JQ\)%;.*E 48_#$L82D!YL1UI C M*XA$L+:6IA )%6YE'9C/$EO5:_5*4IVCU\VCU% ,*1CLF=$ V4@]:S2/2 MG";$"2PLR63(,-#JIY>N>':MKBD#6JP2%9]CX\"&AKT6>G;6<+9;)1+VTXT$ MZ/]^_CHY4YFL&][G(+SAA^ACYUN>W>N.X3?CE*2%R$]]\8!,>#[]PC@CDH*6 M.T\9F#W6(:>-0"& NN<:^83H7+:4W9Z=FJ,7'[+XT1B>8B2*$,X]ICH"9;"> M^)0?2,<%+"FA9?&?=?&_GG\1,1$6+4?<2EA\F0\ #([ XR15P?J@?,BIR3]9 M_$EKXI K1=C)@N0B,Y,5R9F!.4+\3;\7\BX>\D^5N[^"E#\F8/+Q(,91%24[ MN]A")6.;<->>O_%:Q>#8A@I R865QFKDW1()28 1C%W4>=J$].Q M!H]&:,HDTQI,$PX%(1^"83^D0-*FH<;] LVCN4=$@0A M #]/QB&K0D !_DP$E@[4-6_5/Q&$2=;G=48W"P@O6-[C$+DT=7]AKDYQ:>I> MFKJ7INXU:^I>-Y-^=DKQW2G"UQGV1@@5YMIN]VSU)L^]03I!"6%E.T!G+3#8 M*MU_O UE#GM]&QIGT84'E#^\5QV0>U8+$'6O%B"?OUI ;K7:&=<5W>B%<46. M_=CSP-3J5S"@=5&2X_"/[M[G][AY>-!M;6[0YN%[LGL.="J7UCC? OITT&U^ MWCUO;GHZ1_=/=VWQ_MO/N$VYN[IZU-O\YW-G\"F/[=-YL9V_KI^][N>;O M^1ZP\:9H[7^)A&#KHT4BYJJ,,+W(R1@155AP190">^EF#K[003H=HV94< &$ MG>9V>XPP&ZT*A]J J%L /W?5,IJIX'<___IX71 , M[#T-4(!Y@/=-4GH<" ^<)Q]Q[1)R?\8#P 89Y&*4[V(O#L"0_ZMC7[]4^Z?1Q$[[FH6^63DEZ/[$'.=@5BO+/)?HH:G7SR505(6 MD)4BMUR2!AEE+(I),Q&4=H9.J=6OJ1\Z$;_]B?AUKXF?S>+7N5C@[,FJ5OB' M5ZW?J[;"^[G/[ID3_K+YW6 XK.&Q\?#0!&_)UZ0V<\^9)F)-$3KW!&^\QO3\ M$[RKP=XO&_TU9L8N5@KG=?KZ@->[1Z;K8LW$A>?H8C*N9[8N?;S8]I53DTDU MHTGQQ(O]H5,R2DM&Z8OUF[E)-1_DF/_5\3:/I*#C>)O#)@/+BC0/_^FVCIID M[,S_L]-L?SUMYEB:PRT!SX?O^[.;\3;P-[S;_G36^OR)[IY_&COSC[:_[[0W MSG;;\/QV]R!3V-;YGZDYHUN,5HS17 3):2\1MTPC$R)%U*G 4\B=8\+*NEHE M-,#:_,O MROU_RO8XJFT!#D?4RXO09!.-B)G=(H^!:DB6#I$K0HZ7;_^V97OJ=ZF M1UHOLUMVXI]U[7Q=YLT\)FAI(/"9/3T;O5# \!G <$:]".4# 1-((BII1-P& M-H9%YY,B-%%-9 [C9*M*3\?=/\D:FH-"+89CJ$!K@=9?SRX+M#XSM$[Q3-@= M<70N(B*Y15Q@B[22\*O6V!GA$L.Y2Y)8Q4\OXU$;:+V>6GHS..P9^U[D:*4K MP4D7N0-ONK9S5(*4=C:^ (C$8)U!V'B?W9X1&2T-TE0% L3-62YKW^KBHME- MS@6^&JETL=SCAB^=7HA'XSC?"F[M<)@CDAX7QS0ZL*/5*J%P?W\0]^&2U48_ M);AC(_[OR94@JL[54*FV]>/FZ%=?#"'+AKC ME2DQ526FJN9N#FE/-3?$56)EVQTTDWM[7,]\E9*; ]^1*& M58(3[K8@/7:)6^&D=YA;Z2SU)B2EB;:*\&#NRUMWF+;M/= MS^_%SF:3-S??SHS:4H['(+1",N4L;*: U%O'$$B $$EK;[0%&W-5\CE[[Y;% M.5> \?4 (V&&6(FU#(%QQ80CTBM/K?3&6!G(7:ZU HRU!<8IYQL60F >%>)* M.,2#3<@$9Y%--!I0BGQ@E;NB&+8PP+@\05ZSJ/$5_IL]+HWX':8U>U*R"V4( MHVUT^\-AH]LYZMRGN.URAZ \$\6[A*RM:O)A_C["Q/\%\_Y7GO8"2@\!I5FM MFHR3DG&#'", 2MA+9(TF*%#OI;%)\AA7UM4#^S25D*]%90Y%W^:J;U,D /9^ M1AEH&:$QMT:C!FD7 M)"&^Z=U$ 15M:9?F CH3J$>5U]-F5KHN;F2;L_LMTG MG-A2! < U#LPH,6\% M7>N*KD^EUP5=?R&Z3K-NXPQ+4: DL !T-0QI9BDRF!',J)1&@I4K5AE9GHCB MA>NH\+,B97_%:UTR:UD\\F.,C59_%!MZM3$>[VKE0DPG@\I.Z/3&*IZ1)T=M M#?(25W4>N_EJP)_+ZH*W5P.MP9O^;)UVJC>]4B>Q,J6N54JL\ZNMK.<7RJ%U^Q.SL J0@Z?E"+KL,(9WAQ?-X73[%JS+4>.D M*K(/[WZ<"X)>EM!/^4EYS\E DX/V0#1&<3!^P#'\T._U8K?Z+1X==_MG>3X; M.4+N9)3KYV_W8./):[8L_O5GI,_R57R!\/*>=WM?(W= MSD&_7U7(K[YJ<[!?MYO_FZ^X*,(&LS Z>SW $?.&G$XJKJ9C"^I8@3S#88G M_F!\%YB RP)N:XV-WN4WPOCS3E5$.T-?:)P>Q%ZC,\I_NQA=CBH9]%T5*UBY MW*L[VRM%X0Y@?"[&JJ]"WCE#-4'5K:Z/:3P?($ NSGJ# *,;7EU'&,7PQ!U& M/VI4)>= CO.\GO/\JWG7PR'BE\Q&^VDQT+ M>4"@UI-E76O\3_\T F)7-PG]QO@FW0[\;7R'//Z3[F2"^R&"+L/_DU)ITE_-5 TM3I 1G)%U\4!J_: M0\!CJSKF?9"[:CJJE?1V>-!(.>[S!A[]M&!Y+=1X=IW/N^MV;CZ@NFZUD%64 M6^4- JG)[WER?)R5?!^^7"G>91.,2J@!"'Q^0/77?B]>5/JMOM:IU+/?.)[T M,(6UO5(0.(_I-'+\+LOQC /#+6"!RXXSK;Y#? ML7^R?W#]SW(\.OMC''W7O5 3&,BM+-IV3P",3HZ.,Q^:=3)MWHQTL1@.%EX_"WQ [[4_ D.%>;;AF MXXL#TT:#2J%HK48\4(V,MQQ%DT!YG!,\BI5U0M=N\T]?-%*H9&!\A#K6E7I+ M31:2G5R)OLC)77+2/&^!0:5-2C(PY%U.) I2(D<\1UIA3).WSD0.+6;UU]4VJ?](BKW$!6\\_Z+!!3AE"D4DV(Y[(4@IW3NA: )^8IK5U9>]&\ MD&CX6^M=ZZ!)_SGMPT^D]6Z;P?T/FI\!W-[]^;79WF+-=V^_MC9#:K6;WUNG7T@@ M/A$&8ILX19PHARS/H:TQ (F,-GBF;I:)]X8['C%+(L&R1.U84$%0PJQ+)EAS M,[7MCT\?MUM;'S\VWNPT_]AN;;2W=UJ/*6=_]W.OCU/9J)SEB3CJ.:BFP8HJ M[)*VV%HE;0V3[L!VRTTQ+NASO[??S[1Z",;T*.Y79FO\?IPWD_W8WQ_8XX/L M)^N>34YV_:#RN,"K?(U@9!YD(QYX](5!-_X[F'M7C&*8 :#GG716/1"LU'#B M)^X-, Y^?.6T%@M%S;PF E?-[&3L$X'\;>Y0Z&7YF^-P\W\!>J"879)\A*24#;I4,FQVLP M8P*W3BI#P\KZZ+0_W4GLLONA_X&B#^O:<@<'NDURGMANNDC.4R5G9],#G]H0 MS?.-,^!'WYOOO_@ H*J<1HSXB'@D'CE+&&(A41&9Q<("\>CWXOWDZ"%B1&OM M0UY9SUG&71A('%ZB^%CX*_GNC-7F%(!WH^!;>]->]A G7.D:.)>N@:1T#2Q= M TO7P)IU#9QI]-QIQ-PP>J(13%$JO34&A(9HB843B44B:!38/%L/JPMV]:./ MU06_VKBR]?UQ=N6WUVQ[9ZP"X0AUN/*>^;F/J#*3[ET*2XU"UJ^J7T7<[I';:L7 M4:E%2!*HF.95@^-5%P:SH_B:W_^*'#3:9\>O>B[>Y*#'OVTGO.9)^!B[W3BH M?+8_8F%>-42,LX4O@H :?P\Z?LYJ*&BQ:FN.3Z)O(_4/S2_]=DGLH;:P'XC]+=[_M+;*W^4GLO/L3_M[]>C-M>F_S;7?W:/NT!7??I?]\ MS>=KN^?=3OY[LPV_M[]R>*>O.Y\_Y&)%=*I="+:$>NM1-)HBGAM#&BH]4L0( M2U021,/6S\2J>6A;NJ?C[0)4G"B85S#O 9B7,U#&AO<5FWN[]R;G 5>C^-P9 M'5QQU?P('"@H.$<4Y%/-N0U52I& K()$% M! L(%A"PQ(91287S"EB@+"RP .#K!< D+??P\MQ$+CFHB@/U M,&!!1><4(7?D;=T+ /\>]-]FH-O^44AHXFS?21/S.'[,R0E72&(^VMRHZLL4 ME)PK2G9NH"0@8JIR>TC0!O'@.-)1)20UU5Y9%1++K357B7GVZOX%) M(%I#\ M 9);=I!+9 UW!KF.^?VPLL#A@^"P-44:$]?8<8FF" MT&1E79 %QL(E.'Y-U?\MSB%K55[P4:=8-][T44>"=\]6#0_^Z&^$/?XD]=5. M6]4OZUFGC#YLRI:O@XD+-!IFM%-:<*F]@TTB29:H9 Y3KR9L@ *GOOBA'!;6 M9,L_FW58Z(4(2B)JC47<8HZLTA$%)BA6CFM#73: L'FRFWPVHCRKF5.T^J6U M^BG'8465'Z+*4R=>S@IA)#7(1)D0ES0@XR-#*28:(J.6RES=CSV9O1=%?@6* M7(YT?K%^3Q_I2.*I@3 MD1PK'(&6P^H712^*7ASOBZ;O4XYW)ZAE(1*$C9"(AX"1"PHX6C3&!:R=5AJX M^P,;^OX"=5\X]WK]!ERN+%<6-2E7EBMK>&51DW)EN;*H2;FR7%G4I%Q9KBQJ M4JXL5];ARL?6\9E'Q95RC_O=XZ[O_;0#?/+4+,WAT!-;CI4XS%]X M3> M&+5NGOBF8*+S,B"6DD <)XF,=A0YJYA0%D?*],HZTZN8S#E?]TD*M1B):@5. M"YR^$)R6>C#U -B=FT?L0AFM-"$ JRPB3JA#.G*& B8N<,U=]"87A)E#@&S! MUX*O!5^?EZZ6N.1?A:S5_SY6Z'H.R/J]M?%%4Z^LP1[)Q'-DL@U("T^0((QK M*Y(T)@)Y-:N$FP*N!5P+N"XO'196PW3TFKX0:V& M:6DU7%H-EU;#I=5P:35<6@V75L.EU?"S$Z1E;C7\^"K8I3'NU&1B]ALFO]V3 MTY<9+:V&ZWV,^FH.2J4R4@5FO4V:I\0U498*;Z)B"4?.JH-2BMGXH+3ZH62M MW'$:>M@Z:+7W3W<-2F,N]W\OK/YQT%K\SV^>1K:I%L$ M/NOLM#^=-BG^.+L8%+ M+B32F!O$!>;($2:05RX1)[1EF*ZLZU4L2I/- GD%\IX$>26SI!8@R&^"H'4Q M64\42M1+Q!65R AF$9/68\LM9ISDQ!*M2J/- H(%!.?"^TKZQR^"OZMEZ<_S M=[X0;"67,B'!@D;<>HY,LA&I1&(D09,8],JZ*8V&"_Z]6ORSE :I(RB'2)Q+ MH 7*2H=)-%0J9\T$_\@E_I6:_;7'PS:4=7L.&HTZO,QSEN+AOL1&_'\?> M$ ;2[U7UJ-[T>R'_(>2?JG.SZEX?1_"?*K.BT4^-G>-)6-VP87OYRJ/C03R MK^4[3O(1[5'_I)>_.NHW_OL%:^<)6-K./JPQNL?I\)5I^S">M3=YTNX7(2@7 M\S"X&__GP]G>YW#L*)=[1]L8GG6^][EUV#K\1%KOMAG<_Z#YN7F>:^$UVUNL M61WVAM1LPY@WON"HDPS4"=9Z_R4$IFAR"20A M),1%2D@KPQ%A3@<=DY-.9)F8/M^_E(ETSX)XK)*>O,RK@&W#XYSK\"UVS]8: M;?CV?K\?3N&.%>SM]P!!0P- #Z3I\*0WEK.,@_E)P]APD]6'SR^7/R,FH-FP MPKH\H/C=CR\9CC+VY3_9<<1(@/&-.J.S1O];' ^^%T<3X&O881:Y,?[!SQ'N M=OFU_ ;=CG6=+H@98"]\#AM+6&M\'@.R'^5OP:N?P$_V^'C0_PY2-H*W?)#: M)&X$T\0P %.>C->)T9284HYYQX3ZLGT;@LY6DBN:<5'8H*IKL-'M]GTU>>\F MT[]5O40,;?M]LWJ+#NRE&]7$%#V:K4>>MTZ_*$F,"M0B1IA'/ :''*<>64H2 MI=)CF<+*.F%KT_ESEXH$,GJI!952V>^-XY/!<7]825K#9K4YZ5;"/-:G*U5] MUAKWKR_Y\CQG'*<3,J.IQ.WW$\"'0;YJ9?UZJ8W&#YD<7G^C:T1N#M3CNJI\ M] <@[]VXDSY< M!VR#"1.C%L5#@PB3<+&[WPUP\0V!AC0#NSSC8,Z0\8_]=7 MI@6M'(+V_DLB(E+L,(+YA]T$)AS!3@]:X"P'/6!!)+72B 5QS#UH\%)9N[U MDM11^VT*EQOC535=S8I\&D'#X;^CJM3, M\87\'V?Y'Q-SGVL3'=M.6+VZBX3J=JD/&G+:Z>TO2H%9@O$:'H>8/K3"+)=K MC-!;/WYL#4@" ]+ZOK=="-/W(5.#UY@POWA2RV ?,%BY1KFZUVV?6@N4B*EK M%Z/LR5TU(]FKKFGVH(*:\ZLGNRPU=39Z_J!_GYI/M=P7'K4PKVAU[UW0JTS: MC3*)I2[B_>3IL=7R%J8FWM8L>^GWIU0AFXNR+0P<_]K"=D^Y>QGAC+L_6-]3 M]7^+H^^Y=O*]4_MFO-RRY0'/>L6ER?85B>N0_2>[;6_BN:A)ZW#3Z)U M^.&H]?D3WSML'>R>^[/=PRW6>O?/81/^/MT1+71WVE_/6N>?:*O]E;;>[9*] M]@&,_.UAZ_S/3K/M\=[GYEGKW5YJGDW2?*OR5UO?F^WW7X1(U*68D$R)(!Z2 M1-90B5B,@5 >DU6Y_-63"P#.QKJESN=]Y#9P[QH,!6$7&V&I3LY)117UAE-C MG.<\^1!HTI0[4AN$O7H G#K?8T#G<= OR/LPY&4WD=?A9(@C%G'L ^(R:J2I MQ,C(0&RDPIH$R/M__DM30O]3>_@ML%9@;0QKSC%N!2 :EX83QIWBF!A-*'8V M:9'J FL%OAX"7^(F? 4O XY&HDBY0)QKBW)M2, P&IP).A(>%H(X%N0JR#5& M+AT4L4H38WSD-&K'(R4B8B$<%2Z9"KD>5]>J(->O,WDG#(\_]@*LX MOAZ+65..+R*M<$29W&(#(TZ< ,M1!P3[&'$A2NLIFYOCZ]E1JZ#!\/0 $> MY7^YKP]\H7&JCOZ7BX4[*TQE;JCU<=KA(CT5!-88,>%4/K57R"BKD%0,.Y5($RUUX)$/&YIY5C"CD M&-A.5!FFE1>8>0 CR6N/1$7#E\J)4KC(4F4=)HZ8-!05N.@+UA9+GR M2$5!(G?:8@9:+G6==OFE#U>ILGT;?NP;G-0&*O$JB^0ON>;7K9:SD)6YX5AG MVG&BO"&H07(E1>04X4$?W2J$NSPH& MTWZ6;&D)+I!.6N5\@8@T\1Q9*G6NGVX<5HM"70H4+)6?9184%&U_D*$RY7 ) M(7@OO$;>5AT3&$4N,(:H#SXP05SD;&6=UBD2;>G#4OX>](]A+&=5G>0("G&< MNYN4")5%\KAYX=F,"C]6ZIP29)&TCN;86H^LE X9 M#OPERH"I( !GJYSJ&GF0Z^A.*1$KK]3Q\A/D*N#T$'":]K-XG924#%G" N)8 M&J25QD@$[6FTP+B(7%EGNAQ@+['*U]''4LC*2^#!E*O%\L@\E1I%2S787A(C M':-"3$F&B;)$J8JL:&P*(BPO(M31U5(0X47,E^DT(1&\HTHAS:,#2* 861LL M CD0R=#HA>/9^XIYG2!A^2-@QDUE>_N-;LQ]K*HY0?V$3H:39EDE'N:YO#,= M-U]HNUS+O_)2?L@OM9,^#<=?+6?,,<0 M"X)*G!PA.!^#/=EI7(Z\ZZOQ3_7,%(VOL<9/.5](PDR!?8VX81%Q2BFR#%MD M#"RZ)R[1X(O&+[?&/]7S4DR3!42"::<+[/1$69\0YKFNI'UW<@6B$OVR2-$O/Q;N2K!>^\#VWO7[X;33[18W\MP0 M;4;=EA0-D3%A)"A)B(N0D,4$U()IR@1UU!.QLD[D*J?U;UFPN+Z6<@*VP&$P M!<)>$L*F'#*6,BJ,,L@D2Q&/B><8/HF2MYX$BSF3-!^$D05 L((,2Q4M4Y#A M)9%ARG%C<"2>,R WS&I !NZ1]EPCXAQVSDAJ=3XB5ZN"%VA88FBH8]A,@887 MM7NFFQT%):4#KJ"5SN'_ B-ME$)1."ED,M%XO[+.5R4K!61>4*LOI+\$R3RW M$Z?@S-R;JK4W1C]PI@D49 M_\JU M3MI;CE?6Y0+ 1U'+7^[=*+O^<^CLSLU=G^=.SXH(9*V,B"<9$!B?'HR-2".8 M&9XY";L^FX?GH:AM?=5V7IZ'HK;/0M8G_D)070R_?]]Y_X5$C+FTN6 \9X@; M2I!-"B,KDJ(\1@+[;4ZT4YS52&]?*+SCEVK=N+0LS#>:0WG95^'VK&.X1[6* MK7[/7RW05(#K0<"U->UE2 1[PX1!V&&1ZP5X9(V@B,*Z6I8D-]("WZA5,>PZ M.@Y*#,<"N1@*+M4-EZ9\%[#W4.T]0,US*7* MZ6M]U;V.@1E%W>>A[E-NC\B]A\5.R.A:1L.5@PV^3OJ^]"$4 M&][#\$?#QK$]R^I1U8;M7VO,T_VA(*\LT.)?"UR.Y&)A_QZO*UQ3P=JDUO65 MZXN7>'ZHMSWM;*%> IG)+,=&AKC6%#D7./(" ZF-$BANSIE9-7C:W?+O^ASK M+*ZGY74?/ST$PNI6FN0!$%90ZD$H->5ZX=I'$IE%*EF).#]>M6HZ2PEU^""U,^&B. UPH<,JZ218I%A;B)%!GK&-(L M4F.TMDF8N57D*]&/)3SBE_OD7QJY"D(]"*&F'/%8T@B0A!$&8QOQ%!AR6%D4 ML7,6BZ2C%ROK3[&W2S14C=6]CN&/1=WGINY3_G5K'"4^210PMHB'8)%+,B$N MO;?$F&ART:FB[@ND[@L>_%C,DF=&@=U9?G8:61).!X2I=Z#]U"++G4<9 MB\986T?#9.GC(]_:SJ#QS79/8J.?)DFD#3M1H"I8\OADX ]R\[;C0PW^V$1G[%)8?!7^R=N4B7GPV'-QLDE!"#)X+?% 725& : M'4HD@<5#<43&I80\,T$S,'<,UBOK3*Z:N35-N9^B%6?-W$,E7BO"_6(O3D&X MET2XZ9I<$G.O8D(F)[=R11DR"!8OG38 APO M"1Q3WB'LN-,".^1Q4 A^!@BAGL*OC&*N'#<,K$)F5LG3VW87Y%@NY/C%OJ6" M'"^'''Z61XF)I )L%XA'XA#038TLU@'9("R3!&OCP*PR"V-5+7U@SU^@9(UA M[';CH-%W,)A*UTI0SZT(YY.TW(/P<1.YY-A81[$Q!MOHG"+DRV;%C0C.!67N M2E[Y6$W\SH]YW^Z]Z?=ZL1K%Y\[HH *V82?_NI,N0+&@V%Q1;"IWEL>HF5%( M9.N)2ZV13MCDTD#$P>*[9''./@&1K)%/O(Y>G1*L\P* I*+VQB@;E4J<<^V$ MP9+D1B$J!2STBP!2P9P'8BZ+]:T?=G>D)8$"8HV-%EKFU!.$.6<(ZBUSBJ7):'L:SJ6CW9$U(B M:^ZOI6_L\*!Q;#OAD7ZF\73]SF!^0_\DERZK?$U/\/?6KHK]?_^2J5D:<)^; M@^C"%_ZW/3N*O=&PW9^XN2\P/ [?#?H%RN<,Y3ZLL[$_'W:3U*HXD>ZUZ%>@?T"^_5RPQ78_Q6P/^61LQ;38#5# M40D#L!\LTI(F9*/X_]E[U^8VD6UA^*]0.9GW)%62!A!(:'*>J7)B9[;WCNU, M[$QJ\F6J@48B0: -PH[RZ]^U5G=ST]RO8:'BFOHWI M4_KHKJ:C-8_KM]RTY:9[[@IMN>E#<--5QZ<56-P+>-STZ]K2S='(,0-F=AU[8'8M M9NA=1W?M[JCOFOV!PYC%]6>_ S]=TR)U__@IN:5_G6/")_S7#R]_5YLZS:= M/=[O_P<_JBU,63H.8UK+B/CI3Z9.DQS-< =L&T=9 "EF(4"'PC,=,1\TF<[X MG&MLG').E(15G;\FJ<:F8C*&RS+N:T#65TGZ%5ZD>6P6SED$_XV\/!*A'HVE M7 MC+\I]K O--*S5-?57JPE]=,%X!3=K\PE\UTTNN48 U>"C5^%\ E?DT\&V MZM/B18&6Y6[&_YO#ZJ,%^=0U/T]QJ?B%&8 M\;59RC.X@?L];1-$< B( '] MG,VQIA7.$,X$O\]9&B=Y%2+P:N(NL0=;F+ Y02'E'J(@0&&N538 _\+5S.%H M:3-E+*RG?9IP@@96T:HEX*OXMQGW8,G:/-%(CQCKBU@/5J0)E,! MQ_)]FL_FO$._>N5."RHKD%9A/Y\H MSE]Y2M*C7C["7*"^?+[YD3I]5$G1PZ-*)<7\_G]N^NOO]0W<_"T_F^Y,- M"_C[2 2$6;\! ^H/ \SPV9(YE^X%#WO2!TW<# M^(.S?X;/?K\0["D@SH'4^7^_LLWXV!0$/#X]OSAX]^[H4'O]\?C=X?'I']K[ M#V>'']]TX],WO<;OX/3LXNA4Z EQB?$+OXR.[/S3-@<=& M(T "PQGHMFL'?6[8)K?UT>VH[%YA4Y=<8:;Y84:=P86XB/E!+>?@FB+\DS]1B(.NXQD(H9( 5>RC9C4"- ]#9/J5LH M\[_DV5QL&4!#XC**$D^ #K8%HMV;U$1H-@^C2"-VH87PV)2S#&" [U *14U M@\8#BDOJ=V=@ ?@<]E>33OK /O5L6M M0WN ?6<)Z$* 41R?0XVRWDNDHTT &4'Q >6(5!]XN0+9NF5E&OQ&FA@G%6A) MS:*O2E2N+GG*%H5R-9^ P3&>T"LX3H(+!$!6 0#2J&R MAW"H&;YN1=7&3,)GB8 MYD&G_NWC\ML=A7T$187;$_SF%,AWDB&482,$+$W"J4]O(8#Y.2UN"JZ8;B6;7@6MSS7'W@&PS'4'E:BN&L= MWW7?S-LP#N?\'2P7>VT=PR:#\I<22Y:Z[@3D:=2TV&G;!#+:[.C."@0-UER.@1J2RKR,U6R8UL3H':2S:N$') M$$"M \R M[P7Q4=!6@&RRE[_MHIC8M'_!#PL;EIQ' (>(S3+^F_KCE4K\"&/:#3WT2KY+ M&KYH+2]G%Z(>+2Z7)EM/%V:;3&Z47Y:7>W1IR1,FKO7UWL"T-U[6>\;&:]M> M:]@]R]Q\>=MKMU^S^[=[:[O8!UOL;MAU36KN#3-P'S1RL=X!7=8'&,^6.(.D M];IG>8US>>==-\OJ%CW_I%:U3459LJR?%EJ,EK%B-=AP#4J(\VW4GE&)V[CC M_LUVO+'@YK%"SJQ![A%1PL&JRND&4_#EFIK#[%(K MJF 2?Z&3X][I MYE&"])-R.1Y(EV,=QA\S'N21@/*[,.#:BT6:]58Z?V\AL!\!YY[!\M[0\TYP M<\^ N1DQM5V0\K:E:[$=3?1+.5H3%G<'B<6>-[;#_1Y,: MYEC!R&;,<9GA6Y[K.:;I&R.7!P[C0X<-;YQI*]R/T39GH_$4TL/>3LX^G4:? M#__6/__Q$=[]Y^+O3\<6IGM]_G(:GAY&7T^_'!LGTX_V,N;&N8 M:"-Z.-ZC8&@L.U@;<+@5_=8T3P/Z\W_P\Q1RK MEO9WH?WO*[1O.<[(,EEW@%-]K*'E=YW1T.O:1N ;IL$' XZT;Z[D3^Z@K-Y3 M^OJ33E!_,BGHIFOW3=ZW;,?FEF.8CF5Y?69SD$4#C]O6C5/06SWC)_,:8YG7 MC(*!'C#3[YK>8-2U]/ZPZP1#N^L,+4'Z7>4&_.X!?V6AH,Y/Z&FU7,!Y] M6^6+E/E\RM*O5->!>84^1YQN&RMO5!!X/QA8MF'H.*UFP )G--!'?&2-,,/& MY_W6$=%H7G'Z9M41$5A]DSF^T]59W^U:(]L"W< >=5T./_2-@6<$^K/?[8XU MH!]I=MSO\,;[66)I>*^QO1<2ML&\( :]X$VSF>$.=@X9O>*#A6Z;;=0>L MWS4MW^O[GMMW70^$O7TGWH2V?>BNU=SNP#7MOF_:EFT-^CH;!AXFH5K,MX;Z M:-":TDTGM!53VC$MWO=TNQL$'NM:W!EV1Q:WNS8?&(/ T]W E(V!6TGY."3E MK8BXE90-(> 5L]AQ;7&CX,N9WK2$+NJ.A%71-;++A.P/+\<#Z-9V['W3T8==MS_PNJ"B#;HCA[.NP;D]\-S & V"9[_? MC>E[AY-''[^;0:!K5O]X)Y,WU82WH245JS; M 1]Q,&&]KM'O!UVK#Y+0&0Q&W<'0TX-1?^@,F?WL]_[0:B7AHY"$MZ+25A(V MA'Q7;%O? (KM6S:0K\MP#*;==5W#[[H#:V :[E ?^?YUDO#11WQ?PPZB9-S& M=S>*;M2& Y/W!];0,G3;938;>?V1:0P#S^5V:\0^..V'JT8LX\QGCJ^#%CP$ M2S88F5TWZ&.VU\CF9M]P3#9Z]KMC-G\4;NN6WDETWX9*6]'=$/)=,6+-P/&' M0V9V_<&0@Q&KVUW&]4%WX'G.R#;,0._C7-DV?OLS)2$(M6' #3@7Q[7T8=]Q M^L! +>8.3-MD@?L3XK=!^(W[W>\\35H)>3,26S%N;<_BYE#WN_W!4 ?C=N1V M76^D=^V^9WJ^XSB#OH>]+1S3,%^U4O)12,E;47 K)1M"PBL&KC[DGN[#85D# M"_['[N.(OZ$%_W3Y:. :QG#$GOVN7V_@[E.+^FT=H]^GB?8644P[C@6JP0W- M[CI[,>$@21+]KZ,F\24Q]@J> MYRR"=^Z SXB;G4IOU&C1*?#\NEWX"1?[F.7I+$GGLC%O?2>J_W48L]C#QK!E M6U6UP5K[R8[&OWE\1HU\M6R"G2I]-F?8E7(#W]Z)D>T^!L'>, 9A;>_S:Y'C M9_?('(QZEF7=ID6F;?:&(^O.>R,"Z[/,P3TTCF@?9:O%G]+<];%"SFSY M6GMGL_GO715D/%S6RBF?X_PB'J^V*[UUZY*GWL#I\?9PNI6S<5O@G)XO.7Z M<,T\^G9AP']S[>G+ZZ?/7TR\'QF?X]LGAVZ_HI5R) M?'S_]_3LT^G7DXN_O\'WOI_^\O?G"R M)KW']SSF#$;][HCW':Q1P?2>@'>=41#HPV&@FU;_V>^#P; S,NZ]B=,:-64/ MIJ^W[>N>0ONZ$;=\Q[)MT]!'%G,Y"YR!93)GU/=X,')N7G/?LKZ?R_I64J/T M@6GT.1;E.8;7M9B.S6F"09>-+#_P^D9?=W1@?6:_,]#[>]R_KGE:=7OG8[KS MT6?VHXT4QEXRW3S1X6[7LCRG.S(G'OO]-T\W:B]\S'= M^>BC :]9%GI:7.B[929=VYNID(SO>7J.(+E;#=B\05;N$4MC &BF5D+'5HA" MO16%UXK"M/N$M% M2\YWH_"VY/R3R7FU\K7O#W7+ZG>MX6C4M4SN=YFE>]U M]V1[[NVVS>1G(V[ M&H'6ZK7MG?MYYZ/WX!Z&48YYM7>FV3Y.GT_S-%MY<*TPO(DP7-.*E''310VV MV_>"0=?R#+T[LAR[:YCN:& 9PWY@N*3;_G".1^O$;3Y!/Z!NVQ+TK0AZ1;LU MK%'?ZK-^=^3:8*QB!I>C.WZ7.^[(X7U@T99#VJW3>()NGC[4WOF8[JPW9EBJ MQ?V]H=T,UM6"5;37E <1]^:9AE2)^V 17%+=0S2&[4,T-DV &+^+FF/^;<;C MC.JJV0S>^0V8^9Q'"^WY#:* 1M\*;)>/ F?(+=LW1R RF#/0X7]-G7O&=5%^ M>Z4)2F6)9\%R_Y/=0G^#_10AMV](< CKN?K'QJ[R?<:[P<@""6 'F+XV@/_1 M!X, J\D-QW[VN]Y;#=MI@*\1C5Z(_1L=OS72C<%P9'I]G5NZZS,>N%;? SPP M!P-FL.N"P.WQW\WQ&Z<'_PP"(^"F97<#?^1T+<=UNR.][W1=5^];IN6:PP%Y MJU>]6\7Q[U);*MN=B'8/YDJ[ATR[XE&$_ZTQ(N)1<_:MH5Q')!=^XWZGMS<'4R_F?@FZ[1-]RNX>-<(W#6=4I*]JDU.HL;,$R2\3[ M?TMY1%UN9.<5:9F"9K.&Q^IJZUK^]"(1>_:S6;;6WZV.EPI MHQ8@K_POKIXH_9K'2X %+FBH0E+WNT4-D,K"!ZDK]O_L<:L10-N M %S^?ZX_MN&SWR^H$Q)H$6]00-"L,+89B9N"M<>GYQ<'[]X='6JO/QZ_.SP^ M_4-[_^'L\..;B_..=GSZIM?X'9R>71R=:Q=GVINST\.CTW/8"OQU?O;N^/#@ M O[Q]OCTX/3-\<$[#79Z<71R='IQKKWX>'KP\? 8KK]<1[7KJ<5P?H*M/=RX M2Z1NE6L"UZ?'BY(\_S=/IVR^@0BQ.OQQ;IW]\^/IY M^M$Z!74#UC&!Z]^750M'Z>>+W_T =#VY.3L5#O_ MU\&'HQ_K!_>S:7!]^[CK05$'73\(N.L:CC-RN=6W?69:;.CKP',]1[?X<$/R M'_P!"IOLIA=F&NC"7@[*"ZA=[D(#4(7H%:X^!3^C3G4E>]=J3#2O%:_(M"2? M9V#FTU-^GN)_\';X5ICX'>TJQ'9^>UY_/AB#V]A-B_I<\HY:)NQR(TM1]_!1V8>2P*F^.@G<3^-<^KT[3 MYR"ZIM1I%4-$8]EPDK,L!VU:O&O*X<3]GO8^0<&.;1YKGX(=P6:C'!5]:O8H M5T?_7 \$!0&$[=4$]'BUG9YVL7YSU3T 3.; %/ #8@7LBJ5^II%RB%Z,B%I4 MPKMEL\VU^]&NT"=2MI! MD]C4 <@ Q:'/N0<:PCSDV=$W(0+>ILD4FW0#_HF8P;)*?3!-\GA'C][3P[RO MQC]]BPWZ@>%T!^YPV+4<;G=9$-B@=KN.98$6$C#CV>]KO'G+> ?2;[9>9%]Q M$,+8W'E9<%<%,SSN[Z#0[([=+O=8GG&Z6TKV98\A@\5V:\I RM5JU;;6NAJ5 M-HK:4_4=VY9WW8K--8JKMJJY[NC9&CYKN'D]NG_S^CQW,]!, 26/+E'^-,:\ M7D@Z_^)=?;[X:)U\\<.3[Z=?3BX^1"?PSL^'_O3SE\]?/W\ZMD&;6'R^.%JA M\]/OKZ-3,)M/S>/O)^;)M],_/L*UMU]/<173#]'?7[X:IX?_CDXN3H.3+R=7 M_P0 ),L?!EU#=X'.]<#IND;@@Y@9#L%T-)BC&\LVXLAW=<:&EFL[?6LP".## MP\ W WM@V0[3!\OF]?G'U^='?WX\.KW0COY"U\]VPWJMW7/M-YMGP'WBP 5B MD#,>T#3LXX0M-&L^D7R(&$B2IYJ;@-T@^%P*W"A),Q1\D1@GH?TW9RD8%)$T MHH%!=+096P@_9ZS].X^YUM?5.Q/!6B=)!%R(>*^(?A2W&K:XM:/!UYD&=C.Y M2V^1'&@R:Z0#>3$P12T#2 \. NQ1NQ\,;*#&H21$6[>ZZH^J1#\^?;M,EU)] MQ T_]?F^U X/FD8U>)+OWUDB8)I'6<0S::!I&$I>O2(\(@Y"+0%V$3B[\79Q5?K9/R/;?C!L,_LKN6[ M1M<*P IBON-TARYH-8;G<-\#;<;6]37X+')796"YLU6A&(Y4#$#O#, ( MU=X=OS[[0'?#!\A0A8?/+CF8H\#.M+=B:$T\UCZ@*'XAEG!^]O;#LY=H>819 M\1EI)67P/;G\;)9RYDO?+7URFR@'5@.P66)W7G\ 8L-W=&8/+:Y;;,2\OC'L M6W; +9L-UV+_#?@>!@NRLV4 $?=8SD<.[H%7Y0X,;CFL&E#6UFC;U2^>&1QXX(Z>O#]W YI8U\KV1/;2= MD=<'K@K6E$R7:H_\7H_\[,]_@-%YOCL:=%&SZ%J&'71'GA-T^R!^7$>'/[F# M1VX.5H]\N]]W[:F;0. V=\V19WF6:X!R: )6<5!O@%U9NMV>^KV?^N)T_ \? MFB/?M(VN'8S\KF699M9%"S/+@V5S&SLC& M2V+I0.K4O4GDA0N_R7^NF\$&0@0D3):[7] /)J54!L>L!5$"7V.9!A(KA?,% M Q1K!6 )\XGRTZT1ER)T%H.67P@R861BG$NXVVAJ6Z&_.\(>[6D'49;@BY?T M>AH[1ZEM:$3G%0#0:[,K-@,T3<-+2I3+< _EE^$?[#()T8Z>AAGH8]Z$;&)X M,FN3\WYZCSG4\WL:2^%LX!]SVMN-?O_\+CLV$3=XC/+1L0O$ %^NN&$4S@*-\R6,AGS%E11@? M<"\V=*;?%@W2+\4ID M', .L+16,_3NG[42#%P#I3*KR_]9DV"X*S'VFQM0./OKZ,-?QT>?FNW*0B]Q MRDF&RT21F-"I0,\(5HGR+HPS%12#/P'I(W1QJ<@2B$3TF%*4#<4O(AFH9@+U MT#3%0C_,&(!O,12U#!W*\ ;A-2O>*'-X9I&(Z:<+S9FGBYQZ-BTV3 M?$SY5_CICS$5(!(:@I8A[%1*)8(?4G@J 20?=P#54PXTF\QF>!$7@[^4U\>, M\HU\4#Q066& \^-\#J_(,-\K]I,KS07XX0!7H+0K6*N\U8L2U$VR"8\NZ4W3 M,$W1CX[?2&"):;'VGO8)X1Q(/P#.E V %A/<-AS@9>C)4#G"$!_GWT*1%X5Y M21&7.$"7IL "0O5#%?YX$:.3/"7ZK +P"U5CPLX V)KER, *94\(!I 5U0; MEBC!2*0S1Z#4ATSX%'#E DGHL.=72?J5],!+]'U8NN:"T@2J3I2(#"38]8@'STB3+:"/RS1R!0J@F M=H$^,,%NCFNO*L;S9GQ,;@NAJ")\T8$"9R(&VHJK/7BZ*!L##?D]"_ NKI:"?H?$6<^D3_/$5%EK-,?!SNZA[,(PS:>O+M MQ;#O)?3&VT$O%1_CZ(P!MIHC!L+>XSS T _W3"Y.%.XG&7W&"^N!-?#+" GS67P48\ M3-SC''8:A?_-0Q]]9$0.0@#A%X@*RVH6?!QV-%XTW?E_(%@B$:]$S6OP^F/O MO+<+AP0^,PF!<'P^P^"3EL]0WFO"H,;O<'@HF0*.X#$3[RFYG<^GR3AE,W@# MYOH1GZH9*_3O0!!!ASZ/_DS\(\"%>;RC<6"\"25(J2P MQPBN '5QY'PX^UK>C'L%I([F$X6\8L'BZ-DE"R/F"G\I7,>BVC%RW$ Y(87U M)O$ ME&K=<(GD..!:" )P>(0TSL*C$1:0I]M"O!%KVU&>$;4"8@]Y0P3<(*< MIH8+?#7,GOD+0A S(W&J=^T,*UF_UV=UT()204 R:>)Z%+Y?W61W[=14,R!! MJ4L!BG^*F*_V+[@*^ Q0'2#5F.2)8'F5]\!A&K_04Z:A]ZSB/3^&'X3IFU /J:6V&O1>S-(0 MH(VRWD]!DR*1UCE-RV(;1F& ZWW=>R#_)LY#79"P"S+U$A8CWM/,9]T"#]6 5BT[]S$ ] MG3'. [BSV]X2DK,,K:"6@P( 85;9MX] M^P]?:">4IRY2]][SE"*9@"3/ %I"6((RDUP)32C(4P*$SV%9$6X/M'B5'Z], M9/SR)9 .B+*ZCEA;@GJ56@IR%3G@J@,*<$:*\#F=)7Y98-E[.NNEI>W$_!]0 M?R&@$(,2<6K%I3HBRN@CIW-ZPX+3H4G&LHFP*_"/2EU%H9!2=!*S*?V47<4J M]0%P)"&C2,-UT)LH=BACBU)C+%5$I8JB6@\8C/48B$,I!Z46$)7-4)Y1GA&F MB:@\(^ >,[8@QD0'3>H[B^.<5'21RH/??J[W1GJ992*$@VF7HD =/AN/$9/F MO.:XD'P)OR/V-@:#.%V3(J790F#HO7Y_^7.CGK[E:S<1*CWML+Q;+J*S*:5+ MV-SY? *L[3ME=J$.*A)AP>;)X<5,6%>@0TZE'BJCR9GDPL"ND80V/D2!:CJX MJE^@N W6D\^$(,6DB5J.A"+3:H5+-5EW__2I+9RLV>P!Y#XH!Q&*/V]7;K^1 MS?+1(H(<#I&7YZ7PO*:WP1=0 M14+%BY%/_:I@U$&"S$VA[L%9CICF;2^"\E3J'Q*MR/J QUFGH UOQQ67!-$E(&G M-HYXZSBBO3F.V/2(X,/Q@XL:_4C>/$%5X2M)B%)2SDI)26:$)-(JW0CUB[C_ M;[N@#R&\Z S:Q9;?OQG]7O6W5(;IZ,=U>";7JPB"IJ,"Y"(VR_AOZH]7JJUC M&-/^Z:%7SV/ZNK]V?WJ";.]]?VU)ZM'+K MFI[1 ME_3M/HT4X]HR^VF$ ;^^$W!>:55N"[3E.^_C2FH>]'_&%. VW.':!^ M_6Y_!&3["#7SWG&U$=,V;C=%[N?PEY4,#7U[ [+WE-W818]O5V0ZHL,/+)== M".#V4]5WH8Q;S\SZ62M\!*A\N\$Q#RDJWU0=(\)+?0W"[MF8B=W @$&_!QD< M\ ![_>56O.B13B'9#61]JV>UZ/&H6/4/:AWD-'AX?CWEVFOA^%['N^]T?7;/ ML7=8XAH'(:H%W7[/6./#P(P]H3EI+XSE=II[/KQSMP,=]HP'FU$G=EG@L^6. M80_EW_C)[W@$!/&#GI"'4J^K6K2VCVKT"_-'M.B]-= -O3=J#?36?[/)?U/D M#;;H\4@$3.,UKDT"9KW+9C^%C?'RQ^3-WMKEPQOSDT=MEK=>FV6OS4VC28\: M/?9.W#1OP?MRYY,Q%$5;A;>BB\+^!U_Z3]-L[ U:LZ"U&C=9C<,VZO_(I,V^ M6HU+TN9QA?U_3/CLK97PPNP-7K8&0FL_KMJ/HQL+GD>-'GLG>)JWX'VY\ZG8 MCR?4A._1F(_6DS0?^\Z-D_<>M8'0VH]U,6ZU[H5')FWVU'Y&S MMT9"?WCCE)=';22T-F1=^/3;PH*]%C[-6_"^W/E4;,@/E<[0^R_([2=I0K8A MIM:"W*+CV6U9^B.3-7MJ0=9ES2,S('](].RMA=#O.:V!T-J/F^Q'I]=OT6./ M14_S%KPO=SX5^_%-.>MK_\7XX$F:C^;-"U$>M8'0VH_U_.9^BQZ/3-;LJ?U8 MDS6/S'S\(=&SOP:"V28IMO;C1I#9;71Z+R2/NJ5M7'7S=S3V4!^1.G'3QE4T MIZGM6-5VK'HB3IS];R(R?)*>&\N^L7_]49OFK>>FCA[ZL,6/1R9A&J]K/9&6 M53\DVWWJ : MR$:]8>L+>E3BI?%JW/K3>9^&'O_U)/RV[Q+&T)^F$VC0SA-KG4";T>/F'6L> M-7KLG:!IWH+WY<[6N]9ZU_9 +;NI=^UC[[RG_2O),]B.=L+2KWR^CXXTT-FN M'0_ MU;HK'PN3;KSFL\MDA,T<>Z\<5$_2,]56D[6.J2W8T;HM'Y>\V=/X>JV3!_U!-3EH[#N(N\;U1' M,X_'XE%&;);QW]0?K]2GPY@ 1P^]DF\7A_;;&L9*WQ.7 M7UV%_GR"H.[I!&XE(>67Y>4>75I",G'-[#G6<.-5O6=LO+;MK2.K-[+[.[UV MK5PO2?YVE U'\U!DO8FF;T>Z8B-;L'??U!M,QNVZ(AD7-(0PTU(^2WD&A)-I M,WAEXG<36'17_*V-1:IND*2:?"I*/"8THN0JYG@'9T!TVGP"FS%,;0IKF&0: M@^N!QAD\$80Q/(F=8;(YW#J%;VD^_-%;HY<\,G0T6W3JK MOI;$6[ 0$(I%D<9C7YM2I"LCQ$SRM)Y)GO$Q(EEOG>+[R!!L8SYIBV"W0+ P M!C8&>H/P.8KU:%GN9GR.R(?7TDJ?Y!B6Z $GG*>Y1XA78N:31\R-D8,6,6^/ MF%-R3MP?7CY^M+1;M+Q[M&QYXF[(MW$:=(M\MT>^.:5R>&7[R9T1[@RNK'\. M$3C,YF3"3#B[7&@,+D:XU.H3LS3YPKUY]A1P=Z.SK,5=P[P-[B)>4B\S#>QI M/D[2A78U"<%AFQ,Z)_!F0&RX)!$[$YCM M5V]R,3^09QEL]XJG7&/>?_,PA57"0@ZYQZ!@EH81_=M\ CJ! MTZ+V1@"A;_("N*S@@FNY94=C%5T4,78+2^[@SX!=B(F*?:+K:*ZQ%/5;=#"Q M=*S\2?@V!O!@8PZH6F'B7Q*WIUU,PJS*MO%?W[PH]P&Q@S29DGRX% 6SDO 0 MNV=4XS0-OZD?/4F[Y-5BL)Y$BY.YEGT%\.$KY&U 9K#J<7C)8RV$95=7"T38 MA36!*@17JN($K;6 M*>L!:1!!$&K%.7)OI#U/A*OAN:SBYB64NPKG$XEVZY0ATI30MZ;\:E<<+J67 M' F*PU',M_. )X"UU8+"%FW7H.TA#\)8X&P=09'3 G8"N_=S9/=9$OG$B"F- M@0N&C&Q0/);1-:]&!/B:\J5K2$+QUXQ'$;Z*>#S>^)-(04DW\M#,HA#5P(42 MA'F:XHL7G*6T!)15_YVD):*-D5MQ]K7+ ECL;RRZ8HOLV:_U+<+^ ME@YF-YAN@> V.!I.\>@]@(W>^%L(K#+T=@#D*6CZ'X2:W='>)!F9':*Q%++/ M/](DR[3W:1*$\QUQY($P H4 JFQ)3-%WV,68UCZCM4M#'4.<491<9=H+$J=) M#I_TLY>_[;(WHEC!NKK(IWZS>M6?4K$X^NWALV@&=L\:#6^31&,->I9EW7D6 MC>'T^L;H5J_=?FTP,N]^L7IOV-]\N6&+!KAS5M!7Z,F*V/*69VALWJ'5E-[*(LLR^DXSO:N4O='%S?0 M#O80MD[/N$^X-E5@/^Y#M0R[HSO;M?-6D+16_E8D^J,2-VS-_*=IYIN&WK', M!AJ"#V7F[Z$P,,UK1/Q>M,':2V.]Y79[Q>V,H=FQ])L.4'Y8;M<\Q:BUVF^H M7&&.+<;TV);H8T4TE7C6AZWZ28[Y5'OL:>X;UXT8WGG'CTA(W2".?)>W/F(\ M,T>]:UC[4\2SYO'Z>Y,?N_1^LQ\L<;<25-?"V$LY%?SZHD"7:M*W9(5A56T? M*S9@*]C&P\^QAKWRGEH)2U8K"<&2D7 *_[JD+EI91Q3RBOQZ<6N2CED<>D7C M+BR#Q%(7_BW,J$I8E,)P*G3,)LE5K,IT_L,7V@DL(4\Y)2._YVF0I L#PM@ M1#,'YL*G>_6ZF55(&'IO] O5T>P$C XVD)CA%RYYM.AH?DHEEBX6V,2PYAR! M,D\36'R]]!][351[3U#QC>R.(DM"14GU.(4[^T[/^ 5W?04 QO_67[92S".? M+;=E#GOZ+QI6W= #<#ZP0U%_0T5(HNZ:"D*S>:WF]8>:"JF7T"84L(W>H+(4 MK'&2BZA"6+!0"6935!V51:?X--8YE6"(*WB]\^EAU2V;BU)SRA=7%:\E9N(V MW\#VX'/:091/X4BG KI4#NQ2V1B696D')X>UZO8.KD,@\/:B=UD,O/+[\@=6 M"^K7/,*_(2PY(#[@LHFX7*>J#OQ;L^Q>_Q?$CBCW%=VO;+("A,[N(.TUNV[A M Z\H@CCZ58PIU.O8I#LZH;L<;E\VDM2Y!%)[$O.6*>\"CN5!7* *SP>BYYQ M*_7>HO8P0VX!;XNXK!T<,\(3>$,$?$X4XR6B0T,B^S%0Y*ZG?>(5U@1+#!(O MSZCC VV:N6$4SA>"/E7].;P<^36\&L<2-[+B,G )>JNF,]F %O I\"JLQRKDKK@P"X*VX-L%^U@J!G MP]C/ 50+I/Z4>ZI*,:-J_"C\"OP8]P=0QI84>'!)/IY(KGW%175BQK$@OEC3 M-/&1HHCC>9Q. WDA0 ^Y$'TV WU+KHT.J[YPB3-P-@3IJS"*"G#C:JZ2]&M) MS?1P" O$2Q'VN! 84,(3[Q*$(S9=/*K*+NG1) B0(P=Y6AQYP?NS8N?U^E+F M?X%7R*8;NQ!MHPJIS@K.=P0,+\XJ,>DM6Q@^&-\IU\OE>N^J1JHM?FJ+G]KB MIV;=^72*6]KBIQ8_VN*G?2K@>5!L:8N?VN*G-BUJIV$'PEAK,Z*>9HY W^P, M])L.N'W$"5$_4*C2O,,U1[>=)WEO!1M-C1NV%4]MQ=,R]=@=HRUX:MJ==S1C MB36*\N51])RG7P%F$N]: 7)=5M0_S".]58.TZJ[(I[WBL>'K3 MA-O'C:?-DR"-D$K[YB8X\*=AC-DEU-#T1RHO'JG*NT>*K3/JV/HM#<,]->OW M4) 8_;;.Z7Y-])8K-6EOPU''L!K'E9JG:C1"?6F-ZD=AK(",&;362F,LXM:J MWH*H=HNHC98AC9!+>V=63Q-8R7=*"F^-ZGU67PVC8_5ORJ-:H_IGISOT]-:F M;FWJ)\24]-$MLWM:F[JUJ5N;^A8TU[LIP3UN2Z4UJ9MY=M>VJ7EB>-H\"7)O M4FF7SB$/53HO$,GG7I*25?P;("!/\:[57/4&+E],+/2Q]#4M2J.QP*:PR#OE?CC7(EEO?QF*]ZVV9!%E_^?U?6+A\7(C!+JS\N3N MD*BV/*!"^2TM8JJ;IPXO:G)R&-=ZQ5![@"3E15^"2$R<%$/"Q2CB)F/<-H+9 MD+71R,KU#73#:ENX _(1>+)$.R7-!,P3C2E$/PO"G)4&0E5BJG4]Z6D'&]:; M1;C7:%'!T(VD<;<$(7M.L'0!5WDF>A>)QA8%#\BG+I Z3MH&Q$\6'.Z(.!,] M6Q+%"4H@N3SF0"O9YB8L[4CDNQJ)/-S?D63=;X M8V7EA="]&7-V[\LC MNW/'OAX;/5IM-Y6'@/IC[1;1]BAI>Y3\?*QK>Y0\F2RI8\0_ZA=<46_;CB7W MM?]FQW)&G<'PEDD\;<.2ALBTT-5+9]BKY*7QQGYBBH7<&^EUS MQ38%K!DI8,U5S(33\448>\F4OU3JV1-+^'IAV/W=A=;=)-&T>4Z['X^IVSW[ M9Q_0_N@.3QL[#.MAZLH:()WV3#9N24MO=GKT!25$)ROQN5OJ:3)RMF:D6^OA MN#, -9MIC3JV\6,]6^\ 1DWQD3SP.UJJ;:EV9QM]>&-MH^%DVSR]XDDFS

    0$G"G";J81(T7L-#>4RSR*S><#"X34Z:/>CIQNWR ML;9F3HUZSFCGS*D;7!OJ]Y#FA8NU'U6:UX\F!XW:C*S'DY'UL'WKVXRLIY95 M] 0R@%:5C#8!Z&DF !E.1W=^S(YNO'>KS=AX]!D;9L?2;SHJH,W8>)(-=HY6 M+.DGEF)A#GI.VZRD#>.W"+*_W6SVP(E^*-SC<+B3'7WDZ.=$J[%#354V>CP1 M/7_I:>BD%[]B@39]9@8K37QY6QX'[#)) 40++9S.F(<=2-R%Y@'RL3 NFTG$ MR5R#U>3P,71ZXMO"TD)*.7:FP)W,\G269'S'#B:-/6M1+254&XE%EO!TWLT5=NMA[SUD+<> M\M9#WLCJT?WUD#\TY%H/>2-]!*@,B0YW18Y% J$-N'^F&=5#8-GK>?\:7K. M7PPZ?7UT=P66K=/\$>#P/B&PX70,XY93$5NG^7YY879RP'2T*UXVH,OCE,/A M?(<_T;SFF%VH/1_V# V6&85)7!>#'6Q6-Q,>FVC10;F)7IQEV:D2&7%! *"O M?/Z_&;EBO#D3+4'1_P+W<_S?>-P%I6U:9B@*AP]9\5P+\GF>XHI%%TQ\+7Y2 M[)-_"S-RV]2>U;(KL,O)TT2W7B7XO2N6^NONZVF?N,:B+%&- 0$6SXT2 KAY M?$W*IRR,\6,5H(WA)_$E 3X"5P$7W%88,_1)K8"($D&74C*+9--KSQ#=66'L M1;FO#KZ:%:.$Z]UU>;:79CWAMALEG'9%CKTKG0WHUASUZ'RQTZM,J) MZSUGIQ.GKL[7G^_.1R1/R-QV0J'__YZ% ],;!)[GL2%S+-L/'-/U7&O@]-T M_N#L'T,?/'M(=Z4\V.':@_W/T=_:VX,W%V/(XD,?#.F011JZ41%??2 %;'#.HQD@N\POGZ4)4BH7U-FV:DS"G /86',DW>)]NW^SE\8]'3RN/"MPG.3Z2(B?N84.\E M<3)=B.:L5Y.$^K:"MA!G^10$UBP-/5Y^G5X"F_. [C5+[RXX2RF#GV3!F E1 M*2&$6RA>E.'>IO _U=;2>(<0F3C#IK:$9@ [ MJF.001L1O>UU],+X0UMQ^O[)F/3V=^.UP_'_!"A MD;#"@J4@UC+@2-A:'C6#,?ZAT!@O?L2VSKYV/B<-M5++ W?-0A_H'+#?XX*- MH/H9(-D8/>V#((LE%=<%_A 3_>1(Z"OL5GXU0XX$S)=%@7RCH,@@3.%5_\U9 M.A>MZ(5NF&*8D_B(VD( 2DI,/P&C W6). -RE8.R_[3DPG 3AD<)WK"<*7?S M,/(K7$FL.9LD5_@C\@)B^U> 5CP6>]0B!%FQ3&"(\*Z"?:@] H-*YT)WGJ$> MA7^G%)GEH$S-1165SST\.,F(^DU77S]Q:>;@VEU>"TD#>#,E7$ B3D > @C] MK-Q;(0]!KW5Y%/)+@4D1;(W7Q"'*D'F:>X*K@_T>)6,\!0J0YS'"DEJUUV]$ M4(N+J)L2_&%I5Z!WKM:.B=5Z@',1QQD@.*;!)UZ+=Q&R8%T2_']QGA- -R;' MA60869?:@$ <#-AK0F[A.JY*2,$M:@M25N-D"$(YE$;RI#07/P-27BP8-1&R M!<5R6;Q0N$(?FK(%SJ4H"+>N2ZQ@->P.U( ._"M>E$8EWIA@[5H2LZ*S3!H5 .FQ>%YA.CPI7DO H:\PY!L*1#6^0@9I"1QL3@](E*3P M>B^9NK!%/#0X:&0U,0I*.70#WU0J-Q]$M@/\=2"L#&$S(5'A/!PY?J,$T(R% M*:T?S!Y0)*+E2(1J CIQ)/\7$Y MUD<>,CR%B,Y#2K]0W_'7O$$#_5STY\"I+L"JQ$_X=.4^XGMY)K17I8"+)Q82 M];/J%BK6@;JKQE5(I$C?4MU>**LG*[2P8H:(A+)?9*0 ";-N%=U>NH-H*W)1[7X78RR;A;*9,@GF* MFGY&DI7[I6"5-L%-ZI#KDJ3"9FL;\L,LS6=R0H](PT)>56/<-4,*OIOD8V!J M:AX6X9E@-E=)^K5F"%1N%DL"%";&7=Z1H"F5I"$Z8(3&5"2#P<(Q3FX1X+@I2\5"V". 6P!C=9""W87J\2' M0!T#ZJ*Y6*@PZPPPWP!YI)U3E*#6&P"&6$%G*#('1Y.@;8 MR/%6"4/?-.C( M5+JJC#49"E@*2;SQ7=U=DF,B[4'8CWHGX"Z"U.N"& *+&D M4$N/B\.2)H $%EH:8Y;Z$2IEDF5X#'C"(@-K@GPK-%$OC_P:U0NE6'I8T?2@ MIY,93V5PH,([A&J";EB_:N+(V *8W\@B2/(MTXG'8M1R781SAHM/8A4[\$ . M 9M+ 57/D)#D_+WE-XC*>SGA1PTOFZ(^4;!]G'BF+8/,I..72B@1 @W+\\,@ M"#W8;NF$H2\6D-;"8-D 1%S)UO-.XK@DIFI;HDEM_A?X9WU?64595F,*:5P; M0WAS8*@>&*$XC)!K_]__.*:IORK$Y['P[M'/QBLT30"#D5(8"A'X=":=YB1C MD&?(@$[=*PCO3_&X"OX!ZCI"DDZ&+.^ZAE870:5FLW^3D4@)A1V]0XV@V9(( M":*PM,),*C%HZH@L7*4X3MD7%-T+)9_+*7B$F"Q3IT6:88S&T[+=FH7+Q@Z0 MV8RKX9+4""4%64::D;1,**F[\N:E&9W*<"QW$$N.@6B.VY0;JN&:(JN,Z$D: M1+6EEL[C3Q3&X8C[]?1D-> /V?I7=+KD<11^Y<+8DT!20)C.^#P4%MW5) 3- MC:B[\"45A'G%"02%;@ / Y?,DCCFD>!="&SX!4G3&+X2KXXS(:C$:Y )5?E& M&HH1HU>5B67$01+I^"+"7OM!W+N+)X!A,"YOEZ$P 5;Q20G!6_3+61V16N=A ML!B<+UI1<,-:[$4** 5A 064/\56I5^CNLX81#8QK#WP+JWH5=(,4N2')((^ M =0C0>6(246A\#2=#T<1A$\NI >21"?_YG%2RI2!-H'6IIS%T@U&A%'G$E4-%2](#R7@VQ6<.)$N!AEAN%X"^%KR7W(& 2!A'L :5[QBPB>X6NOE>OGO;)]WV+NBU3NKEDU MO"I,A7LTE%\3/^'L7/2MA<32)F%$SK\TP0& Q9D(STLF,Q\$$B))X6&W16>=MDEB/8597GJ7]E#@+JDNS:;KB[4ATTJH$YT!(5 NXN9E@OPNHJ.N1 B%!T1I M5J5M3SY^86W(]Y;2CD*&%$>DW!@9M*";,C3[.C(!!V23U+1))_5 55?ZF=+E MA1 HQ*X(7@AVTA'2!GU+F18+>S$BVT&@'9F64>*RTN-8V0NBO\]1*R U(L;( M*?(9#G"X)(M-^$8+]Q?*.ZGX*]V=H6H+-!.1E>J'WKS*?G ;?IZ60J2V006V M3I52QLA68Q&Z5>%7#'_(Z/DLP60>::.4+ZC#J^Z9E]1+WZ\XIM #G6DO7"8- M&,$3Z,,H@"-R":MP,@*)8CQD=?RF\7_<0[E^)\K<1WWN/78[: MB._-H;8^^^1JG5HEW8T5QZS0+Z7AO^PK0/$\%2PFF_/IE#B3TCTJN7AUQE'_KWA%- 9+5FF M\MV43Q;2I@!TR6O18T23XX4(2]*I\+0E7]#0I- G,+D(B$&DB5(H ]ZF]&-2 MXXZK&:B=HJ:8PK'=#$PYRJU)F>#CF'U4:K\@A5 "S='>^HJ>'6%I<,'7LQP. MLG@L4Z'+3K%"3,D1C%C&--$HJR0AN1R %:++K,+>$U*)0@U,!2D8DT@_16? M@3NEO$6(FD&4G_%:_F6LB0B L2LK,1Y];88!D@1*;"JC>)UW0J M*55,FR5S*8TK.KQ87I@5:Z]RKZIYSR]9E*-3C?"-$5:2.B44N$T)>M*!D"TI M=*59AADH,CZQWFE+V*228$N?WRKHUG"H7?-;1\W-;WUW_.?'X\/CB[^U@]-# M[8T7KV\<.;HYUR6A_6Z>>Q&9I7>+IP\N1L*1H7(]L)A9 21TPQ MJ/K9NTDJG&\J]03Q1WD%L+6PQL!R508I(8OX(/]O'LZD2DNR5&33PW:(0BE4 M#]0B2EAJ50P3)E&NP#U\%Q ?0/SJDW#Z0V+M.Z*'0(F 5(Q$,QST]9[>G%/ MN7:,&LR[0O6.I&KMH?DP5\QLH;U@N+> /&+D%G_9T2@<\MQ>3B>?DU<%7Q+Q M^9R\HH%\WY*!/Z?I%U$(>_&EA_6Y-3![HS)%G)+6EN^[HD14P9W!NG]N] ;% M$J1CLRC66 LQZ7UCJM6T2'5AP)TQG("N5I&^D]6]!A@#%GFDB8"<=$K^;]U9 M4PTA1J'ROES;!<>$14S.,RFVX)UYIC97T**&KZSM?P]\G)BWM2E@3$[;:K!6P7EM@%9X M_XVBYXSRS%5?4$EXJ.6B**'JU](\U3FOS[RLOE>HE(4^7Z1ZJB3MS7'5>@X[ MQ5&+3/**?"X)OU)M)4-[TEV.[A DW1EFPU7S7)J0R+55G)Y3%/$"HX@J44M[ M@Z3T 1E6*L1(LS$9A:H0H8N*<"U73UY9.#94]8EEDH"1-Z*E )JRE+'HX)>- MC#H@NN =P@FR)$B_$5,@'9A"Y%,ND HTN)ETM!4YBXD;A>.*^,;;T7:0*_2K MW9$ ?6C%% XHN%\N T>EPJ V@[\F,RD?A-L^Y476FK211.(OO$Q24;20R9-Q MSC!Y[1*=4KZPPE9R8ZK!PLWRC%Q_M)U"$:&(4QS*4!\*$%0ZYB L]:H6@/'& M\1C3&^:=#!5$R.):VT3M'O Z73=JKW'14J;7&]")Q77U5X)BI-*>#T$&=YDJZ M$. ]4X4MO"+M@1. U@#+^E$M=@^TA#(L*;7 ;9A0SYL6"3,B&86>$KYTP7^$ MKA2M VM'Q.G1K^,#)I&57<\_2.)Q0A*\;AM5&6-!M)+%HX42^"7N]1 V!C@0L(! $>!/($+1U*2E19%7$MD5PL$"PDS[@2E&@7%?XVH0Y,I25*WC.2 MMDM:=@."T=L=0=C/8*\5U]=\D4AA13QF?L6C2\46A%0ME4KA!A8L1-21*EK: MJMH*K_L:[?8&:JO*/"H:2""7D#F[1-F\\"C)'$>7%V.VA#5$?OW=U=^#)8ZF MW/RHB))&5]7-.\6.Z[D8J-!)[;9X=6?5E;$9S]L@ZATA>E]O@ZBWL&MC=,45 M1 >J92BY0D5O5:@O)(!+P%-9FRA4Y%Y5YI ^@ MDV6KFE!WRJW)&=^P:#3,J^MMN$$%NLBSDZ)@YG\S[;!,RJ;*MQA3\D/:XMLB MH/-&J4ITSX0RJE_0WEF"M!W97H5P) M4(J.VB(#6-4JPP?AB/^DP 7(*N5RB'%91-9IQ@MW\^;(7J-4LW-)Z@CYC[+7 MU1OE'_B TA-V?T'Z^H-3_ T3'C]))>N-8&$/OOSKK'"PF%BYDJ5\1-ZIJ MBNMUQ"U107I",8[:)=EN?ND+58_;1D=1AP)KSVUK4+;1HAN?V_:@9RT%Y8J) MLFM'O\Z79L[2MZA-E5Z&]RK1P$IFRZ):#2F]I*M-( J_:;6G#++ BAM2)1NB M%7L)+P43CF>5M N,'0[*KEFB#TZ9Z:U"C*K&DON5:(7RP,#&OW619W,^ZQ'+Q-@]2HQWY"([MCVS=@"7=X0CL//FE6ZP>D\;=EFMM985<>K))Y(QV[ MU<1Q$9TN,XM7#6;,A DSE:"K:*8N(*>NJ;'56M+\MZA-4>FH9>R@- MC<4\U(=,EKRJ0HTXB;NTEW#.I[(3Z?;T354-M-1, MN9),5CQ?32C##E,47A!9E>J""&'@4C#L)#*W98?2]3TX,*T-0]JL#*[6BR17 MOHPM=K'"8W_0+,]4!L12=5]-.A89QT6>GABC7.D#6D2".FMZ475D/E:GDEW% MJP78JCS,2[ L&!,&JC4-M6P$3&T5;VEZG&9G;U2#&,2(4<)9GA*:F"!:!A$2XE I>O6&DA+LFT M#+2IX.5RF*Y$ %47B-!P681)/TW(*OA!$71<&)_[(H+.JTE1BB6LLZ&+TN 2 M/T7:L$=I747\6G!B<0E07_4K*NHDX%\=F80_%C34X*PY7( MI,PWU]GY:HW9TB)E%Z9PM M9V,JQK/.4J_V)%AE-]BLG80'M2;DD]"38J8\:E#K>$T$+5.S;&]?+JB>7;K$ M>+:M<8GQT'MPWD*1^UUB9S>5:6B51/?.4E;/-E?\KG+%C397_ [D MR5HRN;$\J503(Z-(IE,T]H@LRLK'&1BGI*VN5B!'LHQ35LM?0W\WDDVB+6^\ MT[ZOU/@Y*<1NTC,(7UKG>UO87#4+&:3G.0)DDD0^->G 8E6L;=R*^J1LC M2L.GT2F^]KR_N<:^4NY5U-(+*&0""CF8I!Z-E!&"^P6BI6Q47P64;%(OFUW6 M0$B%::+H"_'Z+7?3G*4+$: 59.74J\W"4D'(^#3LBK1;T5=.^+!@#VE*(Q\J M;]1$QY&#?(S--PQ1XRN+-&NWT3=UL=18=-A<4F1J&Z#&XU2NBMG_S\V170$G MR1NA6RCM1WA=FNX?D;.!@%GAP5 1@N*"M=UC831-6\:C24,Q* 9O!\XZ%_U? M.X@]"&12W;#CT1B=3MAR1S0"J@\7>$/-(&0C/.DF*<;-N%GHAXPR@E_ O[[( MA@7J/NR9+=KJO82??]->A"_1^LAKO=-%VRO$**0 E$AP@"F7*MPK> B>PAX8 MI8(G&JSYG$\U&H%:\%TAQ:@1?H5N)+6(#MX(-K.G_R)*4T1!M/#VA-]EPVR> M5KM74$GSM:]46V8X;\8C:E!'P(L21JP#P^)MVA3NBA1BYG0NBM&(MX(KV:45+Y*+\4ZL>6!\#C0 M$_ (CVD.(N8^IX"JJFFOZ $2!( 5V U=W VW3WF*W8]1?L])0"EZ!Q_TB_+9\KJ)[*#9G%)5J(0+0S67]/?DW*BC7 *EZ4_-3 M])1X6[1Y;#;3 4%5%)AABRB24VPJ-"TQ:@);:G$1FWANZWHY1#S#H(>8\ROZ ME6 KCZ*9!@KJZJN=FJBBPG#L_:'D5$5A54W-BI8A:Q\LFX:H5W0HVN OU\T9 M5D=TOR(L_Y L@.A?L_BKJ'J*F<]D731P++!(0JJ[I!$?8]6OI-*W3/R(N,MI MQ:KQC8!8N3HU49U\SV5KGU*^%QXUJN#HJ00I)<:H@8 4E"OCWHEJ&"89I40Q_*Y83$$EE$S3[6=>"&;JY8Q!.THR63 L;X_U0=W-7P%TGN69/5Q%RN^2!G[4N,XX0H38Q=V M:'_YW'**SKTUZF$'44G2X?8;)Y]ODT+ZRSCG.Q"45'=L%$% MFR=B5EV5#:'NAJZ7HLBU$K&K('7%J9@*74^0A'+I21^TTBJI_Q?IFC@5J*(Q MU75+I:LRT:23Y@2CV3=OA" M#+:<\UG73ZY$K-J&WQ$/X3_%H 'F3;"UCZHY+/4RA$TQ^X<"]* ;X>;VH:, M 9'RH[R*!'^A.MT.?A()Q 0Z5NJ 0HDE=VF) 2DOM4D1CBV*Y O]GXZCP"NE MSR$ [0WP0X9<@U\^NPT$Y3;*FKTU5LK.D'AN@&U8DZP=;:L5(XHRR^:D36<& MQQ4[6FH'=06.^CSX&,%L282BCL ^EOSTA,G)^]_?#L9=%YA\OTG34ZFDXZ%[Q>[R$/N%Y1 M,]0#!CV ND'Q2="V+X44P5)(LP[A7JX]%!:) MD" Y=WT:(J1R,4J61/I/V9JRPK^J]G^69Y0V)5D\'G(/DIAX8.I M?K,80+!N]=12S<-!E1?3,+4UPZ*S==LI_JU*N7( MY?Q:?N48WRN($&!6DC,M2-E/\"YLT];13GL'/1IPA'LZ(!M)-=-#@L8VW]M/ M31#F)NMLQ0 K7[8&+M12N!BJMK7AN&C_1@# D8LNDA348^7;I))6C-$H.E5M MTM:H4;VT4>IO7?DP)1<-/ MN2)J5$6CG<(Y,!""PWOU])N"Y1)?5WUQI=#?S,*9[++9U6Z_D/)X=ES..B'0 M;+U]1;DC+46FQLH46-P&9:BJ&7_+.G&U9RYZ.X2&:J\HJ-2W5775]2L&9[RX MQ9>HE;Z+/;!$G+S2'U8U6A4?E!A?W>8:K799/:OF+='LI66I7=GJEF[EM7;6 MI.;A'W@02C\MWF+:&UZR)SBT8G(5(4)6FUPD0H0RX[GHK@[L+ M8D9D,:CBYV$[Y)J%2KN(MW"80J/W8;#[V3>&C#O5$' M\XU>>@I^8+X($!2 %9F[ #/&.DI$*HEUJXG7VH4-JW8,2A9>L\V M?I%Z\DI@]@ TYD@S;-Q:7Z/?R"9B@"0#@B\U!CO@6EQ%RI6,ZF1?18 8-:-H+1Y4!JY"M2P*4H0SVC M3\"U#O%^3Q_](I0:L>G-6Z%ER8._@[49UZ[-[(V<7\1XT](77H;#F8M#=9&, MUB)@5D3782V'E6/ 3_V+^^-Z[87TS@K#3P1;REJW=>'FM:R"9$E9!2E!BB6U MRU2*+3S":<7D%88 F18F,JQ0RHT3W9HYH&\ M%JL@*(PZVEN\]2^Z]40HO?M0\_3N^/79!W)B4HJ"[':Z/=^AJ%I>A\'EF,LK M+K(0 *,!'_B:)_BW68* ^@G)&FO9_][I"']5LMS+,4ND\#0;S3[)?MUED+Z> MO9*5;<@QOT5%#^:%61.0+14%Y)6!QRL=O8MN MWMI?ZY]69I>OOD33&E%IE=/1BE*'-$7TI(>*T:%+\T+%$M!:*W5A&JJTZ4T] M,)7'.:8Z%2DU @E2J&6=825 M[(ZZN[CA[.R"IL+6PC^4VZ8RY$2D1?2W1[8P%?/((L75*C6Y54:&">=#JV=4 MNT)O:<+]?-BO"M]:9N)R8VZ9\0('$2UZ8YD3.+Y%S4L@['].[_+KD.\=$S\*9>%8?W85^D)1/X#%AEE#'@;WC MFN]*7Z*T'7%OKY,F=+J_CFOB"!"4HG N)/V0*-U$9O+!N8BJ 1Q.7VTR@.T. M\-R5$X1F7*$VE,WA!--BS)IRPN/6<']3['XRB[CJ4D!-4HB#H+&TL@29\H?E M:8GL%'(IIO%RRB8,!2X)J^P5BMZ)'-K.*)X35>K>*)N!WBKS&IU MS#/+:68N' V]2T[\% "X\B]]LH\LVA1AIU M+":\"'Q/*Y/#*L._IWD<4M:[K/<$,4(4*J8620JH!CB%OB?(4+ PH:6!7?4E M3\/,#[V]R,Z[N'XV055#(1[0V<*HNA6M<7\G&-@]:S2\S02#P:AG&G<_%,!T M>K;CW.50@'UH1KR^(>_--M7 \0451W11)/ZTVLJO:&=M^_BGV3[>T*V.80X: MVC_^;EGIPY';<:'?;S$P2KF]0VO=/>S/.G ZEK.]QWO;G7DWWKW6,'QB#9E' MG:%^R[D7/Y\U"9".FHQ6PADJ70R(6\N<:A.4A1"0VGT?]NHG.=H*:LE/156X M.S@TF_ ,Q^ST#6L[Z=T9,.Z](_?#A[F>VTYEHF4M9DVQR,VZ@XQ+,3>YY-)U M0"Y:=+*478!DQE/* TS%EG@>HW>H%BNS\D_ M6%87S5/,_25OJ0QC53(9ER):RON\S4&ZXE/59H LGDP3"&M1LK#>^)C2C$7/ M0H*04+6H0;:7Q(@^:E:F &U5*UN>,2_S+RN 1"A2UT*?$E#@/6XMR9$&8SY\ M^&-KRZ\WV#46\S8/2A?^>PE>$3?.YJ)M0[.=:.5,[Z(.Q*]/]F:5R=YXLM6D MY^IT[[2<[EWO&E^I5Z8.)-6P6/FRK B0=>1(U7+R-.6UBEPE"IFD?B7%L1)" M$?T_(EX-FI7+&JSI723+DZ+R4 MI5-Y94][HU)V*Y!3F!O&E"&N?D#<735'I;?Q+N!/Z)HWR1 M ^"II"%7W494;E>F'KY%+W7'I>-)RH4)BB$ M//BR/CF4];>B,+9R?I1@)FJ)TW1!"1N8/570\X9LL6*Q0N8Q']MCLAG2(=:? M4OO^>:5Y;0_3T'*J62>\AN$>UAGN087AOBTV^Z;&;#^4J%#F M$LB:8XRV5J%'K4[?(JH8>O<_31>L'SCZO6MB-4WB!%G0'F1JOZ5L()&X."LG M@>"6RI S'."O>)^?D&"J2;#J5BOIG]A0M8+.:Y2.CL)MEOLDX:X78?Q9-RSZ0C*.6G1+R?Y8E9C*'N1O)/58.3^8@ M45H^9W&E9U3 ?=+I964HLK2(7=7*69>; .%C&.W$:[)2255[4%O1E%!'7!%U M_:6*U]&P)#7!23:BKZD/9DRZJ CASI+>2-6#,@$0FS?PJ%/KV%84\ BQIP;A M!.7L'*E*%B\AEDW%/KA"^9S/IZII%E64@545>BH2+D82%=U.\9&4:H94XXUR MV^HK'93T%(VAR[Y@*V\ 0*=H M[943C>#?03@O4G)("PH H"*'(&:7(17!R=H0,;<(P$"?XO%E".Q,5'HL?TEU M@U&SHO A+E=4O(E4$M!?4M50+,NI"@V$>1C+XBYY*]4WIZBA7HLT)1XJ346I MUIYL2T0HLPU[" XL1:++RG$.;S<3*^I"I4F"8Z:P!XHHNI/5^+E(C 6C'I!0 MUF\KG0%+WS#%8\X[2L;+*U*37/Y9J2_+O\-Y8AWEZL\MK+>B,7%;WA.ZGMA%*F? MDY1ZR10M<3HR\R7&X7)2FR,(\0@+L8+4CPSOHU1 MJWE63#2&)D=43;FNF!)8*@S*[.N%6A4UDNYL?[VPV-(P^[K.6G/AJ&27PH6T M&2FG\;*P[D1/'LICK-H"(0DJ7O3&D@,*3(8?CJ\)A>)T\?U6? M"89-(&6E;Z7X0SHI0M(I)CCW2_!X?#B(2B]E_:%7J[*$RP9[M)^*4!&WEO/Y M:FL2++LJ6\3M2"6%NZ*H/T<\$6Y=E#&9( ?LUH4OIP(XJ9&4:DJ-!%X50)6' MKWQH*];?!_S^6W'33N9:1^7I9FPJTI1!>N0SJ=43)F-#6-3A\+]JZV5I#]99 MHY@J2K[.C]Y0/F^;^'KOB:]6F_AZ>85Z>!S+ZHXAP;ZB8Q"=9$5S M%JHH18F7!#T"SR8A#:(CXVO(6;3CI.C,5&EC14636@I5;Y$"IWQL0K;#;1,P M)4CP(^.0[N=P+@>1RL?%^-%*[9$0I7["Q5A2H6R1>T'P'7$N6^1B4>%4V7]' M-NQ Z%2SF#<8JVN<#Z'__YZ% ],;!)[GL2%S+-L/'-/U7&O@]-T _N#L'\,P MGS7697$,(-+ 4@#K'\Y]+CNA [#AATC]^[#PYV?: 3EO3X3EA[*CV:Z-3Z+B MA.I-A7=;&JT"[U7$ MN"1CFJ:C)&%"^K#E+1J:9ODS9.W5!$1;H[WZUU]:C? M%QL ]:1\>BBP/BY52MZE[RN6&9EQO(R MB#7T64;48+CH8Y#'$:JRJI.N:(<@==F.C+*OGCT5W]>.%FNK-R'>QC)"^)HV M6;L;9-6LE>W?M6\@M0O-^RK>I MT;CNHMK]'^3*<[U,=A 3P&JC:YCGI7D%2]#"7.I%0,..FE[6@2[T52!VEO!5 M!716:N,J0=9*5P$ED(F8B[8O'3"E,,%&&6!2V2A<.T6&*:%S1X2KRKZS2ME' MGD>EH^2%8G)( ,6B<$7U)K+X2M$MH5+/ET1^KM4A)HG];T6EPCE7Z=1? M45,(2 D!#\T)T,SHP(KVB6*A*HH_BYBGFJN@(%&S#J]O%HX]NU\6<7F4"3)[ M((+%DP?"+9 BI7W_*[GBU%$U5*OPA.9 )XPS:PN$ZW=66[U4.X"ICR!W$;R5 MY!5L28ZNI,Z3]!&BIW^S6'7$UR5='9R_5L'-@_./=*6K6QU0@11>T#X_8/[7 M]#%Z%*TEJEL"QC(F.W2.-6 ,E)GD.<0FF8R<",;^R]Q6$JX MFXHD&&P]+[/VR)5&,3_BGY4 -"H??B@3G HR@"6Y*GJC/%V8-I)E1*LD&^\*DUI(2A/>>F/H[M$IIA, E^%=BC0YVD2"9V-YD3Y:$$W/(?A M2&2F290J+?\?V<[#IV6K?#O!*.J<03KA*DF+7G6KLV*K%3<:N>/%G[+/#C7, M5;'3T@M7^+AG.-^-(J85Q]^;"?+3HV^J(<]9$(2@\F@OI&_^S=%9,;6!NK+0 M_:7,6;G_;>7^NE>KT.4.0,?\D&,XW>BSKF&_X.+=ANV+?_6TUVHF![%!7F"$ MB./ HL1BWIXAI&3"#MVZ(QRIK4[9Y6ZS+=QP6GDC+;Y0CL^(A1J/>]80'=9I M!\VF%Y&S2.<3)X5%6U0OR#UZU3U6HWU* [I1AN)R$JXPE]'+DZ2RQ81,1EV( MW-V%\*8L/="YV1JW&*MMM.FNHDWVYFC3382]\VQ?8E2&^2#@7\^>WA]\N-". MCRG0:QBOM+.+?QU]T(Y/WYY].#FX.#X[O;7Z91H-5[^,GO8.5-1(S>=$KT&S M.2]JX^]!1]"..YK:0BD^SBNE*$)G'W0P7%8,:1 ]VV2A!>6,%Z=.9OO6>U=U M?9&B7TQSB0B6LQ*6M]?<3:OIJ'/0TZHY$]K'& Q<-)]1>3X7O10#ZKLZ7PC? MF>Q?#)3T4?A-U"#@9J/+V@95$_)]3-0\B'97*]'7BJL^4&GOXZ.!<(F4A@K" M;OGWUS.VDP !0AN( _[2!R1V['&.Q_;,.39S%N/T[$"]@8=%1>6:R^>VP#:RPZCBP2N[!?"B\R3=V=QRXK\$_9GW!?STLGN0D0VMWB+?%S*7Z M5O6MZMN#ZMOCV!1A!X,PIRR$E1WIAD@.7XC&!O[I75*_9[ 6S*&%#*.L9TG0 MKZRT\W6,,M.^S&1"C$@F1LJBM3P[/*:]"1>V24;';F4KY.M4H[X!C#.7;-C. MIONQ8WYVW(Y&?J1DZ.9Z&:F\#64%3PD=D9S9]<./K? I9^"4P$]+IQ_RYJ;I6A'QYMGJT_ MB8NXYT0@@C!O+@ ?.&"([TP&,\TG;QB!#VP^&'P?,.HQ@C_X;'.\?J5:%<^P M,GH?%%&0OH.EBAAE[>'%<[K3B=;R(-(.\GPA("TQ1Y#,H\64;K0\>)$C-3/" MN;; (81 7(X@"\Y2)L@KBQSD--$NTF6(=(W(9D9HV18I](#3?N2QZA@5"=0N*N/\-0';Q2]D,Q;?&[JO';*:\@^[HVF(XQ_VXYN6Y=31&9 M#0-T-N R>(?M\>0+3T.*>Y$29F!9):IP*X0JN4T3H0P.A*N8&\3XU@+F-71J_J2SQ-B>:==]GFVX MAH#E3&O3@8F*&)QWA3A ZG^&[('DA>$]EQCTD5=FY&%DOB7FWI#6[FZLBTJ% M,&;D*8$.&BYNOHX=5S,J>'^5:P<@7QJ2_O>1Q$X0<<',2^?L$5BIIPWHDQ=G M0&1'_4/[-W%IXP2'J8,F!?*9F;A[ CR<0.KJ:XT2+7@6/!9]!%HPG2@=QB7G MC;PB+Y)IVF&92+45]"V=@6G-K@.D;)S9VNXOOR:):"P4\49:Q!O55(@WK(;< MQ!NT>WI%VN5CTO//)],76M+LVP(;1Y:06J4O_MO0Z3JR"X 5R$G!.LG)P\[G ML-O\F;F*)7PT<%R6JO;*4]7\C?IFB1+*UX].>9+0&PV]7K'>DX-.;ZRGGWML MZ4:YDGJI=4NOUI(5NZ.,YGWF%6Z&'<15_@:O')ER/"?KX;[=&S$:X7-<>[,@ M*+9E,)?>O#XF2K+,],1')&$S\Y.@_F'K7H4RI'&Q N.H,&.8%)+''[OI=OA M!^[EUYC/(VTTOD'Q\?2S-/G9*SMA,-A9)ZP;I]])K(_)G8UOF3^@-AS; ^K# M=U^+L-PL69;Q9K_!;_1B8W%)RXO&2(MX-A8I#<7\2EC*)8A!WF!T.SQ5@=X' MW64( Q3O3ET_N$66 9!8V=1J>0Z,\;#!:# M@'V($DZD.)AA*U8VHX.JWV!&5-4=CSP8?W1V"!*ZF"20Y W\K*UJ8,OK@W-+ MJZ*5T/&,Y]@H\D?']):M.K@PY$V!L%+%)M=2B4TNFW+')LLJ"MAI_;QO/CT_ M7G=V%?*:'7JT(RM8!GFH?QMX=[B"#=6[YHX1Z-=&PRJ?\1M!_6L,10T)I/U1 M(.V1Z033*$-Q7UI-U]8FU*8L 03"D+OVD+@#)@-LLZ1"=@$78YMZ]"XL,$RZ M3!>^I# %]3#HRN&.S!AZEQ=97M,/LUY*GM][W'6YH==*M??$7==TPTH_0KJL MU^K)))^VBKN&8JWWQUTW\N=%M^X[3\W;V^LK[>*Y=7O5NO^IM1\?KIXOGSIG M6NO^,L8;3GF!5TUSU29O1U_,S@]RYVI7>U99M.CKY&M,@&&JS&X';NIMF(WD M'0=J#!S%Z[Z8"!V;+ZWF/S7_'O&OP *^@YY^E-# MX!A>]G"F^PLX,>(FP_#<;^5DF)0@+V8'0^KMZHW[H?QG=]2?T5]#_\7]\3]0 M2P,$% @ ?7ND5DG$ZM(V%P +A4! ! !I8G M,C R,S S,S$N>'-D M[5U;<^.XL7[?7X'CEYU4'8UO<[-K/2G9EF=T8EN.9>\D3UL0"4DX0Y%:D+2M M_/HT )(B!9+@3383:FMK+(E =P-?X];=:/[VUY>%A9X(KWI>]OW[]Y9??_J?7^\?Y_36Z= Q_06P/73""/6*B9^K-T0^3 MN#_1E#D+],-A/^D3[O6^BDH7SG+%Z&SNH:.#H^/-I^STZ//AQZ,/4]+[?#+Y MV/MP^.E3#^.3+SUR=#+Y,,78_&),_W=V>FQ\/C'P]$/O^,O!)RAV2'K8^,++ M$CR='GW^_/'P@R#ZXIZZQIPL,(*&V>[IBWNV-_>\Y>G^_O/S\_OGX_<.F^T? M'1P<[O_CYGHLBNX%92UJ_TR4?IDP*RQ_O,\?3[!+PN)TLHQ*4]OUL&41<^)3 MBW?>DCFF;WCN>\-9[/.F'QP?'X8U.5V:PTE0LPT2+V]Z485XX8_[\F%8U/18 MSULMB9M.'A[O\\=P6'O"(3"GL?HQ/?(E<,6EV2*?0N8^?:?/K;HE!(3 M=,(B'/5$@=AC#[,9\6[Q@KA+;)"RW?+U%X0X\*T7UFM"AO7X M*R=#6*^F#*E#)TL7=#7%=[>@&.GCO6 GA!5XZS^68>@2X_W,>=HW"2VB^)O% M^8<45<>V[7BB/O\E^&VYI/;4D3_ 3QRPTQ"U>S(-9T%E?DX9&N+/*68&)&Y_;!8$Y(].S/9CA>^$D]8>%)^]!D+"$0C^I>?SQ/E0AUO6Z M(6%=#O[9G@O];Q'9-2UN]Y*1LNV&*BZL%@+F__3F&]@JVWRH8OC6?T7K33(M MVWJH0FU:H?&\]@,\1]0\V[MP8%-ZAV<@'/_]\7Y8<%,A9%C7#EF$3-;2?3T0 M_QVBWGI3VT.B)N)5?]O?K+!!RG>).;*_BL^;&A]4#HKD5-S0E<+UDKV<6BWX M,>S6O,X>W5X.;L>#2_@P'ET/+_L/@\OS_G7_]F(P_CX8/(P?;_N/ET/XM1H< M)>AK 3L"E,;0TR1$+"2.XM110!Y)^NA=Q.$O.V#3.OX.,VCGG'@4)-\VRDEF M6LB/ZT*.WB4X=EX%Q@_P[\W@]F$\NAK=#>[[#T-XVK^%0C=W]X/O4&'X^V!X M"U\'6QCZU=AKU>1#,359C*[3FCT E) 21%VDT=-Z+8TMS0@BU:G/KZ" M3NUFIVQ7Y*(^A5EL^5=&6.,=?D>2YFW)* MH_,*DTQA[EI%^;P-1=G-(]G07?3'WZ^N1S^V<9+1\-$JPY(5I@@=4ZTRG#2G#!V>#T9LAFWZ+R%%): 3!'2@'1YP(Q)U# M/!';)_?$<&:2:"6 4LAH43G:1"4@@F)4.H3$!2,F]:X=UZTX2!($M+U_O-G[ MLCJ2]3O4[T/[B;@>7V==;)L7V)T'?P9_^O0)6_Q!)3P*$=;B]&$3IQA9! 01 MI[C^$*/=(0R_.8[Y3"T+NF$(C;!G=&)5'$49I+0X?=S$*20DL(F1ZA LUXX] M>R \6&CB50(C04 +P:=-"'CU'J^/.($N=3S!55>1H*JVLS\KG2TJ=JB3KS!E MOV/+)S?065(IV2%H(OFQ!P.D@00G%*'<)D:$\=MA!"./:8S*ICDDY) MB\F)NEQ'=!#\'U+J$":7A,&6Q*.P;8&E\#LQ9]#A?0-^H%[5 Z&.I@ZG(^6L M'J,H5NR )EH3[1!D8\\Q?LX=RR3,Y3M*;U7MV*Z2T0*CGM5C1'Y%DDR'H!@L MEI:S(N2&;1<;G'(U!#*):>%0SM\!*21HH3BQ#H%SX2P6=&W; M<(3]E-B5#;QY]+00*4?OI&8G3ZQ!*Y[Y+;>*ZT!\3:N/JPR>5D!87Y3P> MDD%Q.AW"0\[D=X1Q!853Q1RS:I'-J82T>"A']F!E 3I($D*"4H<0&?L3E_SI M0P,&3Y6/B@H1+1+*R7U- DD:7<(@S[FW/;=A8??AD7*FU[@/T;OP4Y><[;F= M_8 K&^2+T-5!>*P<][402LI= E#UX=9 +9.8%BK% )#B%NXB/''W;@U@4LAH M(5&, 0E?<1?!2/<2UH EEZ 6(,5FD.5\[")6<2=B#812R&AQ48P'28]D)]$0 M;L(Z.,0):!%0; .R>A=[/M7+6 .(/'I:7!3;0(;OLHM I;H>:P"51T\+5(K1 M(-6AV46@UC[#-"=D#<0*$=9"IU@9UF0S7)Q=!%%U4M8YK&81TX*E&AE2_)Y= MQ&?3=UD#G0Q2.FP^*-8#Q1G:16"R?&JUK :Y)+5 I=@.LIQU740LQ\M6QZ*@ MI:K%334PY'GPN@A=F@>N!F8YY+1@*<:&5+=>%T&*W_?JFZ8@BZW8AOF2>)A: MU2 K3%P+H&*5B).&KVOJB*19C_?@5P9Y#\. M7P'F/PYW0+\&T&-_L-D-;#-&\Q^0E?9YIW$M-FQ M7D, K8(H-K9T!0E$0,XT+."BA!1HLD(@!Y*"B/U8(,I.BY(@]EV7B%WP-<43 M:@F;2G $\9Q''FVSM A\X=M9!@<1L6'V7<]9$'9)EHX+1\DMZ5>3HFDU3S$: M:C5/BB=T*R9@='[S'!23$45"RL-!("8*Y=RII<3>F!/3MX@SO7!X F9SX'IT MP?MS@)D-"N0Z=AKR#6M@32FTRJ:8.3.4+9"#:QN71*A.) L*A>$V[715VRE5 M$LY;XCW:)F&C)\+.J67QWMN6ZN3QTBJ(8EK5*PCP0X(A>L=9_@6%3#NI!?&8 MD3H(I]'1H?=1,;YN!)]T$(\BF07JX%2&OA8_Q29;.(%!)[%-#P2*MG$7 ,6, M4/L",[;B7L$%#UUTIF&U.K WQ%JK$8JU-S-:*;%%E/P1M5$H 9(B\(<1B9W. M1,!%J^_)1=Y(8VB3+Q. M3"(4%VFG75%?-FX'KZR/CI$42(JQFS+BL;)KV/BW.FJAIZH%6Y,B: -B&:.[PT]TR&AZ M@SV?";O<:!HOT32F>DY:G-7L1)DXCZ9HS8Y_XT51+$:[B_B+(.GU&!O[RZ5\ M]Q^VSK'%W^4VGA/BQ1;*P%+[X,BZM72B,>Y:/5%LAT%X>'(>B N @F0$"&Q M50B-U0].%&7>6=T1_W(S:P.:H-+2XJJ8_")Y@:&52U8+G6+:BZ"+TY5V/4&Y MDP"FWI-9KV[18Q<^4QO6%@HGF11O;1VTFY9!JQJ*C2_K?D]RI5V7FT.JA8$XOI8&A?#J8U85^.I-S- M>%4O1-9S<.80U.J!8C',O!+90:SRKRZ.EL0>PJ80FNB-G_$RC*X)QDL=3!MA MK,5>,2#J[U3"00:8HY [XNRCL*)HIMCIRB9DMS!QBH?;TPJ%A19_Q;!8!/^( MS0YE!8)P6-S#:LA'QM9G @U#K094N%7=6P]^SE7. %T>^.HUZ?#(T!]=#.M@ M7XRR%N1BM[%[L0,&)[_#4O1+XZ$!)5GHT/VL9H-+1W<7$I W8K$[OX09SB2V M66LS7I"T%M5"F>/YF.7FR(A\)]'<3(30^(@MQ4"+K#X9_6ZPYL$;F4M^..PG M#(8+9P$G$E=(^3?;>;8O+$P7W"PR/+^]OX>FLZ=Z5IMF)= JB&(=3%.0F$TF MD.)7%)<#"4&0E$0&_X L*!1FITDT[C(8VM#5W!%^3PP"^]^)16#0R#OS22&. M6JU0+'J:^4-R[0FV2/(5.A%QWJE%'"2155YT5GR^';SPCT16T<#%I4DF:DD6K0XJ!,DV'XM+HYYW$-7PI5+CL=5'-8N_SJN>%5,AH MP4UYO^3Z[6"=!",K9^#ZX)!5HMYE];I<=5!_4:R4.6O*R'.PV).F,+ MJ;PJ,-+J09FDECLS6+%TE^MAVC<,YA/S&RR-C.,3V1CJ&\&:Y*_5DI(I-),3 M1B $"J1(&#TZ;/TJ!."V#&&-,=>JCF(]+:,Z._M8*;UI?,VIRDNK%8JE5*<5 MNY4G-UMOX\B79J*%7#&#IF?VW4&M@3JR!X4/^\:?/G5I[5-'969:Z(N]JS5I M?(J*Q#GNE& 3ERA10.PZA SN%OW&B)F,1X=G_H*86].3FO)H54FQ8190I74R MA>1%C2 (/A1,B88/9-LI7="K83^Z_& A^VR=P4)V9M-Z58*E5G44TV66ZD1, MY>DET(XUWU!Q=GHAN^R..5=\F8;CG&]Y -5H&5QY:EP?"K#2ZH%BY^.:S-!,=YB>*N3/C[>2[[6.U C$S:&FA M4R,O-U]G_M^.S6_[+^XI7BXIJ"/_17ZW;4?*+GZ"7XC,(B*0HY/E'RGFFS[/ M>662A7P[-:\LEK*KT*HC0@"N?,M:BR:94/C5 M!;WPJ.=SGM^8XR_/]F1!ZI'%'O($#?D+C'?0&+8:PA-.>V\_JQ.O? ^$O '< M%O[B#J^$A4*TX=:Q+SA_(72P*M@SF:3@!_7F0PXUMD;LGBPPM<-G//>/.[0' M+P:L.*/IR";_))A!KR4X7> EA1$E:H14-=$-XYT6XAW2\WY#%A+"LUI>AT'AC38_U M^"?WU'2XONH;S-/Q]%,RPRLYOV^)ESG3E2/2SKFL/[%D>NO^C!'Q*!_G[/(M M0+5%$YYVNFBGK&\\#_&;,G>8FK SD,EQ>1RDY9O\A!]+>#":"OGC)J.@C[-Z MNP'";]PU,D\#$?*-)A:=R0,G-,-G," S)REMO3+MVIB8##$3;&EF^D'H;,Z# MT6 BQ3-R&:1WXO=91]-H6,2;I]6"6B3?&'^Q@PA?/#.49RO!+7^^UE9KP;3= M/SHX.HZ;]#5+4%;Q-C3%_'^?!RN*3-]WS(%M'FR(>+ TZ%OF&-74VF*[EI*- MOF$IAK?[*)YS:/)H\"G%D0$VM)#VTPS[R37MGH_)T?31E54S.^D5)6CG5HTO M\-<.M@ONU#*+MV"8C.G+C6-[<\U(5XJU0?0H9W!XG NBXV):)DZ[#^3%.[?@ M\).IT55(;;$'O)!+@?-BR>U7BW=5C"R9 S.N/>-;9SX6'JH#LA1_^%9MHPTDHV8^(UZ4*:4ZN;>$7& M[?"8.TI]XV.N94];MYWH-;E-[AOB?.S>X57@Q@F.DW(&79=_E4U["6FJ0[-5 MD\:MSR=I_H8)([3"1*$#F5V87ZE$2TLTB<+ GA%69*Y0G'V15X];(@EW_(YA M8\1?GGA-%S3[?%>%5#N'X'I?'UQS4"Y9E#X@%"74EN,!C.8-TW7D('IPS@DW MQ?:GL'AP$_65X[.:C=_6Z>6:\&F+F::@L%H^7PP7L() MB/"LPMRA'WL#%FTH/%R;P';/D;F?"OZ1&1XV+5XH:1\<07/O,F7*PN[;A3: M HO6F'B>)'?.;T?Q&]>9XZ!Q/C6&QVN<*B(EF#-"FE&G I1:H% _J&TZS^<6 M_-&8/=-*MJ !8P\Z7'I)15QD(H.BUM]=M/:;&P37SK_!"S%\SV$K<1PLY&'= MK-+.#6K\#7?!J^A6!;=C^IHMW7W!CIF*\R:V;LDS?PD'B&?HUVA]O18,S?*Q M9[F!@Y7)M2B^+R4*[=$&2?/1UM=K!=I)(4%%H5L,KWHS\RBTH,%"Y8H'"&06 M;T%3-D)0U!"NAF);JA!^XZ5W4RF+A)WFUVD!WO$,+1NQ?+IU1UNQ!E:X/F/\'0/B6+E: M%PFB1<4("VW2L'L7*62X]4*$DL*A]'=82T!51]-8Y'>VA?/U)-C2[&82@RY MA (SP1)3'H\+4[-C$HT1,*MT"[1&+*_E)S1MM18T[7+?^F?P(.K*SHRS+$7EC MQYJP'Z1=+DGW1A=T*-6DV@[O4HJC4'H)"W9"X?KM:6X19X):K@4#=SQWG@F[ M=!SFCN?$>I+14,?A%$_Q9I&H+FAC+4M7?R(>UOJ*L-8^6I?+&9[6U9SH: M3=QA$;JE81,6W.2-73DI[?2N3KH=(S?7Y)UK@"M2LSVVMJ+K*ASRZB_.@L@; M+\ZQZ,5"D<^;1=\Z<#9K%["^/1C<7*T2-E>+<#O]); A%%MBS0%GHU0+UJ;- M(.?\>-S_A!"ZN"6E8DA1&1(M[85XP$BA4/&<"BU04V$:. _2Q-P%:6(*6!.R MJK2@28%(Q6.!SF*\JQF M'YDJDFMK)"7/@!&[I55LIZVI].9[[@+G^]PS81D*K3D;AF^]A5-;_FA-*=B" M<9KT5&AV)*EE6]"([P1;/&M,8$P)7K&4.9ED%6]I7.D5]PL[<'0?DR=BBV]1 MZH0QL:G#A"_FTBC%WGX*2'KG\L%P1?@% ;AD68 #Z6(/_F>S!MZ$)9U8(MT$5E!86%LYFE M6$^HA0%LR.ZC6W)6E]6?I67JJRLO_S'E[/1DT\XG0TG MX[_^PG]EOSS!<9KDX?C#7W_Y_?U+<+_\Q]_^]*>__"^ _WSV]M63%Y-T<8;C M^9/G4PQSS$\^#^G?Q:6:Z$*@O51@^+&0 C> 0H?50DANU3^SX<_RV1]"D6!=,S0VSA" M2*Z^%T,IPEK-U>)#1\/QO_Y#8/XU0?,!O^>;;XY:M)"O/%F-^+Z\FM[Z@_P>IM4'\%7(#DOWZ9 MY5_^]J7#]R@6LTPAPOAJ.J\?/I)%^D^>S7-#E[ M6M_]]/GIZQ?'K]\=OZ!OWIV^.GEQ]/[XQ;.C5T>OGQ^_^\?Q\?MWO[\^^OW% M"?V6I%L\;7YYCG_]938\.Q_AZGC$'&T^.W@8@8? M0C@?O!J&.!P-YT.<'8WSN_DD_>OC9)1I*A[_U\5P?CE@,0BMT0+G08 R64., M/H$JD16C0I#FQ@!7X6R0%_-)4P4L]4P2 M[4N$-2$'WHL3.=/Y^< MG0WG-7BHTCV?C.=DERG86 "R6ON0!*!.$I2(1$(E#3B6F+ RI\QL8P[< 6<; M3LB?@1.M5-*,(YOL$W,FYU2@6*U *1/!911@)$]%:Y59*@=V$ ^7ZPT!P^D4 MEPK\9QA=X "9RS%$23%M1%!,"G"!5$B!K^5%>A$*:RS8!AA]0Y%#DKK$ "+4="8*"<$H!]*$@MXG2G!T!^9N'4.?_%YCO>\UW,V4 M?I3SL,H>1F_",)^,GX?S(>4D:^ &42SX2<\&:?)&;Z:S&:O<7Y:WHSY!87-X_F 7&&D%%*"E8$@ M9.L@!LE!Z\!CRB$C]ZWYL@Z@0=IU3I[^^,LYC3)2BKL8^&]E%,986Q1"LDS3 M,"=-$UX9;.8L+A MIQ!'2%"N17,2(X\1M/(.5!(,?,668S(E2*U+:6T%[L+3IR2L'0>:::#=RDR8 M?:PKG_1/]?"?PFBQ%CI_'J;32XK[E[$=UTD8KSF@C;Q"DQ!TT4 L#3ZR3 /2 M>@ER*V!]RK_:L:2]3AI'1P.E-%-1!^">!%/(/ 2%&0I%:R&&;,F(=1(6[8O_ M]!RGH:[QOZ(L!M]66IR6W\D3UT\?,(II(W,)+$TU4AK9YX!5:5%$PX5@3K>F M^9V ^A<#/4CS-WG=;O";\7DM_'H]&:>KR1L,+XY1NB$%I\EK"R4YFLRQ4=85 M9E)(I?5:TT8@_0N$]M/_WH/=3.\OAV,2]Q7EG?ED/ _C#T/RQ5?0B(M9EQ0H M#(.DR80K\LO@13)02$*#0N8@6Q/@;D3]"X?V8D+#X6]&B;]/)OGS<#0:!.8] M4R*!08K(E18"/'?DOY,MKD1C1?."G-6S^Q?/[*7FG8:THY4!JFLDHK'64[263"4>L MTTQ1O*1DSMES3Z&4Z*Y0L-&2]*O)^,-[G)Z]P/AUZ4.$3*-*N6PRE,M&4W-9 MHR J[PNJ0)(VKX#\'D:?TJT]M?]=[>.>@]XR\+Z>D2L9+U>(LI0\Q<*A,%9J MF&# 29TA:I716&=]\T+8N_#T*?UJS(=F:FB^./TF7-9UT>O((I-+0$M8-*-4 M@%F$P+0$K3&+5+((LOD&W$8D?>8.D66.4 MR ,Y8T_RI:+!2\T >:$H(G@=3&[,B'M!]2EO:TR.M@IINW"W 4R1VK)4*_EC MKK:+(DFR9!%"CF3'K!?&M-ZZO 5*GQ*^QIQH,?CMF/#-JO)WSJP49BF>86 # M%Z"*%>!BIDQ#Y\2*5TJ:UB6F=R/J4_K5FA?M5-')02N2S95(B5L)/E,>)VI! MD?)0;$E*%"-5;KV_<^M!JR8)HSCH-/QH(L M@C,MK-&L-0'N@=33I&DO-K340F<1T-J6&KJ8B@L6*% G60,+0 @U9"M4THYQ MF5W'0=##-C$?(7':BQ"-QK[K&&@-EI->>$4XI"9LRDD+WB8$7S+3B6"EYM7Q M]X+J:=:T'S.::J+;9;'YQ7]W%T+G'?OZ>MOQZ_?OSM]>?KF^.W1^Q-Z]>@UO>FW M-V^/_T%_NN/;Y/N>^^^OZN>F?'46[7"P-']-*'J\,R Z#@FH4:U_"*?#0^>2:HFP NV=$PZ9T:[UXOX]D!Z8W/Y8E&BICG;[ MQ&N%.:?E9O7H(!K+,RJ*Q;2F$%H$A$BQ$S 9D"4GA$^MW<'=B!Z8Y/Y8#&FH MC&8$>8WS->DH9>+.60G9*0JIDXK@/257QFJCO!0NL-9+_M\ V/]+TTB;/C+S1/B5F4;$XO3X@/B^4I^DNBRFBA^SE. M<38?:!5-;2H*LC@!"A,Y=S48C;=*M\X2#F;4VJP N^2"ER)!T MH> ^HP2?1(2(I3A;S]@4<^A5@,N*#/ EX5Y<&6+)685!&M(\=OH'0*S/=5_[LH[:V.]4DW.1;,J\P&56 UUVF[Y:&W!DJA=DM$,C \* ME',4*06DU-:JY%/1PF#KPIA;EX4?+LE;_(3C"URI?!K2_(_A_./SB]F1,VSZ;]]L?EKJJ=Q%*VVSPD*@8SD%/B@0G!(Z:]-+A=7CYKZUI50=ZP( M/JX%;,6!FUS??<3;!IVW=)BLG95>CB:?_X'Y _X]#,?UEXL#P6\QC<)L-BS# MM#H)7,?"D?[>^DNN7I+R< MT)0YOYBFCV&&IV6]<7QR7O.4')A< B@>:__GP"!9(9SA.FO>VJ_>C^J!SK;S MM?PNR/1=0XRVNFK7K^4*UVGY#:FF%(K] MP7:I<%T.+&6;6M>J/1!BK_*4 [.K"RUV0+5:87LRFUW4NNL%QH&)DM7:%$!1 M5[U8I/@B4W":DW-.Z, "[XY6W\'I50'1P2FTGW8Z.1WQ9CHD6<_K#2E+E&0L M12 PT229$PDJ6I>0W FH5Q5%!Z),.PVU;#^6$/-B7?[U M9(ZK]AD#1#3%<0N&I00JR]I2)W'(Q8N$42G#.V@:MA%+GP[1',JXM%!+PXN- MSJ^-W?+0X-K)CT&D$"RD% @(\GI6T(&/C(Q=B2R4&)GCLOF2_1V 'GC4YJ>P M+.TTU$7T,JRRCS.)F# 12S,46^]:"H'8ZV0$QKSU.GJ;2H=1RPK&-@2Q/QE! M]M5&)[;D-\S#B[-*TX6-&U@O1!0D("LH*6 18V;G69D^).I:P@&47R,N? 2>G!*243@<806A?+WX]J M&_+XGXP\C775LI9^D_C756EKXFM65*K'EKFH>Y@<#81:I,:5UUQ&IYUI75.X M/;H&Y:KUVCM\@N?6.FM7J72U!W4Z?C&M8[TY /\(R9VOVM--0N^.P'\,4GQ&3<]WFQ/%LV9S: M,"6S2A9XK%G)E4>- M)1KNBP8A'9G&>IU,$/0E92=R1IO=<9?/:E>(X.>>N: MT;OP;+5,R'XN]C33SP$"[:_7A@^TM#H; N4]\Z!T;3G-B@6)026%CDG=NG1@ M&UQ;,>CG7VG>4V$MC4\9SI>M0[R)*#R'A/5.5:4T^)08A%2XJR*J9-N;FJNG M;T6+0YU .9QAV67L.\VWKL^(#Y3D(0:&P$(D7TB^#US6H3:6<3J&HESS%B!W M MJ*(3_9ZG$[#36\;^+V6S"3C)A9O2"P>%TO>4T0*7(",FHE1.\4V;?&E-GS M%E-^J.[Q!R),*^UT:&.^W6-=[Y>-+)-Z44"VM1F@)E<8R"R"+=D87Z_($*T= MT /@;46GGVR5N2OMM3NB3H-0_Z\E,)_""!<1U6P^':9ZXH1>H$GP[2_6WOD& MI\-)_E[&JV8,QU_2QS#^@&_#'(]+P30?I-KW+N<(QA1RT]S4;3M50)>B2HFL M8//&88>5L*-RH+I*.+O!RUQX3A3>@$SU*"\2+[WA 3QR%YA01O@#E0-M0->K M(_C]Y?B&4_U=J+_K:K5-Q7HQ*A&Q!&"NFC-?.VZ8X$ [%:T3SB?>>JKO>ECW MD8_K__#TW%?]CU%,R4.@4-\8T$;3],FU<3)F#L(+P9GW*%SK6&G78LK'K?/Y M\>FYK_J[INNYB:;T* M^P!X?0IS.F+77:?_6BJO^:F,]Y.C1$AJX\8Z LMSK*+V<$Z4OB,E\Z!82;7M MC $GL.@@74#9NA/F77A^A+K?Y@1JI9_N&',[HW-V+',9( 9-^)Q9"$[C0.3& M>K^RPZX."=Z/[D?H=- YF]KHKCMN/;N8#<>U2>5LT91K$4$M7\F#DD3F/F5@ MR51[&8C]Q2-@R2(%6404K5/ZA^#[$2J+.^=7*_UU<0IQW3W+G(UPT.5IV]YV]P'D8 MCF;?BK!5=[WV&)KWWNMXF!IUYOM:6C%;=6RX?NYI9>F':3B;49!O18E6$?]4 M("9&8KV+ K+Q!NL!BQ#:'XS?!MFNAI48M6@E/#M97AN;3S<._2 GJ46])<:E M0-;>,/JN-L:AF2E]$8DS'^_AZI:/ZE.:V0$K5K:PBX'?V\U64-]-QM/Q=[(/ M2F0Q.;+^P9*P*EH#,5H!Q:#UR@MOG=^"#ML\JT_+UQWSH?G0]\,94E3Q.YGH MZ>DGG#X;+BZ-Z,CEW?6D@SJVK47>TWVMK,C1!B?Z'0 "-;!,%A:E ZGXU4T= ML3@+4ABOIC3L;'7Q(E(J>+D.$64YE8SL(4"DD3UMZ0 MP8$O6@/GRF8;I;'=S!*'51IAW.']5Z. MSX2;DINOQVUG[^JH3R\I[UGL! ['S\-T>EESW;-:WSTIJS_;W3LV>G!S9]G% M@#1*_5;/&'#+O7$L@JM?5*BKIR)1[&9=4#YK&5GK2VM6S]Z[ \S5YRQNEQD( MC%%$7X!9HTD0+D@&&X$)7THL,KO4^AS0-P#ZE,+MI-WOVK?L/+SM>OQ<03@Y M.P]U_?4HI8NSBT6S[.6OZHK:XGA O6@M"!4A*U6/AGC*&#T!)6?,T$E!_[=> MH]@:7*_V )M2HZU>'MU376--_=;^\$XE!=K.%B-?-K+ M(66D^&KX"?/-=A\U6I,,8PXA Y/T1>6($ +Q,=6E)HW21-O:0=R-J$'+]=L^ M?6FST:B0BJ9LI-3J# H.P2NFP9:DLI CO5M.S1 M?QNJ6Z8K91K",BUJGU7)*:%E!H(*Y/M3C$9F;IAK?8O=PU'VRL$^#JM:Z.]P M_G>]/_A71U)_VMV9WO^9S3WC \5HY.:^::[.)7->>@,>T=<[4"T$+3CH'$-4 M0:$(KL).%022B^7JSM$Q)AG02NDS8H6(G-;U+= MC*1/[FIGO=\T(PT&O9E+6L?R_ I(XL=J64R70[B MU35:[R?+O]W#E31[=GN7T\VP--B16WSZ57/%$#B++"?@:&N1;[00C2XQ),8VA]<4:]T#JE6%KQ8Z6:NBH!>PUK.L, M0#OGJY12\-IIH 1PR6I@+JO:.4GRYGW-[D;4A^/1A[(;NRBA6Z.Q0I1=*4SY M!+E6-*F<*>64&0$#99@I1>=*ZW,D=^%YX.&D'X,4S11PZ,Q\\751R+1OGOW] M)W64-=\#N=7R[.HI \&R-)3;@*:8EH)9E6O77 O)-RT6=?Z&4K\L(HC:39'LG>'=A1+;"](L[""9CW>DD.LSA:_N,"!Y%;H4@](B1@I MC^ 1O#4*E*#LDH)12CZ;[PAOB6WOS<(MG_/_,$S??YX,@O>A%NA#$E*"BM[0 MG"@T,DI+':3V6I5'&HHKB/T*9SI@V'<;D!VJL-&"\!T WT^>X9LPS$>%3&Z% M^')R,1T$2LR\0 W!!C*XLA;1&BO!:IDC)?->>7V/(=OMR?T*>#IDSP$4TZZB M89N!>(MG8;@X4E1>DA\)HXIY4*Q@]009!$7!@,)D:S6V@L*2XUQSQQ_'7FU$ MVZ^@JB^F:W_%'I:(-"BO*4)Y_QE'G_"WR7C^<3;0V6JN*#"53!-:[S0XGC3$ M*-$4BX6KUF7#NV+MPYI@_TBXKU(/3L&%MRU%L_ MI$'O8LY2MB[2?S#(/EVFVBO2[:;&1V';(C[@)C 3O0)4=?4>C8=HN 6>F0TA MF51DZRWSAV+LT]VKO>/:@Y78[;[9 %/AR196M_"JW!C!V:Q!JJ#)X.;DFZ?> M&X%TNBL8>$F&!(3B4P"E"H77R1E@/O <6?:L^2VS^^X*'O! T9ZL>-#VX$,T M<; R$^E+XHSBC"PU_@'*3 [,D!WUT2U)UCT$ M.0;*B:("&Y&HJZ6"('2$@H;9Z*70_B"E!0T7)^_\_%O2PNB+R:KV0LX6%!.U MPYDPY,DD>;7%^7O\BL%/2Y]DOCA$[6 M]C0J@"@V&YFT%.X@GGK'L/91;?)!2+6KL@Y&I>]6$4+*:(VUH)/)]1;.1$,A M;=V]Y(5+ACP=U&+MN"1TJ'7)1Z767LH[J+5:KADPJ8T-DG)%;A,HKAC$6"BE MTUD*I856S3OO;PVN3^N,CVZO'JZN)CMS&Z%MWOBQD3/A*HA8,H M")D*D7E]8P5[XX[<]D_LTY)@)_SH4 &'-36?)P/B*V4^)'42]6*]["EJDT8! M(^E9;;U!MO Q#,UVY0"'6NU[?#/S0%5U?5IB4 NP$5&!$?5Z$C),BZ=4JP_^&A0^66!Z3)+OHX M7/GGRS"<_C.,+O W GTQ770L6&MCH517JU\=J!*]+8A@O*BM2;P%;SR"9YQEJ92/N?6R M[MV(]K5]+W Z_$2*_?3-@2_'9$A*%T#T"E1AA9*@P$&A3X)K[5EN?91V(Y ^ M.<2&S+AI\/970C-?N+H;[/GD+-(BZ3LG)0,4.K$0;7"N=?IZ*YA]I;RZ7OK&I=(;I8[>)THY@4M.V::LIV4H M5 )I8^:9T5#<+++>6^JMP?7)#K?ASFDV6KQ[BJC]-4A3N6HJJFF$B_.G MG&$.,21(+)*'-((\)$L>DJ$I'X5%[O(]P[K/\_76M7K.%=WK/PQG']\ M?C&;3\YP>HVETIS^R^_#EX$114GI Q193UDF32)CU+70T10=!'.^]>;Z#C#[ MX)D.QJR;]JEKM39S7XL+I1;7OM1;@=[A]-,PX<9QNAX8>M\W)\"-2(%&ATQO MT@Q4$ Z"X@)*%L89KLGT\M;AT=ZH>]&W^]'H>6"M'\[A'I,7G5PB/L,QTHA^ MO?#HC\GT7SBMN5<]J;YXZ/\=3SZ/GX_"\*RN8IT\>_WV+$0RF)[7#I[<"0A2!F J\A I+3>^]6[10S'N M:Z.W>-Y >NF5D!1,>W(9BT*N(,B#!.\-Y4#1I.974&T!JP\QP$&8==/ ME99 M,W]_%[ UV5UTUN7(@>=4FZR288^R]NGFRB:#S MWR%G5SXKZWC!J1\4=SBT3 MZK/A?)% DB^Y7O5,P_5^XDG.7W-G0 M-'+(5X^^?N9&8D>;./>.0D 6:]=96QM(R@BD@V)=LIA8\W7A+7#MO1"^^1D# MGVG&*B;!1U%7KH*'X&(&7C+3W)F<^('$[9.#;J;K%;FQED%8269>!$#%' ^L%(^M+X2\'4V?'.;!&;*C4GKF&-?L?<+AIQ!' M6";396K6L5?#8>EF%:VI:Z*?-RI8[%!>8O M+T:CR\4?8WXS&0W3Y4!+S1/-=DJ 0CVACP@>G04F/1DG](RFRR7F,#=BO0=9K[+$:EG?SR7F]"/C5D*S)('E1+,8 *=:V(+QV MR@XA4LR0F4E>Z>3M;F2[Y\E]K.WTE=ZI4NVME;>-08EU+5 HH M%]+!A<@=;]WT^#Y,?7*FG7'I9@+25%%-7.4[I#D_/8VCX8?EA#ZIHH\QU1_J MGO3:?#Z]GN2#0(/ :NO*I%2A02#;'S B_:B]=D4EJ;9I++K;T_OD,CNGSH&4 MU!/7>3R;#\_JG9#7%6&3LKI&>C%A\KAH$][%3>4R"6ZX!F8\A9]1>/#6 M4FIA)#J7?1+Q '7K+43IH.I_&U@;X:R6VQ;O/)U_Q.G 4T#/I1;@3-TN"K7] M4[TA/M=;?H))$F/K?;YN)>IYU''PV;'%(83'XE.7)V/:R/0UB9T-+#J9*%X# M&F!*4X5@X!5R,(IEJVW(RK5>U#^$7#T/M7[>^;(KMWHY:Q:3_^ORT55-OB[2 M86V/&K-C-=?QM>E/@I"35\%HKYHW\^Y/K9Y\O^K.KE9/DJT=IK2_<9 M#"\VV+HP$"34^ZCKD1@2D,R#1!41;S8/ZM6,N5VR!S:QZJ;<^M]EWC0B6"\G MS\EX'L8?AM=O7HCU_F,8K[0ST(SD2%: C/7""VL31%\*J8)\JO71!-[ZM.9! M!>Q3OZ^??2:U95LO)]35\=JUH[4#IJSTF4DH]3"MDHI\;2H:DG=6F,2TT:TK M%[J5J$^]S7[V*;,GGWHY1]Y,)^C@-]FHKA_Q\3FQZ!3 M+]W-R?@3O7\RO1Q$SEG,4=8[1Y$, +<0= BUY50T4I(LNO5!@TX$V6:6^/]Q M)X_(GF83X3HSHD\WR=-X>+;H,RD->*\*H%?)IB "5ZU+DAZ2(M.*NX$ MO!5I_QVWKOM+FRUKJJY^7[]$>N+?_O3_ 5!+ P04 " !]>Z16O]\K",UV M !Q2 4 % &EB<"TR,#(S,#,S,5]D968N>&UL[+U9__?R/#[^" M^_E__\>__=N__P^ __/TW:N?G@_3Q3D.)C\]&V&88/[I2W_RZ:=_91S_\5,9 M#<]_^M=P]$?_SP#P']-_]&SX^=NH__'3Y"?!A%S^V]%?A>5:J()@?=2@N#$0 M@G> PD=50L@NE?_U\:\R69]"42 =,_1K'"$D5W\70RG"6LW5]$//^H,__EK_ MB&&,/]'A!N/IMW_[^=-D\OFOO_SRY_ MWOK]+W+ZV]Q[_\OT;R]_==Q?]8OTL?R7__/[J_?I$YX'Z _&DS!(5P^@Q^?) MY3^\CD;_,OM+^M5Q_Z_CZ;]_-4QA,F7/G4?X:>UOU.]@\6M0?P1<@.1_^3K. M/__'O_WTTXQR891&PS-\A^6G^9?_>/?R-M+^8/)+[I__,O^=7\+9&2&>?L+D MVV?\V\_C_OGG,US\[-,(RUKTBR-74+K"^9_UTW[9&],G C)*%Q&!?HJ#*N - M,:[Z]/TQ7WX69"SAXFS2$/'MSVZ*=W@>^BT)?.NC&Z"=?A"H M@D*>F;8)78J\M\N#ZAD7ISP;IAO//:OZ=W@I,&G0Y" ]$+_@V62\^$EEJ)@R_N?ZXGXS%.QD_B>#(*:=+C4H; C 2G/%W" M*7J(T6?Z"F5V,N6B1.,SW41P\SQ7TOADM#C9_%6_IRZH!DQ3SDZ&S0@ZXQG! M__FGX2CCZ&\_LS;L?78Q&M$!KT!YQX-3ED ELLAD9."9Y."\*]HD4B/&=\+E M)2"'9_8^W%G)Z'U(>YO??%]^/POC3T\&N?[GQ7]=D!E^1N#&3R;/PFCTC73U M/\/9!?:\R7!JS206E)FM'&UMIA YY3 M$(IF]+XM"V)?67@Y^)-0#$??"%)/YI1%L@9$YI[4H(X0C=%@99&L.++ =&O> M7W_^*?#ZWO2\S5NY+V_?CO!SZ.<77S^3HX6DEMY,/N'HQIE[S).1G8H'IDRH MX1D%7A+.$H0)5@7+G6S,\BU@G8(DM*;^;0%13>W#'EIZ9.$:A"ED!#D2U,C) M.BHA,P*DC1>Y2[OP%)A^?XK>9J_>E[W7!.[U<)"6CFF$RE9SLC^BM73Q1+(_ MI"U@13+T79*"Z<;LW@CH4;L#[4C=P1W_=C3\C*/)M[=G@4 -?E[[^ MM3^HD>M7&,;XKH;QWY1_D+:J)WE2)G2FE"[.+\YJ)N Y?AYAZD]#U?0OGYP/ M1Y/^?T^_[;G(C#:< 1>"@6*9:ZX[N3W5XB6PH1K=NHPL8EBL1TZ^#FXMFGQ.Q[ MT;,#Y^;72D-\U?\3\\O!) P^]LFOGI^8I,Y)A\@2&=5.)#+B2@3ZC 2(B1FO M0R&SKC&W-R,Z)1EH2/L.O)J5Y^Z)8$))$<%'3[ZX5'0[D4U'MU/A@FNC8V[M MZ*X$D:6\_@C*A! M&%^\2:8XF[H3CZ.G.[OAX'HQV8?\70C&F]82<1O&445A+RXM,W]/$G<>!EB<^]L"G319:BD=1*U) M(V8IP'LM 8O4*F2.%)[FKD*G*R MG;( YI@ND?X"L75P:!.>DQ&)9D3OP,9<).7?AF\U([] %1-Y+L84*(AT7%$4 M!#HT<"-21J^\XJW=Q-5(3D8(&A"Z@R#!B_//9\-OB.]P&M>^??9><K^Q9(8NHQ5EDWM)1/6%STEDPQLJ8 MO+$V=^]/G@S?]R3P;9;;EA[CM8!F2(D\83)-5'(*5*!;BB23DR!B9D@HBVA= M*;$:R:F&$/8G>P<>PQI_YAK K(6WJ#5D45$Z(R&0=PLH''-!9)M4:W5P)Z@3 M%9&VS.@F'7G;U;D&CS-"9!P';WTAS6891%8*:))BSZ0VS+>6E3L@G:BDM&1$ M!W['XX?P]1I1:NY4%Q^(D0J0,5)Z"CUX+1*0?\2-5=9&U[I* MX0Y()RHG+1EQ /_CF@07E0V+UD..FB08HX!8F ?MC&%"95E4\U*FM6A.5#H: MD;];MZ3'Z("H(R,9501%9@:A"%)HAAG&DF!CD*4;3FO<;X)RH M++1BP&W9)NVC])DTU'%S#8[QAW#D-D;P=4-QG<.0* _DZP3)>I/:M2Z.6 M,9P,O_AJ2"L62@JB -!.L, MB%"*8\P:WSS><#>JDQ&(Q@SH(![U#B=$'\POPFA -LOX1@]/Z:=^;3YE*5NC M0&"RH#R!\T(F2.@#DER'W#R5=3>JDQ&1Q@SH(!3U881A?#'Z-B7 3'1GVHV5 MZ*>I>335Z_&"["(L$9CAP:O@BXRM8U#KL)R,.#0A=A?5\E=B.8UY$+3/(_Q4 M)[/]B;/8V*OAN$;$WI0/X6M/AVR3XP4$.3^@BE-$ ZM 2AY4(IJ@:>U;[ CQ M9$2F2]9T$)BZ385>D-*[A +((:;39V' R5# 6BGK=RPUMT%OHS@9>=B3P%WD MR^_PM'O:!).5->04,48>MG?@T905*_S3O6?1 M77:G?*A5@#UO,^,R!? AU^K/$"%(M$"O0!;#:<-S.NW+V M(..JJ,-/LU&G?TUGPS'FO_T\&5W@U0^'@PE^G;PXFS[P;S^/\>/YK93/O5+E MZ[I'GW[[/?SG(%/W$(+M6WGW8D8'(:X-4*^ O@[G^'RJE[>"VUL:P]R]#*V" MVO).6C=@^K84=<;Z[46L&=\>@+@IF8H+7$%@==@3]_5])$LO2A0Y.R%X:AUC M?Q!B=F,N^..1LEW8U46\_F(\(0=N-"V )SJ./_4_CW^?6I*]K+54 248'RH9 MC"/[@* Q8[GP2'\76L=N-\ YO,'<*2N70_N-^-#!].:ITW^+ #-H7)J<@LI0 M7#;5A"3'3P0'I21FHI/U?UW4 *V&<]HBTHH/:[7(O_^R1#=R%?[H;LG ^P_T MY^\O7G]X_^;7]Q_>//M___[FU?,7[]Z_^/_^\?+#_VV^=6#;QQUD#<&]SKZT MEZ @>6G2D43IH+RP+I7HDM4\)A;0X^J]!-L^N?FB B:,(.=?0Z@NIRK%@+>Q MKHA).LJL,37O:&R_J.#E(-4 .C['V7]?#FZ'.-X-S\Y^'8Z^A%'N11U-T4Y" M\7V#NV92R0B6 HQ6@;&#D/--7)<7,G4HQ-)]YO0;*X26B4Q:NKZ&X-_T[ ML,-71$J=*T*5.L""%3HE4PF5]8 M=%HF SE7H56.S'_+JL,HLO*2*=3E9"LECBP:NW.@@QJ:USBYRL3WC/#>>)9! M>E?-*<; 1Z6![K$8""9SLK6I?0/ :.Q"GB9/&AC>0P%-;+6*N.^ M6$];G ["P:[J;&[CGJK#3;!MC5D(&T#R4!<-)8182]4#,S8R@0I%ZZJ^>T+] M+N6N*?\ZJ/6YQ^M"U"K8GY"3)Y&,^&@-83^F&XIA%D>H2X?(1W2#0X^C/?L+9F=]A&GZ<\7;F MTJ3L0W320[2,@](J@Z.300Y*LR0*YN87===G.FUA?E 2T4WMYLXW1B\G5W*6FMN+9"T/:.^&]\.=[A>#+JI\F\Q?M) M)="TT69NAES4J+2)JHADD2P/Z6K_7H)(GAB4H)PA2[CV?Q]2Q6T#^KL4PXYX MND(J]TXU;'J1MCJ U2J:HC72 X WX6 S(Q)A'+]#'UM.A]L7\7 M^L/IRN)WF&H%>+_TTV)7\;1%/@:+CD6HU;NU"=80H>A;%HO,D3,61.O2KI;X M3UL$+6,6Y,FCED$[$)02I$IA 7A1*TFG87FUM /1 Q@KL MQ.AU,K,WP3NH^5_"-&\1W 941^,"5@(ZSE" AHQ;7OG5C.J'$XFDBC-DG24D M2 I]+4 /%KSS==9K8HZUOC$.* IW-.X?7!)V(':W W3GO;VLIJ,,YV!M(FL6 MBP277+5F?8K:*.]RAYUAQ^JL;L"<]9U?]Z!L!ZV :THT%EW_SDMC7 &IO0,E M8X&8M0%+YI/WWMHL6\\LVPCH%$2@'<4[>/.7)[7.49&/)TN*"0(&1IYZ)D?/ M<#*>+_ZZ&[KR#O_$0 [@EZ?\=I,!U?^Z_^Y--BFM;EXL6;_/MOS#W'!L,_YU,<9EYCE4* O@-5G]\OQS MZ(^F,>_:*Z<,3U$H#T:@ <6L *_K/'13BO(Y)-M^J,LVP+X[V6K.K4[\O[F, M5X+.ZO.F%PO1Z4T\ZW^9YEE$BW3SAK-P6>10=50 MK\^> Q9C@-"N6E3>I! [1 MU>X1YB3$;#VD4+R-7O#,6]<7MCW!L4H/CB&"K=^"^XM"0Z-V/)KTWE5],05A MM?$8> #F=-T,88@>]'PRM'UQ6DAF[585:_2IUV21OKN2PQL/_ [%Y_X$;VAW M7H*81TBW@;%++! \I.;M=4_H=G+OQT,.Y6GN1?=B"9@UCBU,@X>LU("YF,IPYTN4M M5.T>B+6ESH%P1JL@N(UZJQ$L=S'O^D,?(?/N3;,CK$+8+9/46[+-.LC+]?B1 M,W/+9US*S05EG#0LJ624RJ9X(QE:QU6V+GK&=\S-T=-^9.=^9.=^9.=^9.=^ M9.<>B&S]R,[]R,[]R,[]R,[]$- ?V;D?V;E3E=C'EYW[D<1XQ$F,9K'O'TF, M'TF,!\7 'TF,'TF,'TF,'TF,AY3$>']Q?AY&WX9E_E?CY_UQ^/AQA!]K(U7\ M]F*0?P^C/W 2!OGM[/-:-A[M\?CNDQ^M:+.4&'%1%\UBU#D(E4R(06J%*(QF M/%B?5R1&]D"R[^S6R^<0C#>+YU]Y)D:G7*2Q9"AF/YL@ZA)/H%.,401GA&L= MB[T+4R.W^%=2%:NBYR^^IK.+*D)UD3O];SHN+@4KBPGDQ&=&VH,K T$K\M?( MCV>Q.)9,Z[S'/6 >/EC35'[6>+:=,:J3+=+DC56HE1SO^N,_R$FK/P@?D1,M M=&2>$-%]0UZ^00;.U2O(JLB-E#JHUO.0-^$Y,6EI1OH.DA1K#CZ?HU64\HEE MH$/6*&&H(LMM76.K10Y!KL-4(?>8E [J.((G(7PU9#:.ZTW9>??*S@5SN&#IL1MK%K_3J< MXYMR ]-\;,(VH!I&NM8".7S<:U\.#;LB[^%X;PH7 1&$]AE4=!J<,1ZLRUGZ MY%W %F_Z@7F^(51V&);O0-6&K":/N;= \G+FLD[UV3RZ(&4P2?HZ]TPI0A4S M1&D1-(\"!==%^J5,QBT7?/,3#AM^:43^87/:-33\*ZIW.*[K-R;]1(:9+182,0"?;<%#^]X MS&._/%M2L;'Y.X]IOQG-]]Q.K3XE@5EPV1@AI M+%TVV055RV R*;,8@2X9TF;%L&Y$ZF$C.C5^!=]_&GZIIN-P M-'[_"<_^K/G20?Z]/QK13Q;G+-8:LA\@2R?KO'VR_%)68+ACR;+,LDA;L'&+ M1SUVSK:F9F/O]KR;@5'_W86;3SV5HOX@#[\\I;_*"S0J6Y(A%\"70&BR M<^"%=!!*O/UV^]=OQ9/CY M\Y4VB#HQEZR$@)&3*B=O*M2]UEG1[5LT\SIM<^G=^:#'SM>VE+S-YGLO=[X, M5SZ=E_,N'*S+8NY,O!()2K("5+!UC$$0X&(F$PN%*6X;#;OA$8^=M:VH=YNI M>Z\^GJ.Y\I6G6!>KOSBYR-5N=K%V1QB'=)&74#>!)3IX",%LU92P0S'<)CR/ M.8S0G-Z=;-5;*MI\^NTI#M*G\S#Z8QH."VCK- E)@)#N&<]) 5E'GK.+(M(E MD_UVY2_[U,PN83J9Y$ G3.B@C_TVO@6Z^=NQ#;Z.5K/>A>TX6UK;8\6I+.U8@7)6A**;#$E6+&L%!=;7T-; 3M\#T=;?N[6\7,/ M9G30XW,'R%OFUB6!%B97X70_DZ&5DT^SUZ016D"4>13*('["4[T7Z MAB'HM= JL/G+L@VT0]G'5[ >C&E\/Q;>)1I[TO\0BN,:1&$#W::,7@-/FDRE M)"%P1Q>KM29%+-9M-PSB(8O&[F9PYY*Q"]F[D(CYE7<+XB+\&XVT9.^#3"'5 M2*&I-YT!ZS )SKQ-S+:6BLV0'H I%MTZZ;ES8A.1S :4OX((VA^&P[SE_[961CDEX-)&'SL MD]$UOAQP,AN'V!\\"Z/1MYIV.J]3$8=E\<_N/WRFT8-;CYWI@AY+ V?(ZS4L M.HR.:T7N4$ M.'^?)I/6]1ACV4RB+3WMUV>"/F%)RQ4*6@B2Y-I-XPR-P M%V5F1LGH6@\6O05B7S6Y^,!WP[.S7X>C+V&4Z5STPG,5P6>G0:DLZ0TM"I2. MSL6HAL:C,,KQ/TXO*P&]Z5L!W?B M)OHSKX7.AZ!4;)*5,%I#0>E3?DLK6.KV[0^?<_S6R'!^8G*5VB3U92.AS M\9 4$^3/TD&C#@&8,:98F4O$UJGRQ;-/A=D[T;"#6^U]^H3YX@S?7/IULWQ( M3LI+1=*%(;JZ;"5#L#6^F9CGI.QT+*WOLS50#C5YKBU_6]#UV%/F+L\R(1U4 M/^CIQ9B(,QZ_GWWN; R3SR&JI.@P.=MJH N(/ ?B;W)T'N9":)VXW@CH6.G% M)AQ?EJ)FE._@&IAC6=2B;@&FHVSB#2#'R1\V9-2R".Q-Y'\OOR L>BN.[$+=QD_#UQH,YJ,7 >VDP)D(A@R3O MRT8-KF12DT&S%%V*P6S3AKCV 8>W[O8@^K UQ1KWYT\=Z)MH=%'!9O*>C:R) M:U?W3GB!(#A)JB5O5C"^!?]N?_)C9=R>-'HX&;6Y$3(LT\# S=P-_>HUGY)^ M-IKT__OZMN5V^;7]8!PHV]:05DNYMU(WB1@A, BC-!:/20>1I/%":U'BNMS; M?HCVN]-_K73&5_T_\1JD.D1_,KYRB8PG^S60\J(+KK;#UP++$AQ8Q61(@6D; M6T>\M\&UKSVSX1GS+(0Q,2JO(.680&D3R'[7JJYK*CZP6$PQASOWD1(]S25D MV?)IRH8.,GT;\*UY-7LL.X-9&$"=%9$C>KJ:DH-4MPL8D2++K2OH=D?Y?8E2 M"U9UX%-M0/P:)SU>>*WQLI ]>E!)6HAF2IND6=%.<[[5W,,V@D2(OB^AV94% MG89J-^"AXY(-;F%T,>6.#D=WFKT 3E9(FM\X([P#M^ M2+BM@&ROMO9BU&$ON2N@=4=H1XG[MP9Z[<7L69\>P#B9@@H MURJ#%#7CYXN#R"Q]F[P56$QVX8#6^N'$[(Y8]T.5LEW8U6&?S#N<17S'G_J? M%]-T--9A99(4>*DK8+*80$,V?AO3'V7 QD2^):"UR#;'$""K4C>;H+*"6 M1DGC95&ME]\(D9!E87!"42&=XE MD[XB>8Z$TT?9>B)19\US;R]&Z5,8XY.4:OZS)D+S?Y*I-[V^>RQK@41Z**D4 M4%J0/JXY>F.3M$$&K4+K%?1; 7L(AUT/KFIY'^:WH.M#"5]O+M!+/!JO0RW0(U(IIQF9 MIZU M-5 DJXN6,$&((8'%4+PM/,:\]6#X!U7NNA.9-Y>[[D*CM19==S[KJ^'@XP<< MG3_'.+DJDZS?W=]%O?LS6WND.YYBR0&-Z)/3WF<9F'+%!ZE#EIX9GJ457O;N M_OC]%&C]I)?3]=O35M0KD[,8650R( 1:4*&&4ESFP HA1AD=]ZW39FN@['M% M7*=@S](+@!@#&.=J3MXB!#*@(=+K9=!&IU/K]M;KSS^\'T?^G9@ M\UV'5-- LI/:N1G![C[TGE#G(F M-T_ZCT&85?MB?MX?3X-:O>QY]%XBG3F0T1.D T?^+<1(%VO667+16L/?">HT M)*(M[3N8X'(3X,O!!.N:JW?D'DU]I/P61W708OB(O9BJ?44JK-A:]YOI#\^- M! (9 U&!1+GU+(3MT9VBN#3C1@<3M6\BG0\/C\[K2"I.2IG)#3,:@H^E9HEE M*(80J]9AYQ4P#A5R[I[_NU/UH02=ZT4XF5^$EV.BG4U6$V8H0@50Z!&J-PU, M)HE!F4BV;P?&QC*.H\W=WY>W*XR-O6CRAPT4@V0-2U/($]*)?.'$'>-%,NS"YSB4$-P1>3Z4#.Q" MY4YR#(/^ ,<4@F:,!6\P ME.;;2>^ =!*RT)+LG4>;IM<;(AFV@4S?D[Z=<_Q::?$VN#HR^]=A.H[AOR_/-HK G@3OX&)8B\\'8U,M,\]"DK0; M^B-*C)"YDMKH&)-MO1?GL()PA_%_*#G8A#TN\N8 MY37+]?D%?O@R_/!I>#$.@_SA"_W"MQ?]CY\691A>.**+1##%B+K?24-T1" 6 M&2JCT2%?2J6O+%5I@^;8L>7[ZU#35'21@=*.0XCT5?$:&0_!(M_JRJ=/O7;=TW=75_V-!SYV,__^ MU&N8'+X$,9>D;6#L8LAOP\SV;^G=]OH>Q%]FWQZ4:ZALE^'8F+6U(<]'^6>' M$$WF=0A[UBQQ9'(K3_S8#%QC9[?GWRX$:\RWWXE2YQ?GBP9]H[VW,8%!TN/* M&@71:@-H$VH56>6P^R^(6BB-D3!KR_M:\BOVH MW$4I_@+(DTB^0TB3GA&H7\Z*SK%Y$=TM$*?%]?UH MW,TXOC!(L].^J]&U-^4?X]F,EAN3F+F5RFGI"98\0ZA:PHR-S5 8.L!HTL!X?( MK6;M%\A-TZ+,?*J37C]6I;8#^:=]$PL0+7/$6\#;*N.FC6HCI2%TT3[FTA$GN0 M_K#"@46ER!4';B3I4^X$Q$RN:K)&AR*BXMB17W PH;BKJ^; ,K$+Q5O/=;H1 MPURD7&PQNJ0 K@A;7=0,T7($3.3/A"PPY"4)6#W9:<5G'\U@W)ONPX9$:US, M=CW/N33X*!>Q+L: G"?PSR M?- #YF=A_.G7L^&7O7.%&S^TF[3A]N=8RB!:%40N6$IQ5B6O/'T1>)#!9>.% MS[TM/G^/]^QB57 V_!M.N./GH6CU\/!LRI19],VFAOJ8?RO_N33RTJX M:4TF5!U W666;QN,WXU$[@=.^ M(LXEJ6)EX*V+%[?%]KT)SL[\:)@C70[=7&+\,'Q*WD0_/RD3'%VB#$P8P3! M9!A!^2!(NF,&;;DKAC"J97US9PQL\Q-/018ZI/%M23!=:Y">-\:99"T(A],- M# YB2+F6W$7"S9/7K6?1WH7I%*2D$_K?E@_;2E.\^(KI@G[UV[2M@.SL6/M M,F161RB3[((3F($SF;Q2.OB0=M0,-Y]P"CQN2,/;G'6=O/G7X[ZS0-23\^E8 M9*M]-+8(8"494"4G(/FSD)A*0;!85T@>0@VL W@*\M(]9VZ+D>]$C'JI9&&X M(+%&3K=:LKK&(260/R6M-\Z3:W4(<3EYL=B)TBLB:-T$9A=;%K 80^<3D",C MA#8A>&X=(/?<9)XBF<66#.^DE*_6M:X!N3E_Q9)U-@G2K+$:7_0U M^$!^&JE?+B,+.?+6^:#[HSV\CFO*^)65YYUS[5CRMBJ[Y6-T9.X'$%DP4)(\ MQA"RA<(4LRAXUK)U_/^^6+]#6=N78YWT*FZ'>Y$):>04EE!J<8 28$70F3);, MV("^^:[*74%^QR*U,X\ZR&'N GB:,@;/6U(@'X14.P;G@I,4<;0=M MU[MA_'Y%:F<.->6.U:&UW;$;T74C%?:C?10)U#;QK2;P42'B] M\) #(_&MV\HB#Z3/A':1&>FD.)"Z.&82]0@BM$RD/K DX6P"3*2+U'(R MQD,PO"95+%&YD%)EV>807/3&;6'_/K1S=3VDZ8&=>;^$[P,[S.Z">>PQ5-/9 M[1C.7HPG85(WR3Q)Z>+\XHR^R<_Q\PA3?SH)]=K\I3?E[6A(Q"2M5R>LI! E MF;%UCENAT\:BP(FZ:B:F9#PGJX9MU?5ZUTJ)?4 >>H#5XQ?+X3'$H_7BDRV MURU,5XCG0TJVP=QRW&JSJ*)T I MAIP4JS0XJ1&,(N>B<%.\MUM8SG<^Z, K: ["JV%7A&X\86R^&7PMM(A19D>G MU [K;CJEP--109,I8+/CFOY^F^S!YL>Y(J,MA%_&)/NXQSZPU@M;#SSJET-*D M-,&*M8S^7^:LA)$QT$\0K+)C4?,$>8W@W=8@U=$ M7/H%7]X$ M=80FEJ-)W7*TMBW'.IA@5L$)2-40&NHX(*)<, M0LH"2DXE"&6CY%NM)]Q!M+8&=W@1:\S8X2&XTD'3P',<$;I)_\_YJ]9C:)23 M)0(J2T92] H"RP'HS")J1C>5:%U:NXSAU(1A+QIW4+Z_]K0]EY6.,B9 [APH MCP5<,@J2+X:<:R5-:;VC9BV84Y."-E3OHOS^ZFK=='9IG$PF6,BQ%C8DQR"B M#$#NK=!<">2^>4_:5LB^9_.D ]YU<,D\O1C3:M9PRW8O6@3 8BU(HLVU]#]T#YA&FKG? M\>%AV=6I&7.-/KU@5:17*Q,1>%T.5FK QWE(UFMEM!62MW8W5P(Y22G9G^1= M="9N/#<9V\JI$B-PSS6I6F[IO)I.;EGB.A2E6?-ZVHV(3E(R&C*AB[FH#2[O M6:H])2>S"0@DU=-JOKIUQEMPT8G(-7.Y>0]',_"'6A+W<$REX_#]V)4_MT[_ M]-OEEW_OTS4^2I^^O<(_\6R:064I:*9J8L2'"$I)NL9S"#6-*KS,WDO9>BWY M=LB.M9SN2%*S3G;;<:^+L?>K,A>W\? M+R;C*07X/+4OA=8B,T[&J2%;51D#07D'S*08C3)*A>;+7M;#.6*DJSTCUXG, MGESH8DG0"FAB4?M3:D]YU)"4E72KQUK[8P)8G3VSPC&W/+&X$P$1WZ> W(<+ M!](@<@Y-"(?:*4%82B!H*, %0^7%@;ECITB=;% M^7D8?1N69V$T^D;_;E;V$P:9?)%A+73#?+3BK2ZP'::LJW.J+A5\^>1<\4Y& M&XRR-@65<@S6D\25I$594_#5!B-J]MW+0.3>0$5%0-G-(>4O,N>NYA9ZP*4?3%W7_!E"SHAI 46 M/9G93B!$7@I@,M*GP)24K>^'AUSP=0C9VKW&:Q %RN!!!U&7TDD.3@<'=<%#R$)YDUI+SDH@#[%08R>&+:[.B QWU=CB:DOE*:ZY0T7.';!NH'47_=X!Y]-C__FP>'I9'75Y]5P"KNIZ- MW1K/ P>VEA3PI"%E0:I;)03'50'.Z:"F@7YG326C,+O;S# MSP0:\XP(Z^'FH H:LA6\U9+(8CU$QB.]5S)(65?/R];5\SM"/+P\=<;N6PTW MW?&J6W=N4PZ6WK.4LZW3D7P Y3,9B].W+7H5O T896<59@^['.< )G8KQG10 MYKI;4F4;L#\J;5IR?*]RB/NPZ^B5-I$E%U.N\RQ=JN\<:=9D1,W>L>B3IO_] MJ+0YNFCMPJ4#Y3K"N;_GP9?CAT_"B%KY\^$*_\.U%_^.G MR?Q68REIKJ4%9!Y!:5]M*R2/7PGN-:NW);^C"JH=FL.;%FTX.SPJ6]8:&]T5 MY;T^5*U6C%>QD_>3]///VT6PJ-C77O4J\L^M]SKB_I*O"F7$P87I.W)*-'I$*"H6KKJ8P%OF .+02NABO.Q M=9G/6C"'UUW-96+YVFM#^ Y\H06PV=&KI7^)3*M(WIBH.Q 5JZV$I#BU51!4 M,-K2U9]5ZZ:#]6A.6";V)'T'QO"[>N%>X*]$DSJ2H]:ZU5GRSR[&D^$YCEY\ M36<7]4:H%7+TO_PA?.U)E:TH3H(HG*Y9E.3..YU :N:$Y*Q@\\6F]X!Y@F+4 M-;,Z2"S457EORF_#8:ZMSN]Q]&<_X270FU.XR>29,FA0DVU$P?^>_KQGDI5> M9@:%_@/*9(18%WQ((>D@&&PQS<<,[HWZ!*7OP*QL& JJ+L9OH^%X_'8T+/W) M2LS7<1+LRR/TO(LYQ60AVRAFT;" -H.6O@[:=8CA+DM]G^>?D" =C T=;/_> M2KR9)ABRUAL44K/352D^,0TY6>5%#$[EUKO.OE-=U)P=#==[+S!>$_6>Y4GP MD$H=P6A!A1J4J%L]HR/?6(CLBVA=%7;M\2 M+)Q_N-9CHRW%H.-B$Y1)MJQH(,EW3,\ MKTA5+7RV_N""<,X!#P?CIT@$P=GOD;N&XQ=?R:^CY_<'8?1M2I^ZR+-Z>\.S ML^D1)SC",1T- Y<* R17.]MMG:1B/ =IE,^*CI9%ZYA-A\$]KR0GQ9-':TCR YS@FN0OFYEC8;EL)1=6.DN;WS("3&Y M+4&[6/&]V!3TIFP@PM-O\[^<51"Y$"5FGZ!4'477+OE@QCKPG*PUG8-*HG7M MW3U@'JJ-N',-T36+'DKG\&6G]6*@^"*+,JMZM3%DJ00D5K><"V/I1"K2'R46 MYJWVL77T92.@8]7X=2X-R]+7C"L=Y+?F6!:5\%N Z:CD[P:0X]3Y-634L@CL M3>7.65]2#%X)TJ_)U4;5("'&NMDU)U:C1U&:UDG+ [#\CHJ^0W%\%^(VKNA[ M.:M=FBJU.:C%D$?F@M66W".Z/T$IE<"C0Q M,KPA;1NO.*][7X9G_3R5PZD-/%5*Q:CLC;+ %)(@>B_ H:E%"SPJ%27+?JOJ MM#L6F*]^^JF;;(WHWK!.9#6BA!.U<#]"RN[=Z,5:@%)DE26UFU655G-=U+QF\ MUQGITJ%KIX41=R#&;K#>NN/K+B3L4$M/DS%K-/(^5#U"!^O5BM8PR'_'_+$VFR3Z?KH5 M@*S.P:)"Y?V7\'G1HS)?/7#_3M%DN=LY(4A4C9>0PD!W3%6Y*J MK-&C,SEHWVN"H-6:Y*M^\-H=<@O-U;R\:^.QZ5PJ\ZA9DX6T,%D(H3UX(G[(,D0MR0#)C7? M"K8.RS&F"1Q*AM9OG-Z#'YU,+5K@^K7_%?/B+7Y'MT:O2$UZ@!NH"3IRX5G- MU[$"I:"A*PBYRJV[X3; ^3ZE93^N=+JM?GNBS-W*J)/D7@)CW(-*&<%EG< B MT4*FH#RVGWES3["'JM=Z""+6)1\?2CG7JM.^ZX__F#I07&'1B!:"MW/KVGN7 MP2%+HD0E2FD]?WT3GF.%B@XD$5O(X;TXTZFN6UBT'^A?SGVR;;!U-M-M/:YC MS75KQ<6UXM&(!8<6$R>5CU$Z4$5:4%(Y<#'86@.%Q=);PE1W]O:AQ./.:6_' MD(Y=*-^\4NS*8*L.\9L!OB#[K&I0_'\NSKX1RYA8; C.VLI2C ,; QET7I ' MH *10B=3(WLHG=NJ>&S[9Q[3EMZ74\,#D+FAH[4*YX+0E><.*M55H?QU>C%:#U7.P M03.-/FF0J6ZX04M@;?%U]SR+EK.84=Q#/NY\\(F*1UN"-QXU= LL8=P,-O+$ M@ZV+16T2=/FQ D%86_=IB>!R9-ZE^TC'70\^5>EH2O!.I@FM\.I_(Q+4YMZG MW^;._3N<%>F//_4_S_:LU7$F+CG(=5>60J;H2M3DX?O,.4H1!'.=N2V[(/T1 M+6G,S0XF\ZV -7\-MP'641!E+:B'$T%IS=EAEVSI(+"R'J#W7F@5!7#TF92V M"N"C%L!(TP;&H@JI=53EP/)RCY#*T<1E%VYT(";/POC3KV?#+W. \WNW2*$M M1KK7O:Q'Q5B[W!6]B2XJD;Q,J754?R60PQL^C1AU:TOAOE3N('T]!_,92L<*8LMK9>5B/YOJR3!MSH8"O/;53S MMV$;7-T:'["P MI<>;S[=49.RUS*$D*Y"8)@6+G$D?%3>HG-16WE%D?.M9QRPG]H$[KVJ>J* @ M=:@L.),-",ZT84SPS%HOMCE*.7$->2XVBM1PY[AGE/4VBD(O8)T'X6HJA),+ MP;,GQF)D:,L=(GWK0Q];:>/+X_)3NM_%VJ2"9UP%,L#K(N!11+M3$$ M$:(73LAH"^/R1X5X,\%HRH].JYMNUR+KC%''1%>^,76F"RO@;,F0@BE&^(RD MW7]4B'<1?JI.QY]X-4WV>A )%^'*=YC.PGC<+_TT MM2SK+B'%;?"":!-C#'5&I0*?K8*2A"%U::,3K7L/6N#^GD3PX'SN(#:TZ0RS MD=G+H,<5M2#?PT=&J.F%(J>'G)*0A(3$C1#%%1VP=3?9_9#^D,>FO.PT/[^P M#J_1[>]XEGLL%IM$J6,S4MUK[Q,$'PIH'VW6T?J@NDO%KP'U/56K-U 6&0"2931)R2_A%2R,B)#3%D!2\%FP>CE2)TL M%&E[C.])3(\M!1VL.]J8Y+YU#.+%DY0NSB_.:D3QS;.7'X;S)2WC2?^\_NPU M3F8^U8?A4_PP"H-QP=$(<\]Y(84G[RJ[4D=H, ^>:X2$1/@855:^]42P0YWM M>WH%'J2\=+ ,ZO[979F=MS)K\"S26UV\A8@F@PD\>^XBIG(003^='MSF\MJ< MCX^B!S>9**1A!I+7ALA8/#B-%HR5&(-2]/4A NJ/MP=W)XG8I0=W%\XG!WYN(N79;W8<'!Q<0:E@JS8%5=>!,\ U]'W$9M@S"98UX>S_\(Q6.? M'MSNI&,'RG<@%>=/)^-=;2!Y8 M4\Q.W%HU_W4_4A^N/C085XJ3#H1RI@ZZ-> 2UKQ:U(6^4V2\_:@/;6YG-.!& M=]TIMTN;ML'U/=>'[L2W;6L"[T/T@]:'EB0E$PF*4 54G<$54G'@T#N4,D6/ MK1.3CZ$^M!-9V(761ZH/53:5%.AJR\9@#?UG<%8&\-J+S*7CW+8/J#RJ^M!= M>'B/^M!=&-!I%=5.?5C>)QVB\,"4\Z!0<0C:&&(VX]IFZY@[Q,BQ4VRO;1T( M:.F MN!(\;QV-/8GVVF[$91=N'*R]5GEA2BH%['0DO? )O..D<(.@FYX;TL*M.[ ? M?'OM3HS:JKUV%RH_N.Z7Y9!0Q\/Y[WC<83MC=CG[4I],"<@%1I])9)2TS"NF MHB'_*C!T+)L[^F3N>/(QNV:$\5'P(B$IIDF&$QEI!@,@6B%UE.'1Y.(.*C%FCZ/T7VH G=4+?5DV ,C,5[GA].H#UV*I+ M=I' ZYT[Q^1F!UYK%[5BI2@NDD[@HB';)]H(,?$,2.ZYRXITEVJ^5?%'Q>!] M!/JA2$$7*S]3?S?DEVOK:U5O/?R;511Y46_H<3^>X8L!,6@T_:P>V5^1"7J) M%:_F'F<28N$:T!B+UBDR EL'<0YYON_J57BHK!?63V,'Q\%-6#)183>!#@N:5;QZ4 ,1H'0=I0 M,&G4!ZG??KS5@SM)Q"[5@[MPYM!E8=M@^U$]N#,7=ZD/NP\+#BTF,7O407C0 M0A)&D2VX8&1-;7/!'".,W>7J'D/U8&?2L0OE#U<]&$5R:!5=UR:'VO*7(407 M0#@D*TY8P5/K?LQ'43VX$[>VJQ[JZ9MMYPV[JB:U>,^VJR MNWK?UF!X=C$:D:)_2V_]L#;#O2D?PM5*95.CF1D< M3T*CLJ0!6NO!+LYQ>"W:J80N:]:CL[Z#\/5M-=(S+D5=]^;:K.M2!Q\AJ+K- M'%5PIA"9>.N*[MLH#B]*Q^?NL"EKN@@)[SX69$&1'B]16SUM7!!DA"BIP?F, M=?ZI%D0=K'^!V,V1V$95O2LB=C0FNY >NKX5RXHK/4!G7GI33: M9Z/* [Z;?TCR\<2A@P+5%9>"3#:255-CWA@J:23414F02S;H?;(AM9X<>-=] MW9FK,0NQL%;Z 2-/4#RL0E.@8$0ABPOBPR"]*EV20B1 B8M6Y?Q;@1TK+Q( M=V)PR_IMQ8X.#.$E3(N>WRU =90$60GH.-F/AHP;=D7UPXF$$R*P* %%)(TK MRG1CH0!6&VND2=%X]7A%X8Y,Q\$E80=B=R !UU3CHKV!K,8;M3!OP^BJW2Y+ MZ3%9.C%S4]=(UL)% >BMYLSE$EGKX> [0CR\[]" L>OMEN9<>1!YDB#$;GW7_ O9K%6[O/Y&PW7CFE7G.4A%2F0 ZY%178P>@+Q1DRS,FSB5;7I"S MLBY]NZ?MJ^T^C#",+T;?ID2S9<$PJ=O)IF'O%:^ZK M6\ MK_=],N!D8:"=L9&'7 OYNQ2/-;A.6TY:,*,#H^D&Q@6\)W_B*'S$BO(M MCJ;DZ4EB2);>@M8\@Y+60DA<@^4R1NNC9+GUH*EML9VVX+1B2@=Q_BF^=_CY M8I0^A3&^'0T_CL+YDPL2[%'_OPGR=.(L[RE#<%PDJ]$AN1JRJ%I.PT R-$YB MM*GY&IXMH9V>A2U%3J*0BP!ANB?1V0Q1&@_, M9I):8955UC&Y6C:L=,[7N,BD>01G-Z0S: M0@F,)PPNV^T,5?K4:]J OKO2!#<>>.B@?A<,'.Y+R(9&YB6(Q8;U+6#L$J#? MAJ_M(VEWA^+W(/XR^_:@7(>,9,:'(%0$R8NK$FD@8J _%.->ZF"YV*I>\M@, M7!- ;\^_70C6F&^_AZ_]\XOS.1!CLK9&<$C3\B#T'GQ*-=JJN9L\,KZ5=7[JYZQ9RO6XN/(!*\7^96U)TVLCKNB>YPI($ *O!<( M3&2=O"/OTUX+9>Z;6\/Q\.)@2].H9\P#%\UKY5<.BR0MNO73@E:17*' & M+H8Z6*I8F2/]34R-#[P-KB.T'361B5L3MUKSH(OQH@M@U\#6EZXGO,W>"#HN MO:>@/'FDWM8!JQI12WIM76C>\;P&RZG(0Q-:=Q!M7A6+*$;*FARLHX/J7#@A MP>FDH9#-A8[N(@RMDU5'#?MTR_E]*=S%D(ZE@\Z<6E6BC!$9E*CID-%K< H1 MG-"6V92YD:UOA)5 #C90'DS6(1;2$]Q[F*=$LQ)3WDCP1O26$5Y;83DN2QG\%8F;FY]\!&-L_N0 M>=B*1@V]L.M@/GP9+H92V,(%SW4?LG+D"-:-%C4?G$6PW&>.=GG0Y4:&77[P MXV?8_6BT]@WK+OKWXOSSV? ;XE,J!5J&^MV M%OV,XFWQZ.1A? MC.K,R1=?/Q,.[$E)O\:C JR[^I0, :*Q=!4*%I,-4=BR3:I_]:GO.1>.FC<32D4Y%R\#I7$!B,B+E MZ#1OWI9S%ZC3EI9N>-/8HOS7C 9]>/%9$Z9)_F0C]R9N_$8? M,1F_',RF5/2X41EC4J!E)-<^67+M@^%@R/RLC97D,K0>5G*HLWT?8OT@):5U M">Y]S_CZHC+L3:&S5L=HZK]-S_KK4K&[ )5DR,Y8O,V/)B%B7DWX)D_.:^B-& M5_?&F1'*!X$9,M:.;EB3Q"DZ*"$7R14Y]*%Y"54G7KXC]!X;"0\1;D\%X3<5 M:6?&2B*\K-I)U/?5)8#SY" PAH6'S+-VK7/]S9EXQ71_W3\$LSO$"AXNQ'53 M+>V(*N5 LCHBH!;BQ"0BN*AJV(Q(SOODS)ZX_!@E:\>P2\?0QJD\=?K]AK?* M;AT[L'H60.=Y+*X^R,4D047NR2.,#+32QEL52:+M&YUNHN0897"CZ/]!7]*# M]=#AR M"QB?M$M'Y<,.QX634F%H;(NLMDIU7$?7W^W3TDKQ+!/\ZN>H2L7ZY@ MU))(R^ PK:K?!#A-1W%$X6700HG0>JK%4!J/T1V[A78W)T/ZJ*9#AOZJ4>Q- MZ?DOLZO&W*NMHWE&F5P [NH#M1@C!.,Y6,^+E-X*%5O78SQ"SO=BB[322(?L M[!;2UMMF'^(Z626/$G8#QP$ZZ#)D[C$BZ]@LYFEC&!MB?5>"Y.JC M!CKK#(M9)9];1S"/ ) =YLIQ\#%$]!UP45N6O2\?PCDN;JX_GP36^RY$NFM= MSA"UK=VG7'T,$ KGK5L]/2!B?-.CH9(>U/\>(N&&!D9MGO!QLCS'.DL\U[?4 ME^%\A6Y14$L;4K6G$BAEZEA>^M9:XR):+ME^3_YV-)[8N/A+-R+:2+WANYN- M!-7\W>K987T-\7GRY\?9S]/E9/GUVO[>@]2&S8$&DC=^ Z$&"GT,'AVTT;AQ MS5"299= %&]K0_M,KIQFX&QAI7B'(K;H%G82P'FD<=%Q<3-$"8WQ\KZ4 M2<+Y=>L?SE@TH4!1E6%#AVD,@D&4)2AOT4?09AN!>*"2Z:C\J\0\!+-RP.EWK#IXM[9Z$7 MV]+0W]B8YBJ_7\/%=?1O'YXZA3%Z\'.#!Y=8>]?/![8Z@S(G#=HAJ&Q=D_8;S5?7K-%U1?/6T M=VT)2!DP%!_ &%E["R$9 8P[R+HH3$5$$^^]5]CR$&;[&N/':(ZOP5D'\3=N M)'!=-?CU/H&WWG]?MSO(-NF4,G!369?:0B1/A.CU+"LOC)-F#Y#LO^)W#IE. MJFE\KMQJ2W>'I)*1!V,3G;B9@V*2 UFG$H*7(;D23>9Y#[1L^?CO'!HMA-YE MB,AC4PH%9F--SI!DBM5I-1"XE:"C"KYDGZ1K[>&=U-S78WE\[;32H;9G\Y3" M?8CZWL>_#E+<7D,_GR+U#D[59N*BSB[;S(#%N)ILNFK=KL%SQIBR-K#[70.> M$Q0.&O_:'@E#A-TERWQSO:TO-IVB8HQ7?H)DNT0!%X50N$JDWYYA6;,R K9K&"R5[7%;0"?% =KE(PR M>Z%#ZX8R#XCX7DR#PZ3?H>CR#D%KO.]#4B=C8 ,YQS$%#E348VH_0,H=COY- MI)EDT26>(2O!R$M2=-;E4%TE:WT)@J%NW25F-,7ON/C[ZWV(<+M&T*]=YF\> M]:]TZZV/O.NG4 &%)EU!4E'7N0<&7!UY'TKBG!LA;9^B_GT)'-]$.%BE6\/> MK?71P7BXCJ:L-H;EDD>1(X1L.2@7)81H"A07O5;.")-:VPVWU_]>3(8GR[Q# M ?N]:-H^U'0R%$XA9?MTS6Q1\0%B[3%PY"Y53HGH,A=$5:%[4&L/CA=+]Z"D M;TSRQ9AGJ.0=]D O'0^19N,$PL?_GGW\/+M]A9>]C21^I5\\M-/XML!#E*.@$3U5@UC"SB3'^@ M+C&(R#*3<>QW-3NI;N)?Q=T4Q/L4K%L=DLW_!1=+O-?WY??9^?G;V;S^XIG/ MKF27$T1K(WFDO("3-0?)5+!8O#6\2S^KKER=8(*Y+<(W.GZG Y0.WF(G#L]L MT06CKQ>QH7LYN$Q2QPPF"#I,R0=N'Y[JQ,J10']"J!MG4PR"S#&>K6X[:C;V MO_W;?+98G&F=LS:!0TX10465(4;'(68A9;1&>=7:'^O QNL.:-4GKA%4>KQ2 M.E#B_]BTH[55B:@O$&QM.1))T)&3"Z5R+#8J:ST[M4M@$Q^O^&]\ QP,EEXM M]%N(?/T]R;G@Y"&;S$I-(O=@I,V@,#B(QF=@,2FL_'L\M3VQ)VNOVZ27H=00 M4KWJU3K8@]YP[PW9@\YP.@:TY^"=96!T-@6]SL$_$Q?Z9"3\3YQ\^DS_?7/5 MK&MEA_P4EO@V3.;_".>7^";6T29I>1;)Y,!03V/&/=0@*ZD!$1"SS-XZPE?K M+EGC<_D:SS@M(/7RZD;A^$S&Y+-"!]U1G:^K M'A![3E&=/O^VTL\[ O$$\Y M/+2;TU)8?0P6@4E&AG%Q",$*7R]PJQQ#+=U+\%VX%3ZK%7@ M!:RI8PIB5N *^2PVAX(>O>:GD_I\$H??9_#H- '4RP;OR^U5D/C,6QVXYPET M2@I4S7EYX1W84%\O>ZT#]JO?Z(D M0\AH+?G>WH.SD8- XYQER/TSLO+N\O:ZEXZREPX V#&Z5C[C(V+X647/[KIB>YQJ3F&)3H-)C!Q*78,>@7RUE(M6 M7)KLFT\N/QGF7S?S:6[FGAA^5G;U.D9Y.POGK-C[-;=P-O<\S9KC'"U41F(B2@PG!@A(F@R.I@&9%)3K? MV',*S(_XG"Q]QGQ9!W3NY&;K$)BKQIN:ZY(T.K!*I%J^*B'J^FHOR"2%]L'K MYHG&5L0W/ 7#^?GIQO2.HNQ-_OS_K/++R_^=SF?T^?_Y'[01\-M?SJ9+_&OY M\_F*DO_\CP5^JE^TGD6(=HN<\)CK\;>OSX@X!8_?4 M/3(&'IW4.D07SV72Y3X\O4YJ'32I=1!,QAAY^10=/Q?\6BVQ.!] 2Q;JGF;$ M6ZA]UU'P8EF,W'^WN!TTJ?7D8#M$M2--5-3!"Y?)@XG2&5 L!;I+(A%71"E& M:R_OEQE\AQ,5!^EMCXF*0X3>>#3KHR-C,X8L113DN]6W9"[1AL'LP-E,3&H> M;=G5U_@[F=C[5$0T$W_G0J6GU$PKC9UD._09;T)/:-U M86\OO7M=VBV=.@R3386IVCHS%F<\9XD;C-9+L;U+>Q/2CM[%/86 )=6(CL>Z M7RT#;YB#;$70A?ZPY63>ZO_2JHO[F_/5[] I\Y@.SYC.TJ7(P.1:%*S(6 G9 M,) RN5)8D+EY?'<_RD[PKFB+M >QF_8*Z]$1O5F<2Q@O UHDX60+BOO*2$0P M4GMK#"M:-<_R?X>![4,@>1QEGTI@^\[@),6D<5EDD"74TC;)(81HH7 O@Q1\4=&0&/#9 ;HHG^,\7VH>9[&2 W2#./#Q=[BEA'&"!'_^-8&#"4 M&52--OI(LUC#Y#C@1.MBHCSY)0K3P>7U[6& M#&-FTJ/B]].:+V2 W! ='3) ;HB .YBU=U,+$9-**"(873@HR3T$))-;"Y<, M:FX+;]THX84EL0^Y[9^NBV.\BGY* '$?GEZ3V(.2V(-@,D8V\"DZ?BY);+K2 M3&#%@6+1=9@\\"]P.2F*?'&R'J':D)'9&IG2N[22U MJ),N;(&@:DL,44S)T6AA]LE;ONPD]B"][9'$'B+T,9/8Q=GBBE)@!$;R/P0G M"FO98R SU87$I'Y*IO(5$>W%W_AX^&42XN1\LORZ,8UZ%[Q>"9:-A%PK#E1A MQ+IBFJAT/&FDG\F\!TCV7_$[ATPGU30TYS3M-R4B%TK?N< ZJ2:#H5UJU(1Q _+L+Q0.;.0 MC"U!6:YX5%&X'$LVV9K1GSAR7C RA2"<)/-)TU?." 4Y(U>> M)3I2R_?ZQ-%[6313'@IR1K)! X$) QQ],&1SVM1\\N0+?N(X!&E/?.(X1&&G M_<0QF:Q35I"4)U^58R)/6%:!*9>*MC&ZYKOR.WSB> @DCZ/L4WGB^&Y*-^[* M[%I][B_U'U2FJXDNI0THM"9;*'E03'"RS@T#KG1"^JK(U/K5_"/DO( (QQ!\ MS/KHJ8/KLX6TFX#@;N(Z13T>)>PX\8]F:MP/'@?H8'2@N)(%V> "M,Z!?##) MP.NB099:%UF\R;GUDZLC &1'G.0X^!@B^@ZX^'&V6-+I&L[QIH":*XF<>XB^ M-L*TOA90VP(^"J^E8S&8UI&R!T2,;YLW5-*LI81[6-AX3C_Z]&::_Q[F_\(E M?;VV_6]*Z!.S:'+M@NI ^Y,O2,YUPFQ]+WR72"&*]<0SV%);TWGKP3G&JA=0F#&:M9^AN1=A+PDI M[35Q G7K?TSGF&:?II-_[XA$_([G-5JQG/VQ[AMX]92A77RU%26]PZ]=)'8O M.LLTST+;I$2IQ04A.EN,%D5%EYEA_D%TMA511P_>&FOK'/@,AM,N54(%""IZ MX-)F%=$SQO6+"]Y>:_,#SK],$FXFZ*9AYY7&/LX(N+=_7BV;7V?+_XO+WV^@ M<.:L#$9X"3%@?;KH2)Q!"$B:SJ.$V131NE2S&S//,D0\!,_W+YS3@$4'F[<; M8U<=R=_.YNN_JK_'S[R/UGJ90#I#.M"L0-"Q)E-3C$$+Z4IK'VI<#E]WQND MJ,>+BF9Q5Y8="=MP$'GU8! -^3+,0=%6ZR!YXDF\)F&."NWC*/M4DC!W*X*0 ML4*RI(U6),F1AP*^OHP2$8DURQVJUG!]8;6G@S#P:.WI$%T\E]J]?7AZK3T= M5'LZ""9C%/$]1*OM:>'(**9^#LW4'ZD/JTB-RJR M.8M& J]>37$T%CB=KYY[Y6VRKZ6#_2#32#5'2%.MTQ2_A?GRZT>2Y2*D^OF+ M-SFO%@KG[Z8K5E>YO2?GH)ZT3.L$T^&\WLL>T4&0;%U)#9,EI;X)3WV;D-;)E=]%T M<# CI=DEG0"_8\+)E^J/WUIQ@HL?+^=S.@W.I,A6NE Y10A>"Z!I^RC M\B89UCH^O2=IXY^G37'R(*+102$=TB._XQ><7N);$LY=^LYTY$I@#N25RU1K MRFO>A@G(VHMHI/!6M4[G;27FA6&CC="[1O^W'=L_?+WSDZO):2S6UP,.1%)D M0DCZPR=FR;^UT7J46LC62'D2H6-%];MBI[^*3B4^OQ]_5V7-V7B7BP(?T=?N MJ E<$ J<=$('[HL*K6LF]J?N^)'];DAY<*YUT5B'@^XV/=E&9:.ZM;OW8="PX[HM;' M0\,0F3=$P6*^/'M3RN1\4@GZ>;J<++]>MTE&KXT@:TRX;$#9.GK*)P7&<9VD M4TG@7BB@)6XA@+[[IOWMJQ_7^GV*3F9-!7J$W@\U1#Y9KF)J89I_) .'?@VG MB6STZVMU5MY-%Y?S&@#[YN.5V?S'\S"Y.."M.^LCD7CP)/;,L>V>4 M54J'%((67*$P(ABR2\Q9,RH.2UJM27ASCX2?)HMJ(E_.\9NUCXG,>O0(''5M ML4Z@C[R.K0L"DV 2X_T&1%MS6?NO>DC4?8/T:,5WI*6+Z:1,UL5QBP4NWUX+ M=363[.WE^?G7U3^FHV-V/DE?SV1*1NJ$H+%6*"01(6H2!0M.*.$B*7N?J'P[ MBL8[2SLCY78L_D@*:YP#W,#%#;D__Y40Z['T83G[\Y?98O'+A 1[9C'HXI, MACX3M4Z0(ZTR2*6U#"Z@OC_5>5]X[5CY>X%12P5TJ6U>4_P!E\NK\,.M@.NO MLVE:1UE-U$5:*ZM7&T#Q6L\;LP+NO5=%:J-*ZZ%G^]+VXJ#453F->]/N)8ZK MP(A79)\6EH 93R=C,!D.8?8$S=: >C_E=;CZ-A*V]M7W(:U3*/,1LHX3TQQ%O;.^ MNAD9/I)'7VSU 6Q- 1CN(-AH@*YHZT+4SH;6X_9&A\V.V.>IH6:(2OHUAKB9 M-[ .XEGN'M3:C[$>C,EXT=(FREK<^.'0R1]A'#I M#Y<+LA$7"[JRXV0:>CR?&[Q$Z_#G83S>"W,J9H1W.7J#7NEHHHTQ:25,,81X M&<\&KW;8!K]>[DWZK\O)XEI4:ZM?1H-$EB<4,_+/O$[@99U"FA6K71X9\ZW? MC#U&SZ&'V:^7=4N]+]=KX-4J<\QG7$04SG(0@2/9D9$3S[21HY JZ(3,B]8W MWW9JQC_4FJ'@_JG62.0=WK]MV&>WN%_GP6KU-@F SMY2B#2G E&:#<=UWF?[Z;[-9_N_) M^7GMC%/?R'\,?_V$]8*9U%C]17TI>I:#HLN =H(R@B0E,4!DF*&$@C:GB,JU MMJ::,O "(3B^8AO&-V]>(E_,YLO)OU?DOB_OILLP_;2BKB:$%F=1AJ@2%V2> M"DER(F&YNJ4L&AFU*,DVA]WC%+T@'#44?8=Q25?MZPBQZWY=ZP9?9Y%;$5NM[Z[" MZG0^2<^YA!AK;0H*#=[DLAK\YVT(BHGF#?(&TCC6F_YN&.FJE%-)D&U@;14N MS;I$QDJA"U#1AG!>@&,\T@FH> [1&\E:GS9;2#G^(_T>ZM]MU@Y6PSANU#H\ M<%VDO ^!G1):.XD[3EJKB2KW@,?A>C@*8*0QB"R:.CP=05E+-ZTB:B/+*I20 M8C:M3=@C 65'(NLX.!DB_AYEC#B?X*(Z7'GR99(O0WWF>'$1R!J;A/--!^TZ MS>*)>1^*A*"1@4K*@L/LB'B1A?9:Q?:5C$^D]23,Y$/4_J W_@@Z.Y'4V,U\ MPTULM4V1[;74&*FRX3S?[U->!YD+43@O46G)HY%<^.2\=C+'HC:FS/9:M6/J MS$A=N$<)2H0:_TNKYL<))%K!C;%.LM;58SU39^N>,HN/L_7._Y;0^=M\MEB< M%:9]364"MX'5:3D>7!$%&)JSAKSNXNFDS@HGX:(^V=D4_$W?KU?9YO@ M_'T\GWRZVGKOIC_.IE-.:Z)Z,:%/7WVS*CDM.)]CYF?>V!1-\*"3 M)M%$1L!FS((6K-#?BUQ"ZXX]0^A[ 4#JKI8.F:T-M/XVG[VM3V-NO9!9=UMY M7ZZMU0^3:<);@ON)C,PW:4DFYYF6%E--(\O"B"%&#(5<+,1"'!5K5&@^ *LY M$R\;C",JN$/*;3^&?@[S*1G6B_?S6FFU%U].$D/*67+EE.4*HL ,3EKEO10QRA'>J#ZK3-(@]>^9 M21JBAJ,D!O8A\#63-%B5@S,$3]'#40!34LR:8011ZLA>GB4$SQQ871@=S3HD MU[JUW//*)/7%R1#Q-VX^_F::/L_FUZ-6T7*CZ9S4D6E0OA0Z-NF>IFLYE\B) M.'//,=P8I[K]F2=AYQXB[ED#636.0KY??L;YIB11-$5G1Z@T=;JRCA%B(*3J M4$H19%;YO;K#;_GXEZ3)%A+;&8.Z4B3N0FE&3=2TE=R^?YY0,13IT60H5G?*&,VFSE<:% MD+-^/)]W(&$=4WXL25?;ET%.EESSDC/$[#,8:X7(R@H?6P]*ZIGRVZ"%;R,L MKTM?P\V;]FOIO]DD_1_#XC/]X&?ZE2_AO&:RSDHTUJ/7@'6.N>+>@J_60Q3! M22&(7AU+]>-4_CV=NZM.1E>_^:W'T>(,L\FR%"04 M.C*%3#3@969@M(W"!,MU[.4]].3K%>3]8#!.JO7)/+Z;?J'?G\V_GNG:'5 * M1V+F=5*Q0*B/O, XSYU(%F4WS[@I(Z]@;JCH<;*\;7;HRM4YD]8;E@0#Y4J] MA@J#$*V!K'4(!8.*]T<-GA2,'W+TBN<>JA\G&?QD[GZ;S_[$^?)KG>ZV7!M: M?]:$RQES46NG$9@2M'NSMA""\H E:9FLL<[T*BOORM@KS#L"H6'.N :56C+X M_L_52Z3IIU\P+/#WR:?/R_?EC\75/STS42D;K0)1L#(I&;AD$RCIF- 7@.+357"'&MJV%M;=?@"K2^GCYW#35.),&.TEN@@FU"D)JA;H^!0! MHR!5J!BD:5V/,BJ#+P#]IP^,A[O '-P/\)J.I%7TS'%PJM39P-Q T!G!<%ET M#,&B;?W>_P5BYTGB?*A6>TJ'VPJSWYI\KSN>9*F%34&!T76"-",NHR;;.Y;" ME5!H$N_U3*<;4R\(B*<%@(<(=Z=BA%Y/=_TM?%U/VUBQN_8Q;_W^F4I)VF@" M."U#M5+HJV@RZ)"R2M((&]W(!NG>Q+\ 9#\/Q3]$NC^EL_S;+K[ULZL02L%8 M.&H!:&OG=:OI[I*H@!G!DI%<.W[*^;OMG+T [)\P%#8D.8Z5T+LVOC:S2QYG M9!A2"@988)E$[S4$80PDC[E$&T+D)Q(@WL7**Z:;*GL#B ]Z:"".(?@-:#DZ-[2P(SRA$U$R M<:L:W\0@\. @FD2VM]99FM9GUS.KQS_D$&HJ_@WX.#C#-+@F1$#ZFZ?HX2B ,0X-9]J! MSXCUD9*G78(:6,YH5.31"?4R@/+$.JV^.!DB_M9U6M4&WU"QDK/S27L.N=3> M^T$'\$(4"&2B>YF(KOLS7S>7;&W^^),P8P]1PJRM!!L7M8P M\HMC3 Z*DP4Y2X'M-?+^&97;/77KM9#@B93;79=D+6;7'4P>/&1H6U$W8,$Q MBN:>RO_]NCB.$;D.P9>@@I%>)9F,SG1$8#1I\VBX 6L?.$QF_>EOJPSQE\F7 MAPM]\Y(SEXY+*:'$^D)+9$XG6R#/)=22>O#>TH(AQ<"(9$$8)5,[:PEL_X=J'KO'/T&[(N6^L-E=+A^*S/83Q M3ZPO'S&_^8+S\ G_6&"Y//]E4O!,13VDE M0HYD]V1FZ_C&+H?;062/%4$>^<0;3Y6G$F1^A.\?OOX]_+_9_,?S0%9[#7\X M5916SH.(O( JAH-'+H GU,5G[I1NW4%V 'G'"D:/CIS]D7N0!L<]+[\1^FNX MN/8(]R&W4P1[(*G'B6=W4_W^$&NFMQ. F^5&*J/E8CF[P/EJFG(-('R>_'D3>D)F+%<.1)!U M(C=9(EXYHK3(K(W+9+6V+AA]A)SQO8>NJISUT4,'%_7C/&2\"/-_+=Y,\^J; MRO,U<0%C*;)DX"QI(DXE",8Q8"DEHE=K#*TM_T<)>MDP::>+#F=)?1(\N_@3 ME_CFTQQ7%OX-A%V=@UES$8KL0R64!!=E@%283UIZB[GU -'MU+QLB#320H?^ M'>_KY[R?_W851">!_Q#2O\YGG];419F)Q[+JPR_HUBT1HO,63+UTA1>E?0SA M<8I>-DX::F-K2XQ^>:"LA[F>IH MBL@2(\]:NQ!%T;619^"*:7FV[4,/?"UZ]U._Q:9DS#[2XF!X),,8C8 85 0A M,3"A2D3=NLAG&RT'&[ZSBXO9],-REO[U4YTS2&)?_(;S#Y_#''_"=$[_R6?& MYI)KAR.AE0?EL#8\XDCGIXK1*@P:6T]MVX>N\0^F)HAX8/.V5D$'X_Y>NCSB_.,M9YZBT!:V).?+("(^2I>J1I1)RS$RV]HP?4O$BU3Y8 MO!WLU+L4_1 6D\6'/^<8\OOI/\)\54SV>U@B/T,64YT^"F0XVUK9:R'H.D79 M&U6L(CN)V:XPV$[;BP1'(U5TZ.!VC_GU>WURN:4VI;[GHS\4$^ TMY!2B29' M'UCL;"V-FN7L H"#!7LJ*A'7*$&XEZCBYP":JVPV' ^0^ M*C"D1L8S6I ATUWFG*23$QF=G E+,2&0^_.\ ;$C:S5_\3I-P]S+"">#*F!,44 MH*O%6=[7R9[2@;+D^QJ>E&]>@?V0BA=C$QPHX.Y>YJV@_CYT=;(&MM%T'&/@ M4)T]"H$#!=X]SG2+/G)MO;8N "]$FN+.0T@Q@C%219539,VK)\8%P@XC8"P< M#)%SX_JY&O;Z91:F-\DWH6W4FLXWK\EC9@Y";8[(& ;).#I^/W*PL6SN[J>. M?X&WD?2LB9A:EZ7&\Q_GF"?+FR3[=26GUTD*[P"Y5J"2BN -)A J:2MRSN)^ ME_W-):I;/O\%*+&)Z#JRNA]0Z6O*5$I* M&UFG%2O"MF<&@K6)KA+R"JU#8[%U*F
  1. ^PKGKK?(AD>P15,%W2;?/^"\ZG MM0#O[60:IFDR_51)_# K\YN?O)MF_.O#?X<_ZT_65Q)'@=H&.C-1UY8*@4%T MG$/2=,%E%6(JK4>;'43P^.;!H1J_'YT935T-#<+%?'GV>YA^NMH_ D/VQDE M72=*!8U5$ FLU4(:&64(>ST.H$^]A1?Z[AM6[BSX[&V$IXNOX72B&R)N9I?O M)F.(-;"/-MOOX=U7_P'"OZ^^ R37\."_3XYTR7@=.-B(KLYV(Z]"*0%,U(>5 MB7GK]QK#?&P%;KG&V^MOB, :Z^U>C?R:(*:%Y:;V9-!\%>VWX#$)L+)$3*'( MX/:*?^W0X,;%Q[M0#U+#K*4,&]^,?P]_32XN+ZY/A\P,$R:#9+4YO!9D6$99 MR+K$R)7.3MF]VJ#L4.:=19^?$I\NL\8[\N\DJF^$6!1%^1!!>I^K:T"6G0D& MC(X8G9=*R+W,X5W*N[WH,U3>DV76,,U4(VWOIDN4@1E7&'.6N?NYA(WAR8>?_.RMT 8":SAF\"$UUR&4/>C9;)?N MH!IGY3Z2N*]HN2YYY8DN7T(A.(.U?:9(X$OD$ HC^&G'<]HK MDWK_@Y^QN@X34N.M]6'RUQU2BBQ$-IT1EL=JZA8+D257#2^?4*7B+=M#7_<^ M]AEKZQ !;34GGUB7^R"7IYL9K;7#]UL=RC)'= MR+PNN/CF+-2EAQ7J-F#AID;WP,Z/5\VUXF(Y#ZEU0O'>AQ\Z76C;*'GZ^BI MCYM&=+\IR]K2.%U>7)Z')>:?\,\YILE*KO0OWUS,YLO)OU??-F9_!(+'[V6Y M$2\/)A&-IJJAS:;7?UW_B$3 __D?_Q]02P,$% @ ?7ND5C#'-1 (-P$ M0;H, !0 !I8G M,C R,S S,S%?;&%B+GAM;.R]:6_D.)8N_'U^!=\:8*8* M,+M$B5I8LUPXMYX$LM)&9E;WG5NX"'!U:BH(%&M=.6=,YY*#XZ),_RK__K^_T+?_L!_2GX <@%7XI\_[7X)4Q1'&(E84I8##%*$D@I MR: ,"<.*4I%Q=77W2\13PJG",,J"1%^&)*0\,]=*JE28IC'"U4/G^>*/7\Q_ M&"TET,8MRNJ?__;#U]7JX9>??_[V[=N?OK-B_J=E?I +F_W_[]/ZD M2/*SN>+GA;PS(WLKBWPI/J]HL?I F9QK[:NGK9X>Y+_]4.;W#W/9_NYK(=7Q MQ\Z+8N^I1DMBM$2)T?(?3PG[^0+U/>F[.M35@W*5N1]]Z=B%Z4=OZG[1_""' M5WA'S,4JUR_4VX48Z]W=B+I8]>$U]O5:+%=T/L)KL16SH_+<_.*#_JD18Q[4 M0::5G(:Z=U25WU=R(63-EGN/!KGXMQ_T3[-U">\H?9B]6I?Y0I;E-?_;.B]S M0][7W_-R%E#$,I%DD$>)_H)QA6 68PKC!#&:DBB-4#);;5[MF5S WSZW6E2B MK.3\X&#GZL1\+62Y7!=\^Z6[GQ_[?.DOE_G693\OZ+TL'VAS@U;6. 6U_O_> MJ@EV] 2_&TW_[[_^O+6M/Z[SL=":3P^H)=]39VZ>#4;XN6@MHP<\,0G/%SWRI?:2' M%=P;#^-3.IFZ6CJ](#7 6H4?P+(0LM ^\!%S#E[:3Y+/:5GF*J_=N'=:S6NN M7>/UW%#6S>JK+%XO[Q\*^54NROQ1OM=.];U\O2X*[3S77PS]?;Y17^CW&8JY MPD0IJ'BL&21+,20LBR$5-$-)BH(LC%T8Q*=R4Z.=Y[:58*D_6Y+.\__6BQ'M MH8'YLBQE"59+(&FQT.N8THV/O ZM'8F]U( -S'S/S:H7B#N&@^):KZJ-2M!#@/J1X?8I*(N55D.O[%?2 M;(A4/@OC2+ TE!!%<0!QA"+(A'9HN0H0C2CG"4]MF/S(LZ='Q(^YV30R<_)6 MPUDT$]7)!SR&83=E7HC,X(S7#Q1KXNHPOXMW]&T[G*/_M>6;8T\]E$LYCM>&P+0@0FM5OD*;)0&E=978*/WE5G!,PEN:2[\D9@K5)[8RUKL MJ+3E"L9SOG*^OQ]1W19+E:\^+,MREJ0BC(F,(4-4KZ\D,NY8FL(HIB%268B# MF+BX8]M'3\W3,KL=>;5F=:.6';#LR*,?! /3@[&^7K&#'XUJ/UV9?\[7)BP! MW"Z+:C?I>K4J43:7ABP^ZK=^N5AI_>;FLO<+/4YZ\>"// ZA\D0/.P\> ME0 .#7H^Q8]<9C1BB-4Y@H)B'. MD()$B@P&,0_UK,:9]D'<-L&[!4YMPC?Z@DIAL*LQ^+W5V7$5=19SV]UI?T@. MOO]R"8@]MH_MD/&V)7Q&W,C;O';&'V[=6M[7VUNH]^#T*NG-9<&6#A[$27$N$V-7Z'#S M8Z,M4,L"Z%6FR-L#,V0[:8/?W@-3!Q]H;(F"3LDCM!#*?F? M[I://^L'U,R@?]@2PIG'CD(%=J:U)&!YM=OTSYG9D"W->;*FE5_E/9/%C$J< M2*HD#&,50!QG&62)0C".$L(ER@B*K8Z#CCU\:E-]JY_=K#X*6/=[Q2*0J7 M"FI50:7K%:!*?T[VPO*N[\T6ZW]WD[_S8L8",$]KF2Y)HRYE+$Q^OI*QN<7= MD[EF\WK->GU7R"J8IODJ(91(J7@*TTS%$(=0Z'#/SIYZVA^TCGE=_VEL]?VW0Z62A;ZP54HS>>O5(_[S7IE$G+- M8:+VG5 0AY1#A2B!.%,8DB!*H!09S[3S%! 5N)TH=\J;&A5NU 6ET?<*E)7& M8+E5&?R8+YI?G][9[(6][3ZQ-T0'YLXMF)]K,&MEP8ZV/K>&K6#QMCO<+6WD M#6(KTP_WB.UNZQE.MUSC C&34AT9_8 RX HT)3U? Z JTLAY#ZRZ RE>871\5Q@VYNP"D M@_"[2Y[5C^2NY_,JM>JSO*M$-$X]87%$(RY@C'D$<8"H=J*$@B)) I(D/$D5 M=Z&QXV*F1E25BFY,=0(_.RZZ')6!V:;.YFS5.[]J=*:8;@0\D<@)(:/21+>A MSXG@S-7]IKIAE?>+ M)OOE\$S\%QW1,9YJI\VWM,T/R)@U"E^VL#GT[OC MRMYG2?E*?L@?I7B_T*N?NYS-ZQWF\J-<[6[^-[%-G^J0ZM9[W,;L(H0PST*( M98P@-HF11$01E'&64<04CH55#(QOQ:9&([5=H#(,;"VK#V#*JK+!KG&;D++& MO(W;WCL2V-N(6Q^-C3Z.PY^C:9/@B2&LJE-<'1W$JUZCV.=PS2OD_D[B_*@U M]K&=5S"/G/'Y??[E,06;O*T9CE :1DD @Y HO9A+!*2"AS"F*J8H40FBQ"7= M\Z@4)X8>(;?S5C_,N#&/=+Z6IGJ#6FNHI9=LS^,P6S/I9> -3XN[X04;%8>) M&CA 8(!X@:V,%XL4.#"S*T;@\&*O"5H- 96FP,YNML9?\]77W5MF*HD2S,,$ M\L1DB6<\@H2&5/N"*B$L9B*2TD/^EJT^4W,!/UG'&/@:$#N"&1'F@:GH9.[7 M5>N*E74!LKVTL*I\]=ZM@Z>'N6([;/:8M3932"YSA\OFRU [&9F&5$"%(I,S17ZK7TSRBD,9I##.]4>M3^.<<'OZ*_)R4-'9!GW,F'RG><_86 M][C-U\O[^WQ5+3JN%^+U8=$> MF(>F!;1]>.EP@(\4=+H+/-7 \SW@Q<8&3X&H_?#J"$]U?.!H0:O]#-T-9>WY M!/>OPZU^E[[24MZP>7Y7O6ZWR_5"E%^6KV3[-_%)WM-\H1]XH]YIZ71N0D%F M#*41YJ:46T("$_?*(!%(PC2,,QR+0$2 M.!3G/P[C #SPAZ)5%&RM,$G1Q@[P90E>2; QY0ILC $W"M3F5"%KHPR(_4=D MG($9Z8,R[ Y?6PNQ[7CPW/!PT?["%T.P.X'R+(CHB8VJ?E:V*M:OVFI9?MS^8 MPJZ/=.Y^L'0,7=LMCHLP&WQKH]4._&[T Y6"7G28A#CB -$84J MXQ@1;DIZ.N4^V B=&C$8G4&E-/A54J-R_=;7VKH&^=B@;GGL[!G+H4^A>\+H M?ACM@(NOLVD;D>,>53N <'!R[7*O^X*X.A&O VEF09*D@F=Z22M,P;^,,GT$I#^S72+ESG5Z$]01AX[E=:-6%X M_2RW7^[U1&"D]=LG^5!',6DG\^ZNJ)IGFE"FY:;&NG$Y51.QL_O&>-HB/ )/ MQS)L]^K1UE5'5-Q=*!W[LX_TB5>TS,O/>GBHN%G\A1:Y*2/Y28\/FF$2$)Z( M$&8H#B%F-($TX!)R$F.1!IA)5.U&Q3F[?V1ED"_ MO5Q;XIA[;HV_G4,T!*H#$^.S#(TK4&D-:K7!<@%:Q8'1?*C,C?-0#9+/T2'V M!;,\SH/1G?MA<7_/*AE-8.N[97%;++F4HHJ%J;+*ZN6A_GQ<\U7^6.68S@(6 MR$0A$]V'L28M35^,I!D,<(1ER#*3%S+;;39]OLJ#FP96\^QL6^T7S@9U1=V. MJH9 3TVKT(T!8&N!QYH:_:#S56/#4?JX-3?Z07-0 M@Z/G8SPF..PTIC$[W._TZSM+*2"I.6'ZG4P])#<<@]ARXVD X(;>?#J1 K';P*JIMV$T'S@SH@.K(9,ECHE] M^?R)#C"L4BJZ[N_1+%B_-;*I^, $52''$F8Q3B%&)(89BS ,)4]40A** JN* M&<^>.S4^^6SV/#2GF]/A_AO^-#V2UH#[SQMO+; MAR;LM00^\N=^#L*V;,Z-VBVGLXD89SPAB A3Z()F>IZB &;::='KGCA,9$"R M3$4NCL$Y@5.;P%M]S4YB54YJU9:3ZAVB?Q9U.U_!)Y8#S_PC,'YQ@='9-[#% MQI-/<%;\'4A0M/FO,CYJJE. M>&T:_'Z4JQNE5TI*YB89N9P)S.,DE@D,4^,UD)! O3@)H8Q4A'B %.*9"QM= MK-'4Z,K84CGC>I91HW )'@KYF"_7Y?P)\#DMRUSE4@!:@GGKY;57]JYS>OG MVA'>J,,UN"^DE02U,:"V!M3FM&5338QA:U)=4!541E6U-LP [QCFCSB]8>R) M62_79U3J]0;?8?9R85J+W>H7N&HM5,A57KONUPM1;5V]O7^8+Y^D M?"474N6K\HO9F)_%+,0LDAA&D>)0_QA"ED4*9D&INWM06TQH#?*W,<$H?Z#EHW%8\T%$-OM$]^%!Q"\(B[,QY\6T=4S$+9)!Q'F8PC*6$.,("9CA,84*50%G&>.C6=-M5@:E] MGC;ZU^%1Y04!*,YC8;<&&!+A@;\Z6W";HY)6>]"H#UK]JXB4*]"8X,^Y[PN> M)U_>6?RHKGM?<)Y[ZKV?XR/0[GT3/F:>;[;;I6BD:-FS@&6AR$(&19:EFNUX M!&F613 (TQ2G422%7=]%3X[F/RY4FMP?Z5,5_'<;<42]1=YV#84=WPT \ M,-$=1-ZU>C>\5JL.MKH/%7QG@]<@X7>=@E\P ,\&D.X0/*LG]-P?YE^E6,_E MC7HCB_Q1<^BCW HN_TSSA6DX_WY1R36_,YF:YM@ZIW.MA5H6]V;S+U_0A7]&YJ2:S7%0;V[,HB4+,TA325&402X4AQ1)#_4N!N!!9 M&CN%(YP7.36&WFJLW==<:-\5\%IIQTX\Y\&V8UJ_$ Y,G3OHW3;H-?I>@5KC M^J3-8\L>:WA\M>\Y+W#<5C[6 !RT];&_\U*'\]6ZS!>R+*_YW]9Y64DM7SWM M_&NG?(<*B8A1#%,L%,2"2V5F!HIM3:84^G6"C.? MF/Y:5&;T=1H=QL75+QP&[:&C!HX!O6O!%6!/N[\8R1%T!].[K^>@P@NY<^X@ MG?;8>CRK1_%56GXUU/MN630%"MXO^'PM3->.G?C=&[47-9[+Q1%FQI59'U4GU<9O*N5L--Z*H 4N7(F9PO M6ENEW9+:+..?K+Y*<+\3+*UG?IVZ/M_:]XM#/=&+Q_1\@,"HXS0PXU8#5/F* MVAK0F -:>_0/>Y'L-ZH^VP$[1CF'"?L9)H=*L&,.UUC%8<_.JW-SRE?96%_@ M=E62O5C&>,5E?<&Q5V_6VT-[AAV8>(:/VGBM1UT&O6FH,(L4B6(F)$PRFD#, MD()4, H5QAE)<9I*QML\\2\.80:G!%K-Q/VT\"]CA!48?:_ 0CJV@#D-K&6P MP$4XC=DTN%$2-%T-?FST/+W;[G[V?PX+7X?\)^6,>YI_SMR#8_NS-[@[T.9Q MZZ+0W'/R,\WCC&"4$!BI3#.$XAA2E$K(I$)I3 BGW"KSVD[IY']4O5@-SA%:V0VD!H;W_Z!?*\8N%+?1+V!APZ 8"VMC@R1^T M!ZO#X;-XR&@>G;U!NRZ;PUT]*_H4INS;ZLE$H)J84U-D^*&)/]W-=?]DPK-N MU&]-V;-KI6GOFNM7<%VUO7IC7A.>5R^COG.W->DLH201-$$P3H(,8BP1))@Q MR!$6@0P5#N/$92=X>)6G1O^MQ55A/MF:V\-1'&&T[3S.:8WAP)^EUMBK*F1? MCYL9QHW%U;_VBH. RFJX5/"WMF2EOL>8#G9L![O&5P_9-=]CL:/1ALI7?:3A M%1ZWI-)H W!0A6D\R?V^7E^*:MOBJ3KEK.H%5UO[A12OE^7J5[GZNA2S(,0! M$_K[@S 24"\B&*14FKWV.!$IPRS+N%L1.ANQ/;88AMY#KP_NRRI%MI /34,' MMR^(%>(""?U1CPEDF200LS"#E&02!I(I9-K\*NP43^@-[S'/>DW&Z0[,5\WN MZ@!PVWUR?8,X\$>S5;<.-+FJR[9?@59G$X=2KD"MMK^/G0M(GCY75B)'_>"X M@/#\D^%T[W#5^K[HP9$S)G&:2,Q@' @.<10DD+)$P# 2$C$4X=1_N;Y*\M3( M2+]TB?]Z?37(=NPS"'0#4Y!#Q;Y*]7%+]NVA-6+-OEKNY(KV[<'1IVK?_@/Z M4=,G^2@7:UFWR*J+3[31O]N>6F:_W-2@^)+?ZTMNU&=3[4W5K<3KK/90T2#" M"8<9B4Q+BA!!RK&":11%@LDT#I53DV\_:DV-U!JKVAYS3668UK"][G2M;: V MSAQD[YKG5J_ \V#;\>?X0S@PN8XX>L[TZQ=L3]SL2:E1B=LOD,]9W?/3^U'^ M1[FJCT%-#L@L3M-8H3"%+&0*8BH8)(A(J%+"L)0DT*M?FV9"1Y_N1, CM!0R M];7R2CLWXMR'+%(\1"0)("=,.^DD(##C(H$1(RFAL6()%7:QCQ>#-DXLHQ_8 M[#X;O:$8^J16KC8Q''4FWO5J5>1LO:K"L+5_?4L[3[N=.?TH$IZH>?_9HS+L M4;.>$^7QBWJOOO.5=J(?3=382H]IK@>L;H74KO2O2SUXJVWP]4Z&0^WRI'KQ M+4A"H>!*0!P@"8F()0Q"B3@G:4214WJ:!YVFYMS6)L'*)K UJFE@MMD&,P4J MC6&G,DKZ>;8^QMAZ6V#,D1M^PV"40>NSG^ +9G\[#1=K-/8>A"\(C^Q.>'MT M/U+_H!\IZ^V1-[+D1?ZPG<@1CFDD.=;LS&/CG\6:K&4*42A3&4219)E3X[D. M65,CX5K5JW8#<$?=?KS:!;,=7WH";V >O W9VJS0,03975)&I6*+$Q^3C$V MM_2L1K!8Y2*?KTU5A,^2-X71WWZO$PM,TR;-50_K.D[Q1KVEA5FJEWJM7IV0 MUHD(LT 0IJC"4"__$H@CHF"6F&A?0K,P8EF F=.)L1>MID9'>P?X=05R(!N3 MJNYG@-,Y-S$79J9IYZ)"0/]ML5EQFGI=@#?/J4ZH>U#MWFCNV&1&L[7*[)/6M<^OFD0[CV48? +MJU*#%YW&+>;@$\:#>@]> M'WZ)P[A[K%;NE'Y@ 8ZC,(49C3C$640TF0OM0&(9J3!2<82=CJ^ZA$V-HVOU M^KB%)\!T\0LOAV@DQW#O9-T4IAZB[((-)EY=PQ.B7L W[#;ZN'-XYIX+4CZ? M+VJ;]FQ!FE$>4KV2%%331$PX)!2',%)!Q!1C:<*LVAY8R)H:2]3)C/E&U[)O MTN<):.U(PQ-@ W-&V]#W^6[:[[6F'@G# @^?R9\G)(V?_MEM\M$$T#.W#!#8 M5Y_RZH>9XGJE7NB8F)T9"N,PDSR ,0T#B%&8P"P-!)1"T31@4B\GG=:-[BI, MC5HV2IHE@WGQ/,;]'1\#ZYW^ 9$=?F/?(A)P#_K:CBHZ<*2XP$X0QP@0/*[ M="(%.P%R"AGL?M*E5?9.]1>LMNNV*X-$97%@(B4D-GMF6::Y+XXY3.-0J)#) ME&=.33E<%9@:\^T6?>OJ1]JWR)[EL-C1X9!@#TR&9W#>:5@Z2DT]-_R\U].S M%/]"M?3U)MBWC_H_7_13KK_GY2S->*9A$) 1&4,< MQ"G,-.=!%&<(TRQ2>K'H1'3'Y4R.SS9J@DI/8!0%OQM5'<\=3P%K2567PS4T M(_5!RIURNG'PQ2PGI(Q+(-VF'O#$FZ7?EK5*2FTWO-Y)7 MR\T(:?3B9LN#ZA5?C*(4:N\GA3@AH2EY'D-$]"^Y8B025F$*O:1/C3KV&LD M8P(P-ER!C16@-0-$Z,JL$V/[JCCN@]---(-#/C#]]$'[_/:5!]CM:Q,-"O]( MI8J\OO1.Q8IZH]=1N\C]F:.5,NIM[FYEH_X/<8\B=)_,+\1B8 MKO>TZ\'#QS"Q9]H+L1F)2_>T]%32KA\BZ7=5W6E-ZLWH6FA;T4LRC&.#(%;M(4(8BY0)"I+(*)(C1F+$UY M&KC5N[E &ZMW>]0R.)^K>GK-+CW?#:FCWV@A7'MP7#!0ELOO@<$?:8E>ARO6 M=FRJN52_A94!H-E;!]=%H6^4=86[C2D>E_&7X^EKJ7^!)N-N!UP.V<&6@8=' M]J/6(RU!;HOE.Y,X_#Q43NN0\YD028JR)(0RE!QB9:*4$\$ASY!*HSB.>>!4 MO])5@:FYDI52SV.*M\'$OWU^L_V-8TRQ\]C84>B0B _,F\>Z%UT!K3VHU#\: M%%S9X(\P^Z+GB26=Q8]*C7W!>UEH MT6+-39G'S[)XS+E\)1?\ZSTM_FC6.ZE (69*0AX$IAQ[E$ F10IEQ$*NU](9 MPU:K9T_Z3(TB&W/:,/[:(/!-6P1:DZI);(RJ2K3CL:'7&0 M!F;5R\=G@/!#3_#Z+3?36YN7J#-S*70G"LQ<_-A^'&VJ[:Z>C N\7.C%T)NE MB3F:D8 CPBB"/%':&T4\@%0Q 5.HU*FQJ>UDF"C)?B]UM/Q M'/PXHG;D=S%. U.:.T3.!-4)@2?:.2YC5#+I-/,Y171?["T.IGE54<:B5(H$ M$IE@XW8AF-$TA $ABHLPDA0YN5TG)4V- $Y$>/1B@=/P6F[(^0!MZ.VV?GCY MB(D9A!9.RWGIN)AN>CA_0\^L^Z8N2$?ID ]Z/?E^)>_+69B&2K 4FT!A"7$F M,TC"5,&$!#1B@J?:;W!*KG<0/C4BV=3@.5.KYW=C :A,<*07IZ&Q8YRA !^8 MA+QB[9[*W@,T7QGK+J+'34SO II[VA>5 <#;_*2SY>F3^DL MX8$,HSB#,8T#4T).^T2I"B%G2""*0\J44Z'-DY*<"&R$HIM?C R@JNR47/]$ M*\4=*>HDK)9\Y .LHEG)0S+G^<,_> +,[> M<$D!BIL'6=!5OK@[*$&!,$LS&4&62KU0"J( DBA*8*+B*%0!YZFA!]<2%*?$ M39;Y\\9ENXT,PSA 89 )&"*>F0#1 &9Q2F F9!+AF&"4.1W[6\J=&I?LZF8B MIJK.KZ*7VV&+O!W7#(#GP*3S+(O\6)?'85HX.D(U0*YXE]072Q"W@*(K*]SF M]KZG\U7?1%/R]:G9FJ0!E9QG$F)-/A!3S4N49A0&%-&$AIE B=.QSZ&(J1%/ MHV%5*?FIYU;O$2!MC[HO@6?PTVLG9'H<1)\RWMO9\H& D8^+3QEX> )\\DJ? ME9:W&X(TY@F-M)L11Y)"G*42$IPD," )"7 HXB#NL7 Y*6]JD[ZKD[:!&HQG]U#M;W-0UODNFIPM?LR8PPETB2$ MD(PRB.,808I( )7*$(IDI!B+VM20+SW[\^[(LYH3^\D?7T8@F4UKV2KMXU\ M70&^+%>_@/@*A=%5$B=5S%?]KR"-VUK+^KI?]5A\_:=_1$GP+TT*:51=VR8L M[OTIO +ZMHP M#JK_O-*?K]%'\KGLX<;SU=L_O__X_N.?P:OK#]@Y1XD(PGW@WR[Z-!3W 7LK>/N=:Y?[1KW*YW.3 M3'.]$.V/VS]6USXKYQ$(J8=KA<9O2%^DR- M!':+ 9JFCK]5F=6M*6Z4<.E0V;'(B ,P]#I_4VYQD\*R+$S:REU![W>B'08M MQ.@)3D^T=JDVHS*A)^B>DZ>OQ_;EV\-$F>I\1+/#C' 4RY P*) T17<8AY0& M(904"T*02K+0J9=5FCO8Y.NU$U9;W_& U,*F=RL9K#DBITF,%KN?S MY;?J+%5IQGM=2)&O@&ENZY/7SL/EC;0Z1(W,2.>-/J0;BWOZ<J- M+/.[NMEEAM2,3'X -3"2]L'*FB7- >**(DV)&I8=SQCZGAK/7NY?RJ[J/M#3S M?E&NZ+SN=]ADLA,>J3C%%*H0I1 +R?5*340P2(DDD4Q8$%@U%;*0-35RJ-2U M+V-W#LEN(O",S\!<4/<0:E4%N[KV* !X#CG[8H >$1RI,& 'DGZJ!%I"TE$Q M\-P31JL>:&G*;B5!VUOZ)A8_/,RKRFIT_IJ67]]I+_K]0IDB,T;&-2LK3V[& M54P0";13E?$(8F1^4B*& 28A3@*IHM!IS\M2[M0(=5=M(#;;*56K"Z[- $K; M ?*M(:YYR':C8>>1#8#QP*2\!Z]1&1B=P8[2X/=6;:\IRTY >4M@MI,ZRR!^I":$P?%A4'[E/>?E'W1HD3>(091Q*K'T^G% *:MKJ"K;*]CJ+ZX38CGY\ 3(B:IZ3M+ M(4\#DJ24)0P[)?::."UG5(XX:^YS@CA_@_L6TO%3L)O%;Z::K79H5J;N<+VG7<[B M,(L)ERD,*$<0RS#5#@9F,$(B"2.&1$PCNV+JKJ*MYL*HE=-;[?62!\A*_[J$ M>KDJJR!86:[R^RHS1;95:;4/O][:IJ]MC ,_MC^">=-<,Y>E9;5@YT$\OY7E M?6!&J@[3BY:R?=B:SJN6F/49&B,L%A%.89I0!7%& M8T@#E4*54IX1&5']Z7!+XCHE:FHN9J4IV%$55/%)_% MK$>6UCDTO"5HG10T4$"@HKLK3<)B)1,*8 M!DDJ9,I"Y!0'M?_XJ9'"3H!T+QYX!I[=W.\/R<#SW0&-W@'C@TSK9P]_D:#Q M[NE[XBI_%:8^-&N5IZ994?E)&DG"+%'?Y26G\__42Y\94QP'!$L8B8Q#S,(0 M9JD2,&.,)UA%BEQ>?*D><]G_ND+^_8FI:OJU/]& MM:?^Y298A:$P07$H(,%4B\-?CL$#5R!\_S1A^VZ+2XQXU"A,QG M;Q[Y>//^A$U3^@?MO1P]L&C4(.M>2TM6%_?LRQO6R+\_>)AO2H_R$B0-35BJ'2KJTHAQVJ['8#: M.0^>8!J8";8%_J] K:BI?*=5!6B )HT6F/@JG]LA:=R2N>=-/BB3:W%+S\5' M4V_B1GU." MQ]/@6JZ-QA^RH9=1%X[6H(5"/,/M:XGF2:MQ5W-^H3Q8^'E^?-^\#Y4OFG"= MG*VKCNCZ;;\6]_DB-ZM0(_KM]P>Y*&4Y4PIE<8H45"S4"\=8ZH4CCA$4/ V9 MD@RAV"GDQDGZU%A[5\NEB=6LU 1%4S=\M03R_F&^?)*RCLAL# 0/^BFNF2,N M@V3'RX-!/S#[-GJ#7<6!T?P*[.L.&N5])IST@,Q;!HJ+[)%34GK Q.)/13N[>J.F>RK1=W>L\=M2W?,K(-6=$3;WTW;TB7_#\82XW9W"S#%.12A+# M-$9Z 1J%IDAL%IM*L5$@%,$HP$Y9:)=J-#5"T :!K;Y@WR2STUL;99)1]BYK M[+K@K/WRP;7CGU&';&#.&F6TW-/K?"'L*PWO8GW&3=?S!=]!6I^W!_>E[Y4Y MTJR.+H04KYY^*TT3XTUTU+5IV5"EI,T$"=/$U/^-PTR8"@,1S*@*8!0I/2D8 M$S%#+HV&[44[$?((G8=->=^J[,E#HSM@3SN9Q'2CN"O;6H^%+:T.@?#@_+FJ M Q]N=\#]T6BN*?.GG5#.Z_,P]Z!)5\2\\:&UX)&)SQ600X9S?D(_*CL1T?EZ M712:3F=5('H0$*A2A2&6&8&$H A&BI,4930-$)D]RH(M;1W-;H$N4VI7[' S MJU$,W-/5NJ@0WZ^ 4#4T!4LVS^]HCS.+,_A+1O4W VG\8QKHSX>@D%")368@ MSY#*&)9.?1O]H3]*2<)66Z^8TD3QD+,8ADPHB%..889H9AKQ$!&&)!*8]^AB MY0':\7M9F;#N7T#[CF_?8K"N OKG/3J!GT'?[B/L[ST=^,/;E231:.OO0VN' MBJ>/ZQEAHWY0[0Q__A&UO.O2NF)5M6KMZ9O>>,KD(2B$(!99#*G(,*0)PU1J MI@ZE4U+F=$V!5M37.J49I4X?)D34.X+0][.D/TN#G.1M\*MV&J ^V M;[3WFF#-XU^H#MB^<:=K?SV[KM]T?K4N\X7^&+Y>WK.\+C:MG>]WIACA3DW" M3_)1+M;R1EWSOZWS0LK/)G2Q^D=]AOU&?[BOJ]SO69)$2J_^ QAF(858&3Y0 M408#'JA8Q!RGJ=.1LG<-IT8HC>INO.%_W.R(YT5'8V#F:FT#.\9=F9T%4-FW M6V+59']6)II%46LD*(V58,=,8.R\ K6E_HAPL$'PQ*3^]1N5B@>#]SF7#R?H MPF#R7ZN6C]7.LNE/\MMBR4I9/)HXI3HT]9,T6&JWLM&0:]]2.YRO:)F7&X?S MLURMZD*WY2SB([!OJ_FP--:" MRMR]E?6.R0/$Y@\V++Y#^_TK^C*9 8,!?C*Q8#B)%U6#*U>;!-TD4Z',2 ) MS4*()3.ER6D"LX#*.,,,96GFMO-^(&-ZF^WOJHT$V6RJF]*@O_2J^;:#HQTE M7X3-P$S:;"Q6-2*'R&@^:;O?>FX[SW^),FZ'YIVHWG;DPIZY1E]IH:=M:8(_ M[TU\9]W6H"A,?((AC5=/VTN:$BI5D-G-0W60]'&Y>)2E=JJ:?VM_6,E<_[NM M:ES=7P!NS:#':--F,3N=8WAH++< ME,"J;+T"&^O;7X&-_?J/FUKO-08>DY[&'31?25$C:3UNTM2X0W&05#6R>&^[ MZ,:1OEOD_RW%>Z%URE5NG.QZS[[9R!'7"]'ZU+DL]=_6]]K.^IBNOE(_1>:5 M>U[.4(J$XF$,*8\EU%\^H9WB(((\)BQ&A/. .,5$C*'TU/;:F^#($A0;'2_> M=_<_TKVWXE]T_%YD=WYK,=@UN3YZ+-NM>5$U6M@Q&S1V;X(5FANJ![;&#[IA M/]A0#;>'[U_EE][6'VP0+';ZAY/MWMO%%.S^L*2+Z[M"5E_5IN"))&$:Q7IU M%:D40XQ4#%FB4B@$(@F1$G%F55>J0\;4OA!5%7FC)]@H:M_[XQ2.W83N"9V! M^?<(,#V: )]"R+X1B@>D1NIY4B$V-XC15M<_^6EJ<@:#COXEI^X^/?MZO*C7?G:X)NBVG];Y[]9O/SL,0SKNYX7W+'\QGR^_F7W[=\OBS7+- M5FH];SHU)MOJH M+6U2K:(418D*&53(9*1@I2#AB8 !3M*0,(91S)WZ"!T5,S42,UK"E5ER"JVG M8_C(<2")0AB'.(%,AAK(+"8PBZ*J\QH*HB01(4D<8W$NAG*<@)Q],*_ W'BQ M_" EU@O*EI$Z%R,W=+B.@:S:\GA30?;V.Y^OJYJ9[1;[K^=Q^P\VXE81RC@\<7(V.VW[3CK=U"SG.K]L!AZ?EL X#Y]#TWU-6=WGCSN1#TT MZ6!V'KG$1QF+O\K\[JM>NUSKCR2]DW5;LO:/A@[03'_18T8C#CF-%,2*ZD\Z MQJG^#V4$QR0(LZ1_887S"DS-:[K9+VA15F%O3Y(6KE%OSB-AQP5#XCLP81R4 M"&BU!XWZ8*-_?475P7FHJ@'VT U21\!"_ M6%K 'I[O6@,-S+H@M?G4^'.S5 M\W"P#YLB@TG$$IR0%+*49!!'1$"FJ#F923&1*B4<.U60O%REJ7%B'1C*+ -( MV6$ Z05%)#T,L!VQCCML U/MQ2&_ Q62] >RSQ#=RQ0:/_K6"X!' VO]/-D] MWNA:_-?:!.7^N5B6Y6VQ5/GJ5NJYL%CIK\:,,ZRXB 7$F'&()<:0BDA $6&65-O4BM+7C8J&L?9=.-;S=!>D5MZ&.%1D]0 M*0IJ3:_ K7?([,.3O$$W4I!2?PB=(I:L8.F(6^J^?[3H)2LS=F.8[&ZXK$7X MK7X7OFJ:WE;^K:76N?D4QSP+!(&I4-K?Q32 )&(*AA@QJ1A+4N*TXK>2.C5F MW9;1OFN[9XNU-*445O0[D.;(5\^R?KW%N^&W\T:]@SHP\;;Z:J)H--ZM3[ZC ML_^^Y%80>>Y5WBWS1?J76\%PJJ>YW6]QEQ_&RY2WM%C=J"/A-L^:U 41CA*$ Q@GYN"!QQQF%&&(XI0AGLI0"*?R M8L.J.S4>?%NN\GNZJHOY;B+MMF8V07B.A66&'7$[!IW.. Y,O;6AL+*K"E+: MVMK\\F X=V(JM8>G+3:C?RPX<]!.AN.,D*]:,\,J.VZ]F5& /Z@Y,XY4KYTL MWE?)PGMUYC<%53@/ M4//EMQ*8ETY[UXWJOIM:= V+W==A6+ '9OPS32XV1NPTN1BD8$Y_$(?M>]&E MP!3Z7U@ 9-D'P^9)+Y\5931OPML?Z;Q:!?. )I$(,D@1C2%F 8)$9!+*,".9 MC!A#V:5%@3VJ.T6B?<$R!8?#:4>ZTQFD@0EZJ-($AO/;W*;&ZFEF-YT>G0FF M-1U1]N\VG^DT\(-6(#@MU>WK(V0^>ZLEKYZT6O?+Q>>5=NWKBCP[+=-G&%&D M>$IAPDSQX#"B^NL111 E61JCC)"(29NOAYVXJ;%_K3&H50:5SE=-Q2VPH[;= M!\(2\6Z"]X_CP 1]*836Y.J&S!%R+"7_T]WR\6?]H)H7]0];.K1\_"ATYF9J M2T>.=_FK8UYN?OD?N2ST([\^O5F:\+19'*4RC:6$:9PPB''$($L1A0'FE"D< M9M(M(,Q)^M3(9EN^&FPTK7R0C]=_ ;_7.CN&=+F-AN5N[U 8#[UY>Q&\7DI[ MGX5IP&K=IV6_> 'NL[#8U-0^_Q#W6*F])EY5Z@WAF"HL82"(]H;B!$,6A*G^ MCTAIJ()$2JO4FV,/=Z*C\7)OJNAPYPRWZ]'"L!]6WEH<.HH?N05B/W .6R3V?$X_RFOZ M<[W3]KQ>+JK#&--;Y?6Z7"WO97&[G.?\:1O.PI(,!9'*H HRI=TW)"%5)(04 M9:$(D@C'W*JF9C_Q4Z.[MHU>=8#K?.YV9Z[+99BS5=EXR:H M!.%4T @RA,WV/)4P(Y)"'*5(QB)1:6953NR,G*E15Z4J8(VN)EVG4M9^2=:% MZ?EEJB>D!B:@&J163=#JV:-R[05 MKH4)NXM=F\O[.8&W&BA9%%+L'&B\+TN]8)LE":(BB1 46!EZ#"FD(:Z!#V^:;\@7?>M,B!BK*$Q@AJC9_(HI MS$+&8$:9P"@3@:#(-L1A]\%3HX16-V"4LP]9V,.J>XY?@L# ,]K.>*=@@V.6 M]@HKV'O0: $$Q]3?#14X^O>>I6-,+ULI;AYEL3!5:NJ>J]H/^$17\O-2%9N_ MF%R%[Y^_T0?SE\;#1!'%-(I3&(4T@3A1$M)8FA"D.%1("1DAXE0UYA)MIC:I M&V/ 1F>P,0<8K<&/GV_>??IIY^^54?BH1E@ M$]P+MKX*PERDR[BU8'S =E &QLM#+R_?O-V1C1(N..4)3$RG*:QXII=+D8!< MACR0-(Y8&O2MWCS9;?#]XKG]RPJ[;FQ?#,[ ]+6/"_A]D#WJ3A &*"'\0CO. MG69V%1#VE739N^24"31?/;U?E*NB\@;+:A_GRU>Z>-[E]=-R/G^W+,Q-LS@, MTS1,,QC)@)NX3@6I#!D,HR 3D5)2\\LHA?YZJ3\UAJHL<4SG''G +3V[R0[C MT*[@Y7W!:PC #@:@WJ)>:12.= T_[!$.?C?@@ :=*90:O&A87[HL83_E_SY* M&%XT,-[*'5ZF1;\/Y6N#K#G-K;*T\O*/5W+!O][3XH\F2)ZA$ 4)U1^T*!,0 M(\EAQA6%22!%3&(X*M=SD[3P)B_Y?&F2&3;E-6C ,J48 M@XB$$<2QV?<,<0:ET"031@1QQU9QYR1.C6J:#1$Z![12_1?'5G!G$;;C%:^X M#4PLM:Y78"?9::OO()5)K-'QU))QB&D,98:*7[ F%C 52^S44,1&*.&1.G=LSJJ MNEV!R@90&0&,%7T3-!U'R8ZQ!L1^8/[R#_LEM?)

    H3.[K5(:4XA8Y800H,89F&&(289@Y1STY0$IV$895DBK>(]3@F8&I4] M:P;D$/9Y#+UN!O*!R< 4\PR./N&PQW!QB(.]$)^Q F M7QNWN-<.V[L"7H_= M-EZD:X?2>R&N7==-]MSF6>.H/^M'K][0E=RXIK.,RDC&)($21:E>B :F*RU% M4%(1QTR0+,5LIFW/E^+SBA:KR9SIG#7-9=H]-W"XF;?1WS0@4 MM\F<87I]@_XGGFP>=+.L( (&HYV=K[^K T[K,?_[.?8\;]+_M,-0ZT%\@2-2 M>]UZ>JIZ/5*KVE2[;#JJE=??\W*F0L0SS&(81"*#6&8!))A@R+@((Y:2A&/J M%!#4)6UJ"_!6-_"[T2()DJ'3B82+\*E12*LL:+1UC 9TPMTVVF(8- >/O-CQ4:L"W\^0!97J X4[ M]P'-6U"&@^B1 S3<03D,UNCQ##<.*XO5K,U;UR(^R^(QY[)L#N:$2 B.1 "S MJA 'RC#,5*P='$01#CB+$LELR*I3RM18J5&TFD>-IH[GH-V@=C.1-Z@&IIQ> M*%E3BQ4*71RB'[##'_I?6^[H?O8H)&%E7LL&=A?WK9/_^:NT$QX]*M@?,_N"BO5[CQNY0OTQ4PXKTA^]JM\:HV[45*]8W +]CMPY MH7=N1[M! ODZK/?D@AZ3,*JGV6'BRZ]*>*;=Z*2WE_AEQ6_SWJ=G3*]^L MY4?MIW[Y)N>/\M?E8O6UG,59+%(6!1#12*^#!8DAQ1F!A,<\I '3WJ55"Y9+ M%9G:1TF_7]@Q7;?O$-CQQQC #DPRM0E7X%GPQ]6F\/G3E>GM'D#=$NA*FDJ07+!<^U MW[Z)B:X:T,XBR7! L8 )$Q1B&660T%1"DE&6,1E$BEL7N[07.S7:V]$<:-7! MGNY[T?Z5^@YQ;0Y#T4V(PP$\_.[@RV-K'TDX#,8CQ1=ZP]HI -$=LHZP1(>' MC1:LZ&[@;@ACC[M[IK]QOEQK*9\DE_FC>> G.:T^7<@/*5-&+L9G8#(Y@&: TGV=&'CBB>,R1F6%3C.? M7QON5KM9%U9OKDWQHEK\WZK;(M4?T0.?O%V;_XXL&7R].XU"DE"B( M9!Q!G)@JP@1E$,>QRE04B0#UKIUGK\;4.$._84G_DGH.\%ONT T.ZM#[1I"D3%-:R!4DB 50A"HAH> H26/;F);C(J9&5ULM0:VF?13+ M"0R[>*@DJ+1U# M\(\":>=Q7 S/P)/[.3)#U!SO@L!7T/U1&>,&VW>9>1!DWWFQ^Q?\]7)1+N>Y MJ/;LWZ_D?1M"R3'.LH!A&,="?\,1,TFT/(21"@(4<9D&TFJGHDO(U&;[GIZ@ M4K1'6.I)2,]_TGT -?A)5P^,G#[KYT"XX,-^\M&C?=K/&;?[<3][[:6E(=J$ MP&VZX,?E0C8A\&VCR(#+$&LW'F$50)Q* HD2 H8XD"J,XB!&/2MR6TB?&D%H M!>$F[\,<>>DI4+67 I>5VK89"$NW82AXAW8GCJ5Y;U6OLKA;Y8=P-?K YCVC MVD;V"Z4^.\!R.D?9Y2&]JS ?--2M"H1=+\0F'JDZAMZFK9%4*L4EAD*0!&** M LAB3J#DJ8I%D$4A<0J3[*'#U'CN\_K^GA9/I@1\75ZMRD%IE3=A%NV!YVH) M?EOPI1Y#N9)BTZZZOF'3KOJ-?%B6/9(/W0?3CB4''J+A7; C/<&OMKW"*U-V M_KT3@VF&97OPV83(#--&_ *0_=63=M9@[!+3?2$Z4G6Z]Z/Z]\&\;Y*/-'^=Y\SN6'95F^IN77=_/EM_^0XD[JCX:IKIJKG%?KT7?+XK-9U MQ0>IEB:\[[O6,18(H0R*C#"(DPQ#QJ0IF8HQ$R'7;XNRKI'J5[>ID<>/39+Y M3T!^-SGHTE2K7_+ZP*3ZM)>FH>-"KD"YL<;2A1IB:+M)Z84';& ZJ^N*[9D& M:MO C\:ZG[2WI0T$QD)0F6AB O>-- V4P-9,4W[1& JTI2\WJ [59U]N<,88>BJH>M9XGCE=X>!:J]R[T B+FD-,XM#A57$,*0)3B%.PQA2 MFJ0P(C%/LC!C28QGJ^6*SNTV-.K'.GT^-P\?;K9^,3*:!B]]^KLX-7&9T*?H MNMOBGGU8/*^\FX>^0$>54^OC9W_M.<'F>CZ;PK5Z^KY9KME*K>>'X>1_+?*5 MO%&JG*4154E 0A@D2,_$*$M@QK T>#%&*$HHSF8+>6=0^4&?!%OJ_S*+YI/5=R 99*.=^D%S0&,]']./[TP@Z9'V9PB' 28J@UFL.,0T M4S#C 84BB!)"4TR0L&J$TBUF:NOUJINY6U,T%U#MV.ERJ(;>^'-'R9EFND'P MQ"8GA(Q*&MV&/N>&,U?WHX"WM# =(LI;650'N9OWE=,@34@20Y$% <22<4@" MG$',.4D5#TB"G?)63@F:&@VT>IJ=[;HZ?6\F.(FM'1?X0&Q@-N@'EC,AG$/" M$R6<%#,J*9PS]CDMG+V^;[DTL]&Q*?K\85EO;%35Q6F8T3!2 D912B!.!(,T M#C&,*<]HG,4I=@L:ZY U-7IH-@PWNH)6V5Y%W+M MB,)3] -S!.]4>M1K>XL M'MZJUIV6-'+UNK,F'U:Q.W]+/]IHB\-?\[^M\S(W3[TMEN],YZ#G1/4FGZ]7 M4LQD3%@2)12&,M%L(F@(F4HBF#&%L,HBE7"GY8:["E,CF4:MZFPPKZ?.IH/2 MQ3V5>HR0'14-B_O #-4J#W:TOP):?U 9 X]G2O06.&/O/HCZ(G3>B@P*M7U M!^@Y U[PI+[^E&8.6:X^:<[]_(T^-&'?-,E,UET,$Q(QJ/TF#%F0I9#(-&$Q MSE*)(S=7ZIB8J1%HS- 2'PW"MY\I*-" M1G:/N@P]](PZK^XW]_^Z+/[0LVJW&<4F9O.CMJ(IJ24"*JA,&0PX2S47$ JS MS#2VS'" &!+:%;(*KG(3.SUNX/.UT-Z/]G.65!":51^)_W.S'NA(UOM?9',&XH>2(<2Z&C$I ;$,\)R?'NRVL;M07^ M%$T3HK" J"I7%$8!I &1,""!S"2-8\=EV1$94Z.>1BUPORFN8E)DMO0CM.K] MJQ:UP J<\9"*#!(B.<0*(4BH,'Z?8)@%/)(9:Z,&AH5V/RA@8'!-#>E? #^ M^') [5C[PO=O8(I^7L"I?15_/8_31>6;AJDK>4S"BQ5>.E,OLNO2?FSZ+E_D M*SG/'Z70[J0>Y9S-91V@5"TW"RG0#$54+_"R "8QCR'F2:37?%$&$_U31E@6 M$>14P-9&Z-3X]FVYRN^K>'C3;?:?_A$EP;]TMVCNC[<=2?A&<6#6J-6%'XR^ M8*MPF]79JNR/.ESP\<0E5B)')1<7$)ZSC=.]_>CGHUR9V.3;8OF8ZW74JZ?? M2B-,2Z8+GB_NKODJ?ZP^*3.1!JDP <29$ G$4:I)B"JA20@+Q%,B BQ=0HGM M13M1T0CAQEISP$WT_[JLEYZJU1G0C=)NM.0P#G;D- RZ U.4 ;9*JVC5!NP) M_/A;C?)/8*,\N#X/LS-=N2/FB;0Z /">P'D^X?$VZ:4:O%T^Q4BQ* MH(QXH!E+F5[Q2,(HI#+"&5,D=-HC.RIE:G[29[G(ET6?XMK'071?,/6"9N0E MD]$1=+N/%RV5#C 88+&TE?%BRZ4#,[L63(<77]3V0_/'[7*>F[8BFV"Y(%9Q MD"8<1IF>YYC'*:1!AF&B$)8L4!RYM7L_+6IJTWZK*6A5[1V+V &P'1OX@6U@ M2NB)6-]N'1U@^&W0<4S02_3DZ##X1!N.KCMZUKJ\(S1+E781,IG R%0IP)E*(),DA"K%0@A&4LJL.J\[RIT: MB=3UZXJ-WN"A5OP*T(WJCG7M+ ? CE<&@'5@DJD1W:H,;EM$MUJ#6FV/%>S< M8/)5N\Y2ZKA5Z]R@.*A7YWC[!2SUOBS74KQ9%X8%JXHN54!1N2V9MWNL]VY9 M*)F;>#M*DR@380 3JAC$H?XIPT3S5Q)'(F$!BV+D=D)TB3K3.TKZ7&W3Z\$P MQW.\KM-95K.25G4ZJQC)*C:R= R.O&C8' AOR*$8L:)G"6I#KNJ0R++Y_ZY" MGQM;/'/CA8CZ),R^JHS/HA>"=I1:+WVF>Y&K-F:KEM94XT[3( A2KDP#-J+= M/ZH@"32'9FF,A!)8<&:5HW)*P-3\O$W08%.1S:VP^4D8NSG-!S@#\]1 N-@7 M5KH4GY&J(SGCY%36J N$CMI$1V\;K_ MT"(WE40^2.V0O5Z6JQD+)%."4,AC$4* M\^E]^L)+DO5-V:=W6BE3*SQ?K/7ZZ^9!%M6'L:QK$-;7?:'?9?GV^ZJ@6D:^ MH,53U7W&1).;*N/+N99TUSHULY2C&,=I!D6028AIDD&&6 JI9!2'$9.V^2!,9M,&W G:*_0)#WV!K*MC:VHYH8X+&O\4I]/@HV+_)53NNH6OI](YW7 MJ#4W/[2ZU!T9'4Z?IS;H%A$!4U-Y0I^K__\5'>,5M0_.F)KJ$PP,^9_PRCK% MJDSUG>B(DYF<^H;PSSVH"X:),182R#%*%!,0IU8O[ ME# 8LC!@@42QS)S2\_:>/C4/LU&N=(PB/(Z/>Y>W3&S#K;GCE[4 MC8.O"7]"RKA3O]O4 Q(X0!RC&!(E(YC&<1 '-)6*9TX9]Y:"IT88NWJ;J2"DDD4AQ4YM MH"IJL%JHF-J00#2F..;FVPZ,';\, ?? A/,M&W9@;GG^I8=WN!&#F6QFOU*_VM9O%Z7*ST7BK)J MHQ5+'C**)$P2A.HZJU0D"12)"J3 (5+$Z@#N^..G1@.M*A4MBQKX0SW^3/6ZOW=- M?+.6KPZCCG7>22,I I)2& 2I@C@F>N%6%7V,3)"4P$&(G")#S\B;&KTWZC;G MVLO->#A&@9Y#F>D5<1*J%**08HA1ED$28@+#C$>48H51+&:/LF#+%\!Y5^[0 M2.N%AU]D[1;('M$:^'O9OI!-&O# O:(L6A?XN1+65,R:F=2LYSQY_*)^K-@48[G5Q//TI:"+TG0&,>WX%K+*RIQ) MGD0\C"A$G&LG5I $BDES!3'&(YS1LW[5?>S9??_D.*._E)\CDMRUSEO*VG69VR5FGEYGM:9Y-_H=]G M,4D4"<,(:B:2$"=Q"(DR2=P\"1.FXDQ1IX:> ^@X-4)['I>P7A22SJL"W_.N M3_1H8YJD#&5Z5*&40@\L9@AF& L8I2C$841H)B*W!?T+C^HXFP";;-&R7/*\ M8MLJ48$^&V_]B(60PKQK]WK!9:XKO]&'"0R\W5?OA0=SX ]EG>>[9Q[8J_%R M57<>,U:"RLPK\-Q0H,T"^Z9>M?5?M+7^OK(##H6G#_,0&H[Z+1\0XN>?_R%% M]0SV/EI>>Z?T>OGJ:7M-DP]R;+\2MGF ?]91KDSOB-*!8>PL< M!=BTJ@Y@)HB 0J6,*H%B'C@5A1Q"R>GP&_F"X M#(U[./N V/F*A1]"Q7$#Z0<$^2 *?TA9/??EM>R5E)]7=+6N@[14QCE680!# M&5.((QQ#@D,%(Q*+ #$1(N9T;GH@86KTVB@(:@V=XMQ.HVBY<7P)-D-O'CO! MXKZ%?,IT7]O(!\\?=ROYE'D'V\DG+[RLSO]G63SF7!ZGG(_+Q:,L]>*SXI7R MBZE!-K;;'YEKD,S%>% 99A#E)@BWTIE MD H>PX2HB$0!XX(Z;5"/J_[4J.BO,K_[:O8$KA]E0>\DV&1I@[]H@ZLNE'4S M#1.X9TH:N+:C&OGUL*/!Z0[ZP!Q[MK?5QFA065U73S=MF_7@K\#6T*OVO3"; M#SO&^N^[,.X8>6[B,)+R+](18MR!.=5>8F0M>A>W+TR8RQM9___[Q4YMW!E7 M*N1*(BA2Q"%F*84,IP(BI61F]L(S)ASKEY^6-K4OT/N=FN.@D%SFCR91^.<' M^F3^W[D,>0?.=M\&;^@-3.6MGN#'5M.?3!&BW8K?7@M[GP?%7VGN#EEC%]<^ M;_:1\M@6-UU:#^.=J4@E/^2/4KQ?K/2+D>O94M>@K#+MMXF/(<:<)1A#&L89 MQ 'GD+(H@9B@) VSQ.2F]*N58:W#U$AGKSJ$":L!KVE1/!EWM^Z=>P6N.5_? MK^LPAKTS5)/$_5'[0J^6RS_ 7^A\[8)" +";FBZ'97 ORCLB??NJ MNB+S,EU5AVBF>K@;:]%*=;PMUFZ%3[=1];"YNBEZN+SF?UOG>HF[+O.%U+18 MUO'B5 B44H*A2J, XH@PR-)4P22(D?X?0XEP*G1T3N#4&*V*CKFE^>GWLA^N M=AZ73[0&)KI-T=O5$C3*@JVVW@/V;9'QU5[@G+AQ>PM8&G_06,#V/O\1N74, MS_-0GU(O=&Y4%:499J$DD8 *IQ'$*<\@BS(,(XXBC ,9*>QT['*!+E.CH-^V M$;4_FI!:6?X$[FB^J&I"*YH7X-%]E7C)6-EQUT@C,#"M6010-J&0!]9<57$'SE4QO*W;H4>G$QNCG%&)U3]\P8.V) MW19+E:]F4@F&,T,+68H@1BB!6:IB*&,2JS#A 0[H;-OLWB+(=?-L)U+82!CN M!:\/&Q\JW5PC?G< BQ&E+*,PE4*9AO?&=0P$U(ZCS%@@$DZ=3G3[ C9*K+0/ MP.Q(LB<, W-BC=&&1$)A) MQ6&BF2>D4A(LK';I.Z5,S4785=3EX/X4B-VS&>D+FL[>+5;YZ M^B3O\G)E4MA,1NHLC8*$11'7#E7E7R$)21(APWIQQM* QSBU(;Q3 J;&=;6. M8*LD,%K:3>>3('83G@]H!N8Z1U2LI^TYTX^X0*7D?[I;/OZL;ZV]'_W#UNDY M^*0Q9$IJ(7 M,@6^: II@C!,0DY%$D>""V;KNYP7-[6)O=$8W"BPJS.HE79O:6X!^7E/QR^0 M ]/ BV!H[P;YQ7(D?^AB3)U\)'N(.IPEBX>,YC79&[3K/CGU MEO#VL0HXVYQN)SQ)N @S2 *6F TK!0E2# HF5*1^L.R38M^+[2H7.5TDY;3Q*B*ZX78B;K1?]/?)?%^851;%D\S;@ZI M"%U"8G[/^ ML,)Z^I'2,-2->K\0^6,NUG0^?WI_?Z^]UR*G\U;C2I6R*J11-IO'B4(R"I2$ M41@)B+&IRLFS#+(T(H$*LR1*G&J^]55D:KQ?#ZYFBPW7[.KLZ)+V'1Q+CW4$ MR(=V:"L33"SQKA%@:\7Q83A_C.+N\EX(IB^/N*\:XSK,%X)UX$]?^KQ^Y-DV MHZWZ,)BG?LT?VBD8L2B-,=->44@ZE=%7NIS\ 24E,72B IGL M'7NZTIDDL=8'\L/"PKITC30JRWBH?$PD/K?T/?B\4ZITUI_]\5/Y;?WG:FZ4 M8IJZ7&\E&4!88R!TG@&&=2[SG!IMO%QU'6-,C1N:@[Y&SEGB)'6Q4$[6T$/0 M4T!]ST%O@FFE&ITY/1RY?V,P9:Y:9^Y8N5 MRU/\J+?/^C!\YF4KTDMBC7"U8RH(0!P;()2A(!.R(%"(7)F@#53@^%,CAG:U M+B?_/OG7*G&FA4JM2IA-$3I#?G;&@+@/S#2](!_ -.F)8"1S)73T44V8GM < MFS5]'Q,>)N+=S?W;G^NYMF^HS(H,0$-S@ B#0'!- )$S^Q M\@\$LG\TR5!@CQ17$A?TH""3/LAUA)L$/6ZTP),^2K9#4'K=W\_TK1K ;^[$ MIDJ1F-,BTT09") 4&B!W/B R:0"4&BI)$90LJ!KV\\=/C;QKZ9(_=O(%IH8? M8>=G<_9'9& F]@.<5.S;A+ES5LX[8@RZYZPW2]" ] MO'\HS_,"<@$PDP*@%',@1)8" 7%.> XA#NL>?G&DJ7W&>T$3W4@:6.[K(J1^ MGW04H ;^N@\8[80-8U=4]*8UV]H6.JM[6NW5I]&+[:-^S.2ZPYBPS@&&W MGV.2 "93 B@4S C"&.0R*";@1H&FQC%.E:HBD^OJ7/4S21Y*_7.Q?MPLGY)= M-3,7:;1)EDW(QU-S96#DP*U3Z4=:8T[0P-Q6"9G4NB2U,DV]Y-FNI-9!HZ2^ MNFFPU!0A;.D5,:P@$L*QP@MN%6?<,(-(X)V$&\1Z;M]>1!5954F9;Y>+^R:6 MK/%:%RPUJ;(;+R4X DCG$@B50\",4JG E$,6=*[0.=K4&+8E8"!C=H/J1X?1 MH!J8Z]IR)FW(!G#N>V$2K>]0UU@C]QWR4/NT[Y#/33UCE>STKI<+U7B"E@OY MU&HPE$F=L<( 0Y3=]>4H X*K F28Z4R;5!J3!04K=0PV-L$3?YH_CM(#I$/,K$BEKJ&&C=DR4/IDY@EGWO"3_*J LQG M8HOS3 MD4@Z(<7$+&4L!RS0&*4XAHXBE*?7NMW-AC*E11"6F_WG1)>2NG[]% MP&-H%U!5K3TLEMH;(/^SLPA C71,=@I8G#.P*PAT''==NG.TDZTKHK*'<]Z).S$[GW4[#4!OH[?N+ .[MR]&=$>GEM_B*)Y9SV&'-D# MZP_"J9AF0&4 M&0F@<#8!R7"NO,R"*^-,C7B:U(.=K$DM;-)(&YJ><1[:;GZ)"-C E-(3JQZ) M&IU(W)"LC62G1P*S6>)4"6_.&S _U[TLPZ(^QME-*."]R@8'(Q_>-GF8&1B[ MK7*45[]7\^5P_#R:,P<\=/3FS>$*GVONW.,I?0_=[N_7JRH0X#,O/Y6525O' M"7S69549<&Z@9(:F$%C+TEA;4[L\0+L!YAE%&<<%4RPHXM)CS*DM(K7(R<;) M/$L>>--OM4J)^?WKF^3!?D ;)[AG9DP(_+['=%%!'?RTKL+S:XVG%=CE#]@]\!ZQG;S)IU75[29YWNTF,I#^AF9L0$CUF-)LQ1*FVE1ATWQ3JM&[MJ[/87UP=F7[[P5>_ MKM?JS\5R.<>&8,A2"3A3A25V:0"5" *!,H0I%@4J@IH-CBK]U%:)@\ O6M?U MVIS[F;63GH.OTU]DNK27)>ZLS5:S)GR6XV&QW_@9:4F^V<:)+4*36FE1%1J)"=ZS!*K M2<0,VIN0C)5>VT^(<7-O;P+J)#'WMJ?U]S$OMNY3WECR=CL4^W5K^XWKS9O% M1B[7F\=2[\-[TBR#A$ )A$P%0(AIP+AE3RT=:RJ4RC2H.TS0Z%.CRI;PE5'W M3/SD('_OB*NPN?%W10^"^ A.Z5A@]W).!X,6T4WM/_;H#NM@6,ZYKL,?TC.& M5/[0ZG&I/YFF*>D7_>#,G=7W]RO+K_<5J;YZ:OY8]W=C1D,D4@P$T@5 .B/V M)VDI+\]I*E(A"0[K5! NP]2(;Z>"LPAWG87W6B0M-6:)>#KT'@YIOG?+C/D1 MX<#S,# =#C,%X5&J_4&,%;3:0X)Q8UC[0W02TGK#H_H1YK=2<\N_3]7)8GW( MN*L_C#C-,]>6@! *D"@(H)Q@H IAH[/+&FB">*7!K@*1B2&N3S.J#QR5=UCMKA^0S].>,<79159<##/ M6MTN<\-E0>R^$&N%W&D1!0RE'*3*,)4909D.,I^\'EU(7F50 5]LT+@5@*68 *L.YR6#& ME)[_U*58^S+/$&*&?'IM80?T]W]Z_=YYF9>/JJI9YNQ)NUS?;;?E0CQNJQ/, M[3KY:-\U%[VP7B[K#49]-K"O7F9U3/[X8O_JZIBYHE6!^[Q!W@D_KGSI>1Z8 M8L>?X&!B'G(&(O'Y("*.N@P,"?+QZC'H6.&YFM]*[M[]KT_W8KV(0 M"&,D0! 9('3FXE:9,"K-69%YM=8[>?+4K-%&N*26SC__\CE&]U B:UA*'ISRW@KG^!M\ Q\$<8@$2/ MY.93E6_(:&X];.0TYE,U3G.7SUP3P:>[#]RRNPW^7;]>;[;[W"8EI13"Q?SF MW/X/40H(A23(\SQU'S-#K.CMXNT8>&H?J=:>8])3WXB\LU"LAG J=PW[NYDSD>84&00,R01 6"A J4P!UX:D&<:IY$'9L!='FAI'[;^?*@NV M(J2*B'R[P7E RS5CV!@@,Y=H+!2VT&(*N**&8:HR3O1\I;^[#5Z]@_NZY>5V M#)Q9C?.%P8<#_=7;7]]_?/_QU^35W8>[CZ_?SI(C&AM@&BA*I2#< "50;G>O MV@ J,F[_1V6"$DP-E,^GX>U*O=0D[(8>T+S\^&;D">A]4AM.'"]R4CNK5]B( M32BN8C'<06TSSDL?U#Y7U^.@]NB&FUM*=X46?UBL]/NMOM_,B37QF7 =Y+6V M.W2A4\ (1@ 30@N>%CCE7K6)^@HPM46UW>'X>G#^'TZ/I%(D\/ C>*+\.&A( M^(<^M(B/_"U]I8/@B]]8VF_XE^HL'01.1VOIL.?TC%U9K!9;_<$^^R0KK4E\ MJLXKFLYHKKWI._M.SW,#D>0$68M76:-+%0)0611 $LV*K$BS7'L=&=PFQM3H MT;ZR16!H2S_X_>AN>% ')KU: 5!I<)(,/*N:)E;=P]K:-+V1G281 V5N0C)6 M!$T_(<8-K;D)J).8F]N>UM-(7"[7?[JN@N_6Y>M2J\76\6T[X@P2@GBF-$@A MLU8AS#3@PA"@I80(&8.@"+,*KXTX-9ZKA4QJ*0,MNZOH>IIR,3$;VG;;R9J8 MM;7;VN -%-CGC4XLT^SJ>./:8K[JGQA?WC?>FF[U&U\^N"".A;1&G=WKND&_ MV8?>K=2WA2YW!05T>??78C/'$DM14 JX(0P@S*']*:= 0LD-)E)P$]8(MI\< M4^.AO<2)$[G*@G1")P>IDS^44JWZ/ZUG!1"Y>\\V/=Y:._X]6WT_R_"T_NSCL*C>V:@'=:FY0 M;Y(_G=LYO_UKZ_YIKC7GF2$*8DNG>4X XBD"(M4*L$)PJ2BC M&(J@NB8S!+GC45:?Q9ZPM^KC\. M8"0M- *)?M2WS&]UF.J[,_"2,M77)KQ2S O,7ZSZ,F.*/FY5FA>8E)-:-B\A M0[_%]XTN%S_YMAICLRT?=Z4HG-R+U?<[5]V]*F?63H6J"@W@%-D="

    (HY, H;)85!J0JJ(-9;DJDMBP=%DI8FE>G M^;)R(0AL"(&%!CI7!B F,*!(Y( +I22FJ:#$R]%S<82I$6,E9&VY[<0,\ME< MAK*;R:( -'0X4C@V04U7._6_H?GJ^>>.UH2U4ZUV,];N"WMZ>%V#I=\YD_N5W_3M_SXNMD\M_MD7A?WT4%4V_-4^ M8KMYOZH#">>"HI03)0$EN6MSPS5@.I< ZT)Q0ZV]580U=AU)\*D14*44$$ZK MA#M]-LEW)[#]9^]8R=%> L.MH5*K/DEKY9SN" M5LGY!H!94D.0V%>E!B'B2OY_1LV_Y5_ND MOO&_7$? NG+IH]U ?7IH'%.;>49SQ3D7@".WP2&, %:D.2BX%!FQ6QR8BK 5 MRW_PZ:TYA\:66_Y74KJ^E[_PC?@%GP6T&&07;@-> :>/S=W5: MJHZBKEW#2BZ6BR9.\'.-\_)_*G< @HJR !/!"6E,[SQ'@(K/;+\:A(%!0Z=?"WG? MJ>V3GLF;.(&3O;R]HFRN(NY'4C%Q')B:;H&P1X5V/URB%66_,MS(==C]E#\M MO>YY7T^2X9L?KJ2[_8\ST'[RI3/-SE06G*<9Q#G/"*"BH'7B&2TP<:G&$@LJ MJ$F#0HR]1YX<[;B8 'T0.9!CO 'W))LA8!R:=1R"58,(]T-+[%ERMMAH1 H* M12L6%WF/.RXIA<)QPD[!#XC63?/P[$.@/B-*"YHJ(&2& 6(Z=V7C&*"I)JEA M.:*'4!X=$7LNON&=H8?UZMUO=ESS1WJT*VM;CH4SI*5[M.1\#K8?F04'\*!R:A&KRWQ M/K.^$?IO@_33"@,J9D/!ZX..WT#0&XBS#0/][^Y=1:1\=!FI30Y$4Z1WCB"! MA9(0R-P:12AE"G"#"X"@X3I7W&0DJ"WXA7&F1CAU)>VJ/6JRKCX?60N:+ ^- M;X/+?YQ%V(]T(N V,,LT$B9[$6=)(V348AU=*,2KR7%VE+%+;W2I>J;"1N?E M_5C!?@:N:I%^H^O_OE_9<=:/=H/VF3]5H;5&HE0CS@&RY@A 0D# $>$ 2F0* MDFL&<5#-C*LC3HTI=N(E#[5\8:1P'6 _>H@*V\!$L9,U^64G[=\Z!_'P% MR\ 8G$G]<'V]4)O%6_YA3_&^,YI+QZ3Z_ZR=_M@O]1[V=6 MDPSB@&)5@)0*AJDAF%/+2>LM7_;VX<20,XC)]M(.]UU6CM.?E>-T;1)>Z9+P M1IG*V;HKC5Q71K[9'Q1ELGL[D,:>PA?P.%7)AHV225O+NMC0IE6 >:?IK)KH MEK))HVW5(F905U7,"1G.MQ5%RI=VAL6$VL-[%G6X&]L9MCKV_==B^^/WU5IL M=/G3"?1^]?"XW3R/J''_M*:TW76_XIO%9B?:4_6LN: *T4P@H&#J3. ,VY5& MYL"D1C"44Y&G9/X06B9Y$%E#J.I8X@%92W]?K%;.(R7XTNU;>C91C#JK>?H('M M@\.Q^*S=M33YT^J8M)5,:BU/(@OW>B:5HK.]D?!4/W: #IY#3$7LSI]197R9 MCJ%#P'RQT^@@@T4*CVR"9_EWGNCQ4'@DBH4D8)4V'! M2AV#3@6.H\,?V M4"\;^GA&Z:MAC^?NZ9D/^V@YZW\?[_JRRZG<'R"F25$F< J-<$555N/:3 MC #.(>*2%I1E0=%#EP::&F$Z4*"C:NX M]L/ILZGBA9Q+VZ6C";W29K&U]DRY_KG86)7^YO[TK_DLQWGE^_S77\@,P?1O M55TV"YK]OU+KY'Z]VO[8)'KEH@)^L^_&CW_[EXRD_P&S66(_"UC=Z[Z/66)5 M>Z@3?)9/?^\1J!3M%4)"Y;!0(*6Y:X$L$&#$N'927%#%<$[3+"PM\:5>HG$2 M%^LX*?FLQMXO2]=[I/T*O>"$^JV!+S5) Z^;5QO$G*FUZ#3<_Y4[-4_++U:5 M?CNFM5_86V3\8P;'Q1)M_!"ZR*">#;2+/4:THW&[G]DL5),9^JWDJXW19:G; MIR567!?VH^;66I <"@T*@USQ7]?3EQ!+_Y)1J8M4%2J_,8LA0)RIF0M?]7)I MF6 MEHOOM9/)Q9_8%W'E5FU+"95/M#KYWBRJ7UCF%PT$H6%_-\YD[^/M@>;G M14ZQG^F2M)29/3NIWNDSZ"EU#UR'.XP.$>:ESYQ[ .=QM-SGJ;=1\MV!%S:? MR_6[=7G/[0;DL%3,49&FF%(#3(JHW;IE.>!9ABW[9G;'X#KI%&D?]KTZ\M2( MUNW+%I5T_3CS.M1A]!@5P+&8L"7T++%2)Y78+AKGN?D;G_6\X8I,<-?'?1$N M\X;C$FWY/R",H1;B8;X_&/NL2^,>;%6K"BC53=JK&H"_Z7NARWDAN;7_E 10 M:@V0,1H(1 H -4N)R&C*M?:AI[!AI\9-A]/KENA-^;2ZJW0MO1]S!4Y!-VT- M!^S G'4>4W&":?)'+;KGV4 @N&HMJ_)@E4GP B _&__EP;Y]7>@'5;THV'L= MT<,4PJPB^\"'C<+T_13 M:NQ4FZM*G\FRN7Y//[+XHG_JU:-^9^7\HJONVY]YZ;;$< E$0 MC$1JF.$D[( M"H[CG)8U\B4/5L"G9!,35S_2C8+5P(S;R)@XJDAVB#5BQN/: MJTA$(MK+XXS*LE?5/:;8ZS?T+)K0ZM?M6BX\[^8]%ZC W'G_6*ZM.6:@-<>, M*0!F!8,9@E"E0=%@W<--C6G;T@962NB&5>4LPP(Q0+'(K)5;&" DLT8O08PP MDF<*!59;C@?L.-3;EM>=32WV$H?6I.A&VH^'XZ$W,!D?PW80M:B6?)I7W?OT'4Q MIJ?M+$S1G&O/GSZR/^VL:J?.XBKVW#-JAQI&;$+2Q<$L1JNG!UCW-XJ76J>M%'IO'BD%)[C MZ%\7IF\*FI*<BS^N2MVL MF]^KH/UE9TS3<)/G1TEC3\G #'9S;L6Q>K,73JGH@/NE4BG.B33M%(H.$&]. MG>AZ=C_J_N""\_7>U/[@*A8>PC+J-H*;-X_ZOS4OO[F4OGEF_U_*"0*(YJZV M,2) I(8 9J0D6A6;->)T,WNT>F05$K$(\S>^$5BQ_#Q1Z7"WO <\U[_!_7T9>NE_>OWIO;[ MG*<8D31+@5:II3&F-*!"I$!A+8I,9R+30=79GS]^:O342!?HB'Z.F*?ON3<. M0[N;:\&21K*(;N6S&L?R)#]_^+C.X[.*G?B+SU\5J:[4-_N<-^M[:_K,E>:N MN3T'-'>'UQIQP*7*@,ZIEB0C.F?RIK)2A[&F]OF>Z13IA$W^J,6]M=-F"V2_ MCSP2= -_\;U1N[VRU"D>0Q66:HWTLG6E3E6^6E;JS"T]UW87*OYCO;1W;.I6 MYW/F>BL41 &"F5W?B[MM?WW_\^/[CK\FKNP]W'U^_O1E/55!48()!:B@'2%(,6)YQ8'+, M8$:Y2"4)+98; \T1*MU^?!,32$_+]"9HAK9.6\+]/TDM7G*WW98+\;BM0B+L MOO=29V16*),K!E0JH&6&(@546GM7,$65)%+HL-:%MP@S-5OXH,NF M*D#4Z. 3'Q!_HOR89RSX!^:H@QI)2X\+DS!\FE0,5"/QW$VBC,J(,4 [YLXH MS^QI^#>GUUJY$Q2]VM1UI,K2164Z.5X]'2YIG(I52FG-\2UYJV.8;S_XZM-# M567@W;HT>K&ULF[^2R^^_]AJ=?=3E_R[_M4^?/N&;_6^,/>R:_6/URY)>+G4ZN;@FFD@[6O!3D+8 M":U(E;9-Y8DV)$D+DT0\)>WK&ESJ%/_9SM1N+VCUD?[6HI,T\,R2%D"S9 =1 MTF"45" E#J7DT"PBHIT^J7F/M3>8AE+C[D>FH?.E/="TI.L;RV"E>[U>556I M'_GRFR[O[_Y:;.92$IYJZO*V-08H3S'@'#.@<\-,097.1%!HV:6!IK9J5G(F M+4$3)VGRAY,U\.#@(K:^D0FW(S9X $(?L'K$&'0C$2V4X,(P(T<,="M[&AAP MY?HP8E!Z,7^[VE8$9;\W7E47MXS#=UW$,1)(I80#AG-KO.>% 0PJRPX%3KFU MW3.6%3[$<&V@J1%#+6O2$M99,/QJZ_$P=+NI(29F U-#7[B\R<$7BS/DL-'R M[]_7/_]A'U'S@OWA0 =7'SP*'?BJMZ,#[^O#*_Z=K33U^VJQW=?YXZ) G&$ M"V0I :?&U84R(*=80HTR)*A7>*//8%.CA9.:?G6SAB_:6G<+N=W]NZZ35NGA M7XKN*O#=;!$;SH$9HR5JTJZ.6$G;HY#?5?3\R_?%1'&DHGU^:%YN&A)4L\\7 MGXY*?5QB(SLP,<H!PL1.JS[T]B6EA.4Y_ ML*:F.JZED" \&I!CIG-*6%$B8-RH4) M%V%JI-42,^E?RZK'5'BRU: #\U=E?"@DOZT#-,L"<8^G,9ZPQ>+U,(%&)?B M>@-T0GC]G]2C#GY70LZW]2OM>=?:/G*5=I00T!A*D<(*H-8)Q8 M_H.09R@C4"'O?7+X\%.CO6\_=*FK5FD!Q=G#0;^^1QX6RL%=\&$Y@)4>=2:@ MTV10Z /JXP\Z!6/5R1]H*L+*Y_=&LJN,?OA#QRNGWUOA9V7U^S^E=WG]T@WR M1M?_?;_:#]Z4=MHWI-;62"Z(3H%=-31 !;,;^\(5_F*LX(HSI<.RQ_V'GMJ2 M49L3;O#7GC)?M]I\K.FAP%_X$5F M)W3RRT[LO[DY.!!=(_H@#<;#$8M7[=]WX+%K_P<"-J/O!-SN&H@$ MZTOZ!V95]KL\]@T,4TCC1BQ'>.+W0/(YX0M7NT[Q3,7$%#79*5A4S[4ZAK6=2*9H\UW30ZMI#SDCL MT["8(K[,Z=D (%\\;1MBK'Y+S&>W>*U7=]N];/L?#KEE33",$;A(4Z% 3HD+ MZ\QR(*RE#7(B#'9]7#7U"NOL,?;4%H1&](1OV\M ,Y?WWK&>?6;!C\T'PG9@ MDKX*Z_48KV"6[8%4)/(,&7E43NP!R3'5]7E$3P9K"MM],F\6/ZW9M5(;QU14 MIH4"F$D&D'!=\;0U>;&13$*82RK4?*6_N[,^3ZXZ'<7KNV'U=],>:[C/9R]: M\L 7*I""SL"8A,C0E-]*Y/OHCL>UGY6"Q[9H1QV?2RBB>LV7%IWZZK6[Y8:;6K M3]\8$:(0+G?/ ":-)4@-&6!,8*3P6U7#TWS-0^[IV4R4[,T!ZA M9['T^\IO1VC@#_T$G %LK6X0HC4&/3O(R%U!NQ0];0G:>77?ZKS?'9=\T0_. M%%M]?[^JPL^=5?;!#O9^J^\W M0XY<7]@?A-.JPP'W]JS@MC-J7J_O[]>K*@/&-628(TXPU"H'TA1VHT&(I2&> M"J"@04;S3%"^WZ]]"RC2=F&\'CNW;V/48=MOWY1K2%'JP"W(17@+B0V$4@,B M[)X826OH,51@P#25#&D.21%6_.X67,??S+V)BZ8?9$"^J=]D2X=&&_[_BW]4H__<;+_]';=X]VH;[;[OK2UX4F#94T2R4!RBB[ M=Y&, 9IJ"(24A%*[JQ%A7_65\2;WC;M6C"[$7KH?7%^$GWSI?-AA'_PUE/T^ M_XC8#4P&E:1)+6I2R3ISI]X[<6/7N_0$)A)57!MM5.+P5/V81GQOZ^FESJ3^;M_<-R_:3U5UW^7+CT^[,5(Y?5%-N?/AD7!_1]Y9K3?JYZ2SA397,( M]L-0YC!5#&!BK)&A2 9$H8G]9Z:)@9)*$58X>2A)IT9DK1C/>HE^5OZVB>P- M9+7AIMG3;SR%R1O:V7RN$O&APNIL-W6J6J6:W!6GURQI_$-#QG ./@.Q?-F# MR3FN WQHN$^\YH,/&%YVX-UBY2JY^*1?2XY-QF &<)XR@'+& :.F &F!9%#) M@'#<.DH%!#QLM!(!X0JV2P/TN/N&MHSO-YM'K=X\NER!>NFHMB3G5YPYY8P* MJ2B@.,< 02X 0SERD5\ZAP8J3530AB!8A*G1?6TQBLIBE&TC?U%IY;XFM2BU MM)]#J+T?/CV>AOR@H(]AH6^26OS9+@GKJMU>+Q:P);-G--TCS#10J4EN[\!1+ H,X ME5!AD3,,85#%@,M#38WQ:DF=:Z/02)VA,;1*"\3KW%>U8O1&QGUDK]=__@[2. M4F0=^[ )CP3Q@-Z//2(A.7+6G>/?YU!Z!=7TSL.[CD[DM+R. 5\D2^\Z )>2 M]CSN'+DE[\YXJC?@=S_Y8NE8T0I:-0F<&Y(1A7(.4N7BPG." *,TL^QE4 $9 MUM*OV/#0@D[-6'K=8K.Z1^XFX3NAJT_6>9(JF\EUTZVO&*N-[K5)]W0X36 J M1SPX[MGJ]K!/;'Q<=\_>@DKC"32M]9R3EVY#>TW,?X[&LIY@1VL5ZSM>O[7G MU>-FL=(;EYX@[#;0R72H=/:LT-G^W&.>2\3RW!!K^VJ[F#!N -6$ H4+6A"! M##-!(4@]9)C>BK&O#B?[5X?K,QE^=#\PQ ,S^4[ZI"7^[&)%OM;):3QNO@' M2+3;1X)1&?4&B([)\I9']3UXM1MGQ[EU$R\D#*4H3P'!D+OBPPPPE*7 0(XY M3C%F15B4Y;/'3XV]]M+U:XMVA)WOB6=?1(8V&[W!Z'$N>4[G:&>.SQX^\GGB M.<5.SPK/7M6W\,W#OIC.I^T/77Y8K[Z[QM=OM-C.&80%A5J# A%7V8I)P%Q^ M)(%9GF62(ZYH#V]=YZ 3==1]+A)$!567^S==V/6HGN.!2;0B.EUCC5Q+QT/MTY(Z M/C>%Q]9^6NG?K*7Q8U='2R!&4TLFCIV8# M6.F22CS_",XCK+H__-L0&/@KWRO?H\?T$0K^L:K]T1@I'O7Z*Q$48WI>WXXX MTJ,;1HL5/2]H.Q[TPA7A=/-^M7DLG2/YBY9Z\;-Q[+Q>\L7]YNU?4FO7QNCK M=OWP8;W9?%C<+[9SFA-%))% :I8#Q&4&7!:J^ZF0C*2"2&]*"A]^:K2UUR I M]RK4IVJRTB+9_N!;UQ'*ZN)"/W]HY]9_L/;/9I,LG4;^7WJ/R;K.B<-.P<"\ M>4#_(+V+Z$QJ^9.] NXX\R%Q*B0?!@?=GX*'!7\DFC[W";2_ +V?A*,W_^]Q M>+T_B!W;?E8VUR.X/[VP^^^O10 M]=/[3[W9NL8Y=>SO?^G%]Q^NR>Y/7?+ONCJE>&-WN_L"X7.KF[*;;";U^JP>JRSZNAOSL"' MVR_Y/DS_-+Q&)VG!TSA$K(WE.D%6",V2YJ6S[UR-TBS9X90T0-4'YXF#JM4' M8@('Z4/-_TN?O$?7ZY_CJ'ZHZ8QVMC^8@&$6@M*+^9O&6/U_'WEIEZ;E4QV1 M/R<%E\84PJ[0PK7:2 O "%? 0 IQ@5.**/19JSO&F-JJN1,SVT/!_+L>N8H-.:AU(Y0 M?"X-=S+=N=W57:O_=>.JS"ADA4@92"&CSG_$@,@+!40JJ,R%3%._0^Z.,:;V M:3LID[O@5N!=*%YW\43 9N!/^@26'G[P2_CX>V,BX#22R\7_-0KRI%P!H,-= M&IU5A]!.//_/] BKZ^S5'X&!26NO? ^R.D+!GZ/ZHS$2-56H M+*V$D;R[YQ7NH**C&T9CH/."MHGGPA7A?%.ESMZMU-O-=G'OXGAVC7T^K7Y? MN8HC2[UU>\'5MN1RNSE*AC548<(X!UI# E!J-&!<"U"DA51YGF88>]?DNDF2 MJ;%9.T>Y2K%U"WYHRU)46!HKV!Q'MCO M^/!NL]';S>O'LG3>2[&IAI@3@U"1I3D@FF. *,D QUS:M8T@!A61:1Y4?>SL M*%-;J!KQ$EX)&W:6=AY&OW.MF\$9>+FHY9LE.WS^V,D8,8:^$X-(YRSGQQCU MS*-3S>/SA^Z+^WWN^T(PSXL>[M_8HC!&:X6 SE#JBFUIP"6AH, 91URJC/M9 ML9[C38T";JN3 :B6 5#!%A3*(0#K_J4NQOI%/#F.&?![M MD+D?%G;@QC\4VYG7]Q MD2QW?RTV;V;SW.KT+XWXK? M2,>GC92[IM"UH+-D)VJ\!=T#CTA+>==(HR[B'BH?+]\^M_1CCWVFR5>]W2XK M!M\H,'$I&1CD(L\X59DLI%>L9^C 4UO^WZ_D\E'5 M,>SK*L)]M5X!>8/7UWL*,LO?%!4&*,X-0,;R.L\R!;)49T1*#ADM0MIY#S(% MHW7[7IS-[G3'PHN5TO>KA5G4W;::2;&_?K&9\UL;AIB/@1>*0WYA2^96PN

    ,VR(!"A- M4X 8M(264@R$8#2%$&42BY UY$Y$$H00 R$BF:%8!*%'1=V#3>] MD\*=M.V*'[\L785$44A1#G">V_V14A(([0[5L# FRREC M/ TH4MH]6@_/_1C523]8TOKWY.Y^1VS'KGFY1@.K7%VUJN6$2 0*(JD+32" %P0!;F".A=(BQ=*W M$,?Y(:9&$+64E6^_K.7TMPTN@'C=A+H=FL'/'?>H-"*&%Q2Z@(Z_T70[2N.Y MT([>H4B.LFX$.NRC"S>.9AIU"]ZVBJYK/XN5!ZI3:?^5-5\*%RMU"" M4B4,!@@B!! 5+L./9D!11K.,22Q(4(;?V5&FQF][(9-&RGY>K?.(^ED^-^,T M,-F%0Q1L\G1"$,G4.3_&J"9.IYK'IDWWQ7TCL:IXB\^\W#Y]*_EJPV65+/QF ML9'+M4O6.E1&2C.,)-40<%$PNR_*N#5SN "9TKA("X@SF86%9'F//362:$1/ M*MF3MO"A05K^\/MQQT"@#FX^7<(S.0@>N"-%,9 !('(96ZW;$8 H5(.(,QSFBI- M4UCT:3WO.?[4J,S*FE3"VHW+YG'9-"E]:'IC!_)9Z%SX<=J " _,:_NN\RW1 M9\D!\I;X(24/>[>>#T0P*8!E2FQ^S3# 266T3*"C<@**7*_.EIGGSXUOOJB?UI\[?=B:>ISN5B738N@ MP!R9\TAV\]'-^ QN1?6%)JS:PB4(;JFZ$0 H1- 5@FK9V"I3:,,XUR+\.D8XRI?^34.M@V MW.7S_Y(%)I%$F"._S714_/KI3M4_F[?\^\J5KKLB7RZKD M@=W1N8:*5O1/IBJS4UV^F6/!:($0!X(S:[Q1R(!PSG&>98(8#@52Q#<08#2I MI\;IM?R.8+33P-5NV:M0)R.V*G7Y'ZR/]Q9T+PF3G=N!5XU*H>1*W^!73=_@ MY$S?X*1Y,3Z9I%(_:>OO7&E)@X"[HL*@OB\@CVF\=\0_GF.2[\I((2)7J>!G M,^-VT&VYD.[TJ**%2)$DHV/?$9PRGBRCQ;N,#F\[A&;\P?OM(UWR,-_\^%RN MW<&_>O7T^\8ED>SCHN]<_OQBN]";?=7_##*!4A^KS_>RAVT=>TR+WU9Q6+ '7N2M\$F% M]4[\1#PEOS@-+'?_+3FD2!RT&*1Q0W\0(VW]>@@PZE:O/T#'6[L;GG1CWL:' MQ4J_MS_:?9=&TJ1VHZ4,I0 1*0#+8&J'M)4S^<#(F ME9!]\S,.0/I1U&WP#+W/"$.F?Q[&B?*QDR\. [Q,QL6)@A?3+$ZO[)''ZJJL M5I%"SU.^=NV_J509@50!A#-KU$C!@) " HAQJA24A$#DZUNY,M;4/O9*W(#D MRRM(7O=/1,1GX*^]DK2)&#QNI76]G7-8[J4?*%WYEU>>,%X.II\JS_(P/6_I MMZ:WBWU\+A[U%[$^Q%3!X:&5WOXF=59OHW>>K&7F*EM8(%0#QS[?D8!PQI!@@314Y- M;C""817R;L=^U!)YM;B.561K$[DNCXK\Q,3]R]RSM9 MX]EF7I!$,M.ZQQK58O-2^]AX\[NIYQ:MKV^MSM=U3K6R\B]OJF7GVP]N]Y,5 MM7UN+G.I$Z1SD%>2+LT0%P H8P&Q*Z\S"!(44KG#U4 G+56RZWG M_F\L^4,^TV,M!O3B[(1,[)A5V*I]48"HCF3J_CB\\FS^XW&U<&UZ7^GOBY6K MWIH(OJR^]=Y-<\9[OSEO5YYFQ83? MFYT.TWEKK$3_9*^,IW=DBB_!&(>[X,KAKF@.=\&9P]U9TE30:*F?U)N[K04@ M:1"H6H34&,R:\^"(GIVQ)RZ6PV@TN:[0XCO_[)'S9S MG:8XYZD!N4ES@ S*@)!< I(60N<0.@0$;)YZ_;^PY7M<] M8;U1&/J@;1\+\_46 /S#4'H#,7JH2/5&1 H .:MUAX?O^?6C^?/.BMGVWIV_ MH&^U@)]Z]:B_:)!_7V+U?87ZMOB_LZ'L+U?S5U^F^UA7G# MMW5#6P)5IB5)04ZY!BAWU791Q@ IL@):\E*YUF$%!6**-S7B:[2;)7O]DI:" MR4%#%XM=ZYC42KI/HZWF+*D439RFO9[+%^5_\N6C?O6T__'_+'3I^D,]?; DM*S6?,8X MXX1 H%WW&D0) 5SF&-A/G3#--;?F7\CG[C?LU"C B9I4LB9[8:LTN8]W_]G+ M,O-$W_.8,3JF0Y\WW@!G^(EC$#JQCA[]!AWW##((B)/#R+"[>P>97&K"\&NY MWFSF6")K?6 %E"890)!(P+7( ,8ZT\@H@U50;;MK TZ-B"JADM>\+)^J&.VJ MF59P8$,WQMZQ#=&0&SZ\H:-/RRRIY(T:XN"%3+PHA^[AQ@YT\%+^3*R#WWW] MB.5Y1-R7Q? M]"*H#G&9=:1:Z00&:P,>[3]X-0MA)-.-M^149,J5*>:Y!@A3!H1"!6"F2#,M M4T;#6#P:VJ.$"N^$C8FH'V='PVE@PCX*$YXE7W;OHQ6VINUX=.T%2B2N[AYK M5*+V4ON8I?UNZMT%>M=6NCJ,=2>ZI?ZA5QN[*+Q?R?6];J+C#;8;4E$HD&F: M H12X8A$ )@:)B4S%)N@/:GWR%.CDG;+]+IQ/^A^00\ PCD M*-20Y M@L2KE$;7(%.CU'V]T8.@22UI>#W6$T"[F3463 ,3:@^$>E5DO03!32593QXZ M>DW62VJ=*\IZ\=KPC_R#Q7SY^<=ZI9MX?BA-+H4T(->9 H@I#@0B% BC%,J$ MM/M +T_1N8=/[:.NY$LJ :\%SE\'[OI'? L<@UM#WD@$?;275.[UL9X\;+2/ M])(:[8_SXC4W^L_K+9/S*,RA^S1);@"!N:M]7!"[GTD+0$B.IGA3SH'(H;53BC0%'%O#!0EF+,$I;/_).5*RH#+W MVAG& G'4;N^Q0 ST?O>#9C2?=RU>X[8;P,]]JGYL[W9KA)?Q:9^J>-&3?>;2 M?A1I'U0ZK_@;7?_W_>K]ZJ%@-%"86KR M%*+_:H!3):PH5]\-VX^GWZMV,U#@GLY$Q^V4GZ-TN2B0]VP7S@ MA4DD9N@>:U2.\%+[F"W\;@KW'+];E/JA7*^-J\*W4NZ?F^WZX<'^HTW-4F@+_ _3$M??"WH=X>N.Y*BX M#54/_/R]R%%Q',F+W(EG',^Q-RP=GN/KSQC-<^RM3MMS M[']3/^-L5S7GW;K\HA_LR_'#LO@G4QT)UKG@\P)!!%UHNS+&[L2@+@!-(05: M8\(9R50&V^$K4J3'<2M^KA681NUQ/$L/']T(IEY'@..:NOY W!L M\ 7DL M:KJ&&KD+ES7E3[MK^5Q3X_.6?*'5H]+RTUW4I:/+GI^\UBZ M;.$O>J/+GWI3M:L^M/(N"D0@Y0A@*11 2$# C;5Z"D,S:?\F.?(Z4>LS^-2X M9B>_6X(;#9)?]4J7=>NB6I5DITM DZ+02;F^!QT2ZH'9:(_RIP/*I^B&]%6_ M'?" YDX# C_2'K;]FO-F A;["2@;-6(U9.J)5U=?I=!'CM<>J:>RS[H<]7U& M/\/3=7C\<[%8 ML;B'J; O8P$%!47N":82C[9U(VZ^I($&\;'2D8R@O>/'=7@/5;FV+@]^7L_;OJPX&*QK#H1 M[7/,WRPV@5EOV\X'G8#?]DM06=)J_#$0=AXW[P?*)&8X,I@H_*# MG^+'K.%Y5QB7;,KM_(OFR[<;U_K(M:@^9 "UNUA_M._,)_.Y='T&MT]-328F ME.1:,J"-<94.,0%<:06(441(JGDN"A^;Z!8AIF8_.1G=SF$G96 %K)OFHYN+ MQD)Y8(8*!]B;F&(@U$57]ODMJK+_.M#434./0EXQP-E16I1G]34B+*EHTL1+G=:)G9#U82ZNM^[?U5]BAY:#5AO[W8[R&O@9PN^].0. MS,]'\[I7,'&M=)\%Z[H_3Z&W[I 3$BO?? @1QTU-'Q#DDRSV(<>ZS8]HU[KC M@DT'&_[@<">8*D08 3"7KN0/5( A4H <9BG!&ID%<0P*DH@*@7&(@$$5 KJ>UI# ML6I#4BOG_(][]9*=?LD?!PT3IV)HE?,HD^U':*-/X<#T%WGVWJX>[ZNMX#IF M@X:HH _0];F_3"_6'?IF&+NZ2-_^\'ZL_T8;79;.(=&L*:VCOX]Z.\^$-C1C M.6"F:F$/(1"<,Y 2PAA,4ZYQD'?@RGA38^J=N'LO,?\KU!=P#6$_$HV(V\#T MN(>L928^.^K_&+-&L"LXWM;SW2^LGE\%4__F9>?RHK+ M5!5#\%F758C]7'.8I1H60%"[J41$%G:[CC&0.4F5+E*#,A-"*W[#3HU=]E+O MDFH>>)G\K()@7"[-[U_?N';@=4Y-8."?YSSXD4]\= ?FH .P3::-E=F^QK5= MIIHX(RMWG8$3,:\O"*A8N7U^@XZ;WQ<$Q$F.7]C=/4,:M36T]/.ZZ3LJ?-IE M&;YYU/NBK!"K%+HR6M10[3K<*,!HJH%2I% YYI2;H*UMJ !38R_[(A:!\8VA MD/O1TY! #DQ4M>BSU@%TLZO1^Z@1CC.3(N&,+7?6F[HH2NDZ-6!ETB+E.==!_1DNC#,U MIFIV(@>OC$=H1Q"N(9[]F] :Q[,?!%1/Q_Y%&*(Z]D]'>0''_D55SSOV+U_> MCPPJ8^F5)1SE6BSHU:;R-=Z5I9WY:IQ73X=+&BZZ_V@NWF_.@(*F 5.189SB$2 :0<6HD5(EH-Q^] MJR0,,8]^Q/7"LS,PZ56B@TKVI*U?TE+0A0NVKVN43"HMG?E6Z>D:%CI-767 M6M?H+0P'G(I(Q#N$A*.2]H 0'Q/^D$/U/0\H%S^M%*X%CUU]JB3XS:]\L7*1 MC*^>_H]6WZW]^D4O*TDW/Q8/53ODPMC5P#A+DD%B#4O. (4I!U@2*7AA4J*# MBB7W$V-JE-^(F;3E[-64NN>L^!XM#(WUP 3>!^8>!PVWH!3M_*&7$",?2]P" MU.EIQ4U/ZUD"K-1JL74C['=X*2-84*@!P0&H-@(4668MF8*K MO CZRCM'F]H'?Q"V:I_F9?G].0>UFBVA0#KH;>\N*G:N[]WEB\/+>/[78J76?[ZR?U6;9@GCAM B)=39 M!BX%GT/ "<0@55!G"#'(4N9;J//T\5/[Q&L)DUI$_\*/9W#K_IAO1V/@K_@9 M$#T:-IQ!Q+_8Y6W(C%3.TN]5"2I:>5GOCK*49VX:K?#D98';I24[KNJWKWG+ MR]5B]7VS"XYZQ3<+>2@:HG218X8 =E79$,\5X-0HP JM,JI,AE'0OJ9SM*D1 MV$[80\#?OX=M:+JQ]=O01$-L8)([!6N65+(.XNGP0B72CJ9[K%%W-%YJ'^]H M_&[JV_-@L_UD7"+WYFZEONKRYT+JS=?U4LTS64A3, P0-?9_3$8!%Q(#DDM2 M"*8II4$A0Y>'FAIO.$E=_M:&!]=_Z,#3T_\9!:6A_: -0)6857&'G:")DS1F M*X-K:$1K9'!QH)';&%Q3^+2)P=4[>D8/N1#L]YO-HU9O'DM+0/6VJHK$/G]\ M74>68%9D$.D0K]NAG<*,?42,5I4&6/7FC=M%WW M;=W4=Z+\"&D$^ =FJ[JW1U+K,*MS0&;G@WH.\1>S1&BS+G7R;ET:O=A&+4I[ M(Z:QXG5Z2C%N3,YM4)W$W=SXN'Y4^E_:)?EJ=?=3E_Q[T_[]DWFS6#[:WYYV M/E*I+ JE4Z"9MKLVI3%@1E%KB6'-70(N#$LX"1Q_:M39R-D_@#(4?S]F'!#5 MH1U:C>1)(WI2R^Z6IH8L6W+/DD:C>/S7$[E(O!*N3NCYN60NG,7]_OT7RV6 M2V+(TV- M ES*W[\G3MS*GVHW=HIO RO)78;5[^./ M; !%#+F.R$W"0',>/QP%4@(G'! MY7%&Y8.KZAYSPO4;>GJ/]BW4/NH_[Z1*^12RIY-7Z-22'/.< ?5()C'\EO%%6Y<=]8@P)YXN889)3R&ZK.K5[=> M?;;O_>;SVFZ"]'91UBG.*U5W;F]\WDTIT\V'Q4J_W^K[S9Q*S#.2(T"XY !1 M3@%UI>@8@SPSO*!&>5'^C7),C=L;59)*EUGR7)N*-RI]DIU"R4ZCY ^G4U(I M%1"\=,L4=A/\B!,S,)/_,\V)?^392',S4HC:;HX>ZCEZ.)VC=35'NT.X1#1* M16K"' '-CL"W6YX^6H1Q-8_+9@G= M'+907];+I5F7[GAWSH5@C" "B'8G.AG1@.>$@"+7N%:E7CM2E :9&;Z];$3[_D?QK^OFF&P3.E3'C\2,%ZYTSC&"]?U9"!> MED]5@8B'=>D.PN\=V9WI:=TDY%""!'+GU)A8LPQ5.1(<*P"Y9J1(&4LA"B*H ML/$GQU^-^/4K'\@"@=![DL1P@ [,(3N)F^K3OVGNQ*RK+$9/%>\)4RRJ"1Q] M7";J!\T)4?5\3-_0&K$]%,!QO:J;/NPR0[AP">>9T=CU6TH!DX( ;'>40F*6 M(A58>.O\0%-C)B=GRIW$W5Z[O&7KSN%FL]&9S)__W<5%W"*I^+/7N-2X*5 B3,I KC 2 M1 )A" >0$IWQ3"M2R* 0G&LC3HTL=@(G+8EGR4[FGJQQ'7<_^HB*YL \JMWI0PRC/,L13F@JK D MP[,<,"64I1N=ZA0K7N @U\[)"%,CE5K I)(P,'[F!#P_IK@)DH&9H8W& /N9 MBZK'"B8Y>?ZX\2"7U#L)Z;AXX)"-4? MW_"MWN^7YKC0A.6P )P;8_DCY8!3+8#FD$J<,D0"^6,JFDV-M]IUZ&_I,#89 M@(C[SE5UBYJF\;QK7\LX$KS@ N19 M9NU^J"AP]?$ 8J* F:&I@D$A^=W#36TQK:E.U_+-DE5':]L^X/JM;/$@&WBY MJ=$Z]+IKVDW]T@C[M\B]@?UPB43#5P8;E1O]%#\F+,^[;DT$>LTW/]XMUW^Z MTOTNZ%PN'Y7K1GPGY>/]X]*U^:PD<:Q9ZA\NNL\5_W?2N""D*MWAD#Q"-,&\ M<)'A4.4 (9%:^L$$%(J[ZKNIA#QLVS",G%/CK9V:+M??*9HX39-:U62G:Y-S MLM.VL>N>Z;O_A)W*H1N(@5X)S^W RT_TT,;](',\4L+1(),2/?,HKI0OE((T M"-27[656EO+=]M-KK*BFHEQS>Q&NK3ZHN6CZ4K&.2J+QX3C\FY85G! M 5%,6P,XIX!)*(% 648SE6O)@^KU1)5NRBO08;N_J?ZYKYA1JUN%*;84[KO, MQ)CCT,5EY)D;<4DY3-KLPCSM8IQ4LEXE>PVKGZV&V&ONKOE2>F.:XSM"@R2%*0Y\S5MH0"<"XP$%!1S(FA=A\2 MY/,X/\[4*/NP<=\T<@8Z.R[ Z>GEN!VDH=T;>WQV(@YP$GH%AEC>C NCC.O& MZ%;UQ']QY?*^)Z3K 8_07/(..F22KQ9 MX@2,>6IU2?EHQT+=/PYJG M.<:(RPR8'$& 8)Z[59X E0EN9*&40D$G&]W#3>V3WTM;9Z_-=EEEASRU_H58 MKP#O1POQX!R8(@Y(-OEC37'5@[#QZ,(/E$C4<66P46G$3_%C2O&\JR^]K-6C MW+YV"KBZ:N[L]LMB\S^-U9M#0A4A##".&$ <8\!<=418#'%^WBM^TVIS*#G#WTR>RW/K7K5%=_.O3<5I9KI$$IP(QH@"3G@$-M M]R]8897AC"@LYO;I8NW5LO!6>4(^J+94PWU7.Y4 ;V+1RIU2S7[';7T\NX;% MF;)NXAI]&@;FM9-8P+TV]:XJJ398GTPK=J11J?Y[>(?Z2!^6?__&,6=KI%I: M7_2#?5SEY_IS-X%='Y [-5CO)] T$[BL)Y W>D:JLQ4-[ZXVDS>/,5Y7REAP M/&MB&>VA?8L[;'ZX_W,!DS_Y4E=5;.R3%](*Y?YPMU+/?]&Z<@Y3C2$D"$#C M%L5,<\ 4+0"D>2%2NS2B-)\_5"&67[>\W/I9X3?)%/*-'TLVW&=>Q8ZXHSWI M?M '<5U5&:&_+U;5=VX_[EJFT#(1MTQBP6F6IR0#$.4I0"2%0&3$ %5H2;)" M(F1P,XEO5VJ24[B3ZX4F4+N2AR\Q=7Y;L]$F8V +QTDVJ\.P6@+.DH/L27V) MFZ>C7[;OB%DB) *RT0J&W"++R.5#(L!V6DPDQD/[%VE;;/>UH-=5_6>]D@N] M.10Q.03 9$QFF H%,E@XKWA&[%Y2Y !C(4G!%,M96(6DH.&GYL9J25\7:V_+ M'UXU+6 >/.ES,'2'YLLN8).#[,D?@T00]<,M8J6V@,%'K^,6#LRY*F\]GM*/ MX%Q3W#\7R^7[^P>^*.UVY1!H6O_*R>%"2^=,9,HPF -*C-T2"(X!%\827*:A M-2@+K86>K_1W=^LW?XKS%L#K^V/U]W0P7RS @,B4&)M.:RELH5 M&;.$0@N< 4E$4>0(9DJ*'AO\: ).U 'P^ZK4?%G%_+I-OTOGJXZ2C$LH_^$4 MFR5;_M>N5U:/$BA19M>/Q<:=K#$+JW1D[<^.*P#,$J?>_J_1Y3BEG-!?8M['PY6&FYAOY MJ+=)J7_J5=7!JB6N?]AL!Z;=_! /J:&WD8V0SP"ZGF$1@I1_Y' 5_>-FGU8V"=6W*H6V\>R*L+D_-'JU>/V MXWK[WWK[F2_47*.,"04UR*EQIA7* *4D!UE&"B:9A#"L(K?OP%.CS-]7#U:J MY,$^[T<5JN[")4L7R+Y]JF)37$3E0W5>NVA55>.[WJH/_,D5)0F-K?2<)4_7 MW0#8#TW"MNV4#R9-6(@-C#3] ,KF%BN(1&)2"X.,RIQ7%/VF"BN M7G];<[37ZWMA-YC[/DAU2Z0ON@K6<:5$-G-,4EA Q$'!M (HDQ@(C07 J$A3 M@:B&NNAQ-N OP42=_RUI05F+VZ?\3\!,^!%+9&!';J#6DGK6[J:6-()7980B MQOZ%HQ6YHYK'P"_26LT?D$L]U@*>T(_$:J_[5[MWUW5$8>U8;Y;AO""H@(0" MK!UO:9T"!G,#LB)#U(@BQSJH VSG:%.S([3HH!0*$ *N]U!*:.NDJD" M,*^_"8:_Y]O'LJY7OC9#'**?H)[K+-,BST#&FAN2+##DDM)=D2$7[^FY. :V&+ 7?%RORF<=!SXL M5OJ]-=4WF7=+_GT.-4LU-!B( MG&4 25>NVEAC&B$)"<&(<>:5NW[RY*D9PGOA$B>=WV=_"E3[/1)HWR8%Q78?8:7+^BW"_ZHM\[S M_+E<_UPHK5X]_;YQ#5G?KW[JC2O,=2>WBY_55S[/"!."8@ERDBF ",D!)[G] M/G.N:";LW1#/M^LM7_IM_':9PZ [,!\X8*L#J)W8B7A*?OF]1OEOR5[XY.XZS,$[PW#$(FW[ @8> M=4\7#LCQAJW'$V[LUGEH,"=YJM,TI8 MFC5Q:)#0NU'?&1S]Z.8V=/Y_]MZUR6T<2QO\*XB8B>GNB$0/0((D./,I?:O. M?5U.K^V:CHGZH, U4]M**5N4[/+\^@5XD9BZ4 %,CD;&]%==CI)GG,>D \. M@',9F%;VP S2I^^\[:$[(;F\JZ+E^Y#^95N7VRZ9&SF&;&(V,:\H0* MFV6J(!,B@ISPC)"$I2GV"E\^)VAJ[&WU-.]SH^@-T.8ZP$I=_?RUL]"Z>6TA M !N8BDNL[EI862W!;3=6WB[<)2 ".7)GQ8SJSETR]M"INWA]P.C$WI(0V)!:4J]0NHZ)(V-8*HE?VW?\$I^L^/H:*V/&L< M!T-L3&>M%;5ADO943R5=?E%@]+&V5PCMI M.&JNY[;L0ATF8!.S;(GV%^$"YG>&SFS=]K)2P^>J4(.YIJI\5I]T[:^?:8PP M9TD$4TY22 B7,(^R" J><4Q%2H3>U8^\O-Y\%1N M6)?%;*(M_O>\1.[[ 9-_F4;:9=B]5*+U4JWW+]6\_5*Q.C*Q>:DLX;P(&*E? MJL,2/CV9R6L3XE4'M&-KXW7T&FW#Y%5A;V_#O*XBO?M/'-:(_:0V]]H69<:9 M2AG1*:0()9#$60*Y8"E,M)8$$Y$D./.)&.B0-;40@9?UF.>EKM[U^L\"Z[: M"P37P"Y!9^5J&Q"PTK84]0VXW6S6<[[=E&R\69G9/FQ2C@--O*[[>;PA%17XP"L9.W^%$IJR\XASS6^SG7-2)M?+9WY6'HY_(<=!9KEL<) MIS!AN>TCA7+(4$Q@1G*2)4Q@3;QZ=74)F]I6]ZG%6\_&HB>Q=:.E4(@-3$'[ M]J&[39%*4U"I&KY?:!<@@5N$GA3U*EU!NXP^UPBT\Y[K"ABV*HL5G]>K#ZOU M$_M2U7&WU)&D,D4P$C9!(N$(YIS&,(I0DK,\CX5PBH'RD#DU!FF5M>]7EK + M7S?Z"(S:6)NP+75O;,@U*!4&7RZ V;L H0,\@2L/=DE\E9*##A"[(;M%_6\6MLPSKNEMF*LS#<_ZU_N>K//HE@30AB'F&>& M?+1@,*=Q"E&";/Q.)+$D/N334X^I$5)CAMVYJ'4%+0/\2*KOV+@1UPB(#TQF MI\#>&=&&_<;FDC17_/ZMW$6R!H'2HH A E=B&H@!^VHQ*BM>"=4A4U[[N'[L M^9G]M(\K[O6O:OU@FZ#MJ[_NREVU\K=RJ5%D&P;'2&)(N!;&9=,:J@Q))A62 M/!5N@00]-9AB&,!QG>G>]==\Q\.-*8? >!R&;#2W#%GI_K+0] W8Z3](7EU/ MY +QH*_T4?FO)S2'O-?W,?YY^N^7F_W^V(Y=;;W:;3&+,8]5I!!$:6[<0242 MR'+$H,0(416GU/SDFK;?)6AJ_EZEZR[69.]]5.JZI_5WHMM-4R$Q&YB/^L+E M507 !8M>10$Z'SQ:C0 7\]HE YRNOW)G>RGOEALST/-=@,*[>2$6*UN5:1=Z M3$B:Z PSF,8JAB2SG1>3C,)<:,1BGF18>Z5\>$F?&G$TRI>Q17OUF\"WO0'> MM8'Z#8[G7GEHR$?:/ ^"=O\-=1_40N^P.\E^G2UW'UC.[L%[/:1GI0$;1=4* MGVI*X2(BLUS*"&HBC?,C\@@R;7XD.HYRQ'&L=.Q5;N"TG*E1V/UUL=J74'5C MI !8#I)YO9=UQ^!1-4+-,*@Y$Z44RC M%"95/PT>0ZYY!/-<,QF3A#&_/?&34J;) LO5$C9,4(59]R"!(T ]*. :F$8A M@$K!&[!7,?#G?PZ!D!__D8SQ/_US9I[\\,]>W+??:+FY\IFM-S^_K=FRL"6_ M5LO/38O@#T;E]C6SF!":I+:]1BPH)!@K2'D40Y:DF4Z5C(C6?GU(_128&EGL M%/7M1>J)NQMQ#(GFP)S2[.*6>H&6\C=@ISZP7Q!X<67(KJ;]L O6[=13_,A= M4/N!<]P=M>=S^A;K>%XK,:_:CJGGA2I[&R[E[9/=,_J?*BL-QTF442AP/N;I06&LV! M::RM[@W8*5QBVE8Y9+4/=X""5?YP$#ER%1!W$(XK@GC<&[ Z2'/0]6ZK/JD_ M-M]^J,5W]>MJN7DL9DRD2.4(08H$,6Y6ED.J@/]6; WNEP$#)OM"-F3AD2[Q MKU^+Q $YY%7)\Z.#E0@](9VG'H#Y^\Q M.2 2RE/J$C6NA^1@])%GY'*/?\FC7]B:/:AWJ]6ZJ+L-*TP0EIF&29(R2#2/ M8:X1@XDPQ)%F2MMR1([%;X^>/C6*J!0$TFKH7K_E&+3NS_]J*(8^P*Y0*)6[ MW)79 0[W4C-7P3)2&1BGE\2K'LM9JSMJI1S?,UH=D[/JMFN,G+_HVMR1XU(E M2CH4*BFI<9^W(*7 640(3'*60"*9@KD0"L;&$=()-4-/O3RAP/I-C1F_;I^> MV/JGG?S?%YOY4[G-N^_$:/_]L(S685/&VLZ^:2EAAMW-,7O%P1R8V]MI+"?J MH=DJ9V[#.%)J2U#\@Z>\A-'NE5)A@D)[/D4FK)CK)X^3IQS% 4UDD2:)G1,R MIJ5-=\:0*AK!2,<:):E*$NH48MY7@GNPR< W.'@QZ'KEZ#X\_ MBX<&?52:/H?R:!SL@]X ).LD_M58U ><+IKT>H[_TO[=W/;&6LIO/U;ULHQ) M116+,XABI8P+C%/(;* \DH11%>&,1LIU:7_T]*DQ6*,@,!JZKV6/0;N\M+\* MBL&W\O8H]%C:'\/AOK2_"I:1EO9.+XG7TOZLU1U+^^-[1EO:GU6WO;0_?U$_ M[^Q6F,'=EO17U0X]+OUGRS16.^MQ+#2)$PU)IB)("-608X6@%!%2F**$<>SC MF?D(GQJGM71OZE"?+W+9[Y3#:VSV.]4$MD"OF)7I4-ZP/ M*(T_O_=/S8O53J=KC:RU]#U8Y"<6*$Y1!K)%-\,D)S 5*H5)Y M1"A1.\->JQ'0\#N[GP."_](WFE[4T UP]"4,6FE MQ 5J5=@?LP[?ML=#1W-^^QO<]HZO>(K_K/)9KS49I&6YK!4 M'>QU!Z7RH-3>G;<\AN#R-#$,L -/#RVE01>FES<+46*=2T\[;ZYQG)993=5M]!L1MZMW*GZPW80]C2%UB% M0^9K.&(3+%GCDKR1,S4VZ]#ZY]N5 M5#.=Z8QRQ*% RC@T6AFF82B!F!!L'!LBZ>J'S35GE2ME3 MVEIS8%7WK1'6C7LWXPR YL!\$P+('M7#G."YHHA8]_-'KB7F9.QQ23&WVX9) M ;-Y-]]^K&8T1HD6>0*%D+:-O.$:+K&$'.4X,^^6$,KKZ,%1[M3HQKQA2=B$ MKP9@-P]F -@&YA6/]*X@!X\]D1HIJZN1.JEDK@,H?'.X#F_OV8B#%?/B7M\:,)4QGD!)BEE-IBF$>4P69RG#""*%QXE7;T$WLU&BH MU-JN!SZ;IS:;KYZ-.=SP=J.E\"@.S$H[ /<@D65^2(7JU.$F M=-QF'5Y '/7K\+N[9_&Q9V5]KN5#27T-X\VPHDA&"8-"8EM;/C=DE/+8P$YC MCF0LHCR>?5=KOG*N/W92D,_GTA8WW%>STQ,(5CP"O5C]*( VJX/5[A<+Y5]U MZ S.;M1S/78#4\T>M-H%:G0,6):L$X-0=5R;JO]C]QNEL6 MV[7UA;XHH>;?[4%6=>1^<#9+59QEMDB[P,@V#",$YE&409Q&/$YXG_YK&D 5 >FD9,@U@$?UX0>N&+J'F\P M +9C!1GLPVS8DW4L[-_F.^#7.WN*&\!7JW\H:1>Q*ZT+M0%L"=0_MVP!'M32 M\,ZB=>.N/?!?P;='!9[7*U[_@Q50/=9.$!OSRUIP_7A6 -:2"XS3^CA_> 3; MY]6RO-RFOI=JKG[8)[#ES_H)A2T/NK+U@\QC?LPWC^7E>TW"G$-ZCG7'(:3K MDT8[@?0TK7W\Z'OK=8E=*VU6Z/.-69M_5T>UN3]L-[8N=ZMFU/L_;-B8.OB\ ME1()T2*#2+/43%DR@8QQ#@FC(F&2QX2)/DE?(92;\MRV3PB^K4M2*'"[7%H> M<*JK-OS(NKG1KS5> \^:[:&J#(.E9<>]"6Y 9=V+80.U?:,DFX6$/G B6A#5 M7B5)+22HYQ+8@LKH?8QS3H&J3?+=4JSM*NB=JOZ6O;/T/97>!:MZMXU%CH8@0L884I3DD&#%(LCNDE5!V=S8!8#>U 5JJ6.34[9?=N8;"@7E]H0CEXE\2-Z[0Y M&G_DB+G>U[>J:)7S6QAN6K#U45VE5(I8RIA!G)#8K)@%@@RC"'*=IH22+$V1 M%Y5%1MUNZ]G3?%5LJE0VN[7]1BV5GF^*7:-(B3,6B13!/,89)"3BD"F, M8))&D;5\7^C^V5$G=GG"FRZJ,@\MD5#YJ<] M!?61. H?70%%0T[7/**?\_-IM5'%9_;3.E1EZ9'Z[TVZL)!I1&.D88P2# F- M(YA3(F#&A&8,QRRC3O79'.5-C9%*=4&MHY^G$=P>LW!FX,-!BR _-1HV,K3N\&O$3Z;86T+:TU0(_R7L"%*I?F)7O< M>FE]8#DJF-;K(3V/L![9NBI?T2[U=;M>F[=-E8O'G_M+ZNCFVQ]L+=__[2T$O2_?;(EO?/I3-GE-=JOK%'<=7AVPS%"48(8QAQ9MRM2!IWBT41Y#+E M'&'8M'?,]<#R_F]C8CG04:$VJ"R>]*+[7,ASPGZ!]76T\**V_ 97]+ZIX5/[J MQD :@QNP X%&XM2X1#PA''\P0MU6#FBYN.>>XX_)$='J*^@0K]I\>-J^?!- MK9_>*;Z9L53Q.)(*QCB+(,$BAEP)"I-<,*2T3K! L\UJPQ9NLU;[X5[>^D[$ M@!MJ5H9QSVVB@%$12*.CWTSR CHWJN\+R,!<;-6"5B_PK@L%;W(\96X@]GKQ MZ%'IY911A]__R6MZILU: OBT6NZ20JM"PG5$QHPR@81MI2@%XF8%'L60$BX@ M8MH:9YSH7/FYFMT"I^<=5E.^\0>MEG\!JM+3,V>V&V2WCSL <"/ET):(M37= ME1ROE0T8$NJ&2JBLVFYAXV;7.AE^E&7K=E<_+OFERJ7;E1UINK9[FB.8XJN!ZA@2GB")P! MMOZ[00C$"&>$C,H$W88>,L"%J_M]^56GM;)<:[GP*&ZWF\?5VO;2FY$\37&4 M)A )B2$A:0X95A+&(D:*:L(X\NI0UR%K:AQ0-Z KK*XW]7X28#MU^^\R=>'M M1A&!4!R8)VH OU8 5HJ"O:;AR,(!CD",T25I5-IP,/F0.UQN&:KOY9N?+WY3 MMO&A>9R0)!,P8H)"$IG_<&D\"ZI4IIG$,G/K"W>5%E,C';>.C#=V\_/EKWNU M7>HW<(X[UT,/Q]![T$.-Q M,CN0'*U/YBD=)M8LLP,F_XZ970^[L@A:O: K M9I'-=Z%I"CF*I4UWB6WK3 93E6=F$99(R;PJVA])F!S]]4F5.\;-<4_F&C2& MWH;9[;XTR@U0P^S0[M#ERW;/?YW*98?FG2U:=G2A?TCXK^R/^=/VJ5[HJ\AX M,B)B9L$D$TAR;3M1J @RQ.,XPQ+QW&G5=/3DJ7VOM7+N8=LO<>K^3J^R?N#O ML]8KX,['66NO"*)^^;S10J1/FM$.@#Y]P;5]85HGH[=+^3-^ M/6-Z:#.UKWMOS(LX"IMR6ML#]@:!ED7@=VL3*(WR7))<-YQN$_]H@S0P"0T\ M/E.FBG[4]J$D@RIE:1S'E.>QUTZ0I_RIT:Y7"^@;8,RP>Q3&D$%Z;N]&R8U;!\1^ M8#8-#_M0W;FZ,V\WVNZ+8*OENN[:U\\NP MO&K[_70=]@<=\9'&(RA-\>KP[S*B.9L[^9T M//8^L/4&<*57:]5$71N?(^ N^96HAMHH[ZO&N'OE5X)UM%U^[?.N/7A\LRV, M\UH4M^*?VWDQKW?H6S]51U=QQ% 48P&U9H97M>20Y51 3K',64SB7,I^9XYN M"DR-3]N'7(T%H&U">;[5^H=KSQD=Q\GWB#$\^B.>+H8!_HIC13_T@I\H.HI_ MI<-$/W#.GR-Z/J=G*!OK_A=;;)6M^, BF\"A M:*X@422'N8@BF(@H)0FFB%.O*GI.4J=&?5;;[&9\%Q M')C$=A"6?VFI? /8!C1:@U+M@-%>/BB%BOMRDCEN!)@/#$>Q8%XW^[=OJLH- M&PE-I.I<%1\-^:G#E@FIB!*=Q RR3-KPAFY^&@KR^G(0 >J9E3-]!AVA_YPM/1_\CY4:,U0/(UKMT!R?O>GF245AUB&(ZIPP.=;3QXMGC'ER<,NOH6.+D17T#8HKYP]+Z#[=%?=J[/P*N M Z\H)[E6.891%A%(,N-Q,9ES2"2);9":BG.OP%('F5/SNO8JV]9_3;S$7FO? ML)7+H+M]]X&A')@-+J$X0&J@!T#!8DDN2QPY8L09@N.X$/=;^_%/=8KZC?UA M*Q'.Y2>UF:6&:SA-)4SR'$&",@QI;ND&)01SJA2A7DG$QR*FQBYUL,#&JG@# MEE6L@'D;MTOIZ3N<@-.-2*X#:6#>J/$IM2O[5Y0!%>%(XKSQ@3CAA(!1*>"\ M@8=??,>55U3+XY<+&/'# D9UF:)/J^5W51@&^KN:/SQ:)OJNUNQ!_6(>L'EG MJ.D#FZ_+':A=TX"(I2)&G,/4+"\@X8I EDUH/I;:8#CI5V#HX\?K"^SM M2NCM@+@!'2\5L'!41P&#],9XO>$,67)O7 /&K[SW*@-TL@#?ZVC2MT#'LGR, M;1/P=EMLS'2^WI4 ^6+[TF]M__/5P[*L(:$0YCQ7'*+$;LYE2L/<^-DPTGD> M9W%$N'9J-])/_-0FND9[L-B5JUE7.IL_&Z5]"WAXC8?CX>]@* ]]"MP _,-H M#AK5;_;E@6Y K3[X:X:DBOI_0CNA,Q,A_W MJ7H(L8A+"I&-V"-IHB'CL8):(!9C25*IO?8LNX1-C<1.A8A=D637B;,;785" M;V!RZ@^<-Q&Y(!*(=CI%C4HR+D8?4HK3/5?VCZW[GNS?:I:@6"*409S'*23F MKY#',H6,)"Q3>2Z3S"OR]ZRDJ5''OO5IK>DUR;EGX74\VP@!VM G&OWPZM\C M]AP6H;O#'LEYG;ZPY\P]VQ'V[ T]ZYRN5O+'?+$HT[_NEF)M(Z[>J>K/6:9I MQ&BD#(X*08*S''*B"10\U3C7*DZ$UT9CI[2I446II&>ETTXTW5@A&$8#,T.C M9]/YK%$5_+E1-F!I9"=00M5![90U;CE4%[./JJ(ZW>1'%U+-9U43QJ]/;+%H M?)89PQ11I7*H&9&0<&X(0L8<1CA/J<:QCB5V(8@SSY\:)=3]64L==XDJ;A1Q M#L%N4@B R\ TX >)\X=_P? 3GWJAQ%\?5M__W=Q9?>7F+_N/^]SS1OF<+QC3 M?,"7+NLWP^^V7]_\_-4PP'9=;>JR8E[<_C$O9I*G-(\)A3S3D6W''$&&(PEU MKAEF-),YBWSF^ ORIO9)MW0$I9+@=ZNFYU+@$LAN4W] Z ;^ZKU1\Y[Q';$( M-.=?DC;JK.]H^N&\[WK;%<4;'E<+6K4TE;\3W4+MAZE%YQ =SSE'P+*H0_G3Z ( MK-JM$E[@=Y>\E7Y%%'S@"EDUP4GN^&42?. X61?!ZP%7E@XN\\>^V&/I>_U; MHJ$+);N*?YTZRI[@G"VS[/N0U;J, MZ'FGQ,+\(6=9GB8BS124EO0(-AS(DRB!.E48&7=.8);T;&MS5NC4**],VI>[ MTPY9JPG,<%5EL\H"6K]]?;?_E_Z-;LX/12(2FD=40\02.Q0J-D.!-$RC*(XR MQE*)U.R[6O/5:PU&6_@8YTZ[D1@%?[=Y)C2F \\M+UL/[32^V45[>VX.SI?SC?HX_VZ[)&_,.S/GBVHJLD4? M9XC$F*2L9RC/T2([O%36U*V*M8)2UY;@EV0YNS+,DC M+&"L["Z)3C%D3&"8JUQ3C;/,0.^3,QX0VA&2R&VYV#>KU3\N5,/I ZSC5FLP MN ;F[DI16&H*]JJ")O$\:)Z8&RJA]ER[A8V[Y>ID^-&.J]M=_@6#VKV47BX8 MBCI[.H^CG,1$PRREAH]Y8OQ$AHCA:"&RC&A[2:0X( -S!\ON[$=[#(4 1/2O8#IJ$=S^1FC%:)Q-J==@<;]IGXNV]]7 MZW^8;ZR=K+.+0&]JJG 9)PGB,11:)Y!D"$..,($*,4JR"#&"O1;T#C*GQA%W M2['82O/BFU7CJ@Q0:DK6+'QKA_D@[^9]!,9S8 JIM?W3R]S(5D)+\.(W'O@$ M,,Z^38">Q4V.BEM9@KS9H]/8\$79#WO$X M.#B>0Y\%=T,YU#&P%TRASH#=A(Y[ .P%Q-'IK]_=_9CI?=WOXJM:?Y\+=;K8 M_BYEN:F>SL:TIB6(-LH [XJ3:M7.?R%'L;TEL<'/Y E#Z"N=<]_M8"9BI2E.-8PSXP>3A)GY M RD"DTQ0EB'C*Q/J=KS;7XGI'?96=H"6(>[[>7T'0BN.9,HAB["$1'($FW6X?$=>NX\>K_!W1+L;0#6 MB!P0O'E48&E +UN?L-(YL4&/ MQ]^"W4L4^U$K*[RPUJB9FWAM]%_#;*A?AWC'+GO/!X^V]7Z=X>W]^"N?Y.\: MM,(V*E^D/E>*.$K-G*-M?'$&B: *YA0QF,8H(9I&6B1.P10=,J8VIU1J5N=T MI;+57WW6>%V(7IXZ N T\-S0CLVJ%[^7#^6<$7+G]@!(C43>;X\[G09BVPL8 M=-#IN3M'X\L+JK<)\=*EO;NJP_<9BE/I$J3#":8Q;9< M;0)IDA(8(\QTAD0B$J\,T_.BIL9_QX>0B]7R 1K13_V/(3N0=MNN"H/?P+Q8 M*PEV6I8[3")XFXV+6(1K)WY.T-B=PR\8?*))^*4[_)VD,B"BU:-G5ZXXCQ". M\D1#JKG=(2$",H82R)-62ZED=XS1+GY#[4I]1Q3(3!) MS6N@9TOU8&/.W-PG%[%.;W9>O=EMX8/Z Z6.MDQQK:1WYY#+:+LY4,$0'*V[ MR&%E+NN0[A#]999?4YJ/8JAU$PDQ'/(T(D1([5_(Z?/C4EF6E4G:W%D=_ MYG\!C;KNA;R.T.OFC6LQ&9@??.'P*N)USNY>%;R.'C9:^:YS9K1K=YV]IF<5 MB_4#6];)X&]7RV*UF,NJ-\-2?JZY2U"#YV;7_*: S(P M1[5-LZ%%+>/*AN!M\RR5[0P$>PN'+Q@TU "$JK 16KUQ*W ,!.Y1A8ZAY/0Y M2BPVQ5VUW2;OE[_9WG7/"[6QH4]5(XIBEJ5IE$293>ZAQG$C4D#.108C3E5* M$DU0[+2[[BAO:B1=JFR6,Y7.-I1TN]?:GM97:OLH\Q[S\E!'/-)U->GF^Z7Z;/R5_ MVMK#TGO]T8Y&%4Y29WF:EYBFA"GC1T,FF( DYAQR1"B,XSS56,2Q)$YUY"X) MFAH)5[I:OVO1:%M&55GDV?)G73_.YV2C$^;+]!L*O(%YM\;M7H.=HC8R<*=J M(+S#2X0D3^KH;+'? (M(3LDC3J:M#!Y,.%G^. "# M==.^++EGT%U5GVSG<&'"HY12 I66,21(4L@(-S,,S9E($$.1PI[Q=B\E^/#* M.*%VMQX%R\_!=GD)>B44 U-L%5M7J=<_K.X %,^(NO[@O%8P757J?I XNM-@ M7 JA.[AKW.BYTRH?!=KFKLUW2E,<820R9D"DD M3-KJ'%Q GF"$$=<1RIR*(KH(FYIWVZ-;92>6C@OQ0 @-O1*OU"P7XK6B3=O* M< 40?3 )M1KO$C7N96"Y$KI)AS*>73(J9&!I66PC8UX6JI]'P#5*5I6>?>[I"H MNN9.=4X]YUO/8B!GL+Z\;+H>P8')H5)PGY=XL0^3*S;NJZ?K,1II 55C-=]A M5;]F@19.W3ATK)W.W#C:\JE;\?8*ZL*5_;RC=XIOS",WZ_(=V$_@BLHH%CJ& M,<\H)!C;1&W%(2%Q3@3.LXQX!0B?D3,U.K1J@KV>5[A&YX!U\XP"P#4P]_5" MRMLONH!#(+?HG)11O:(+IAXZ19/?TS.;K\@M>%6;6C97DL5 0)[&$)-+*A@]JF&0J271*-.-> MY5&-DF1K97BUDW\-W(+#BD W-82]]=]'99C_<&M("V M2@=L]^>#4:A^?TXRQVWXYP/#4<<_KYM[;HW:PD]W1;%5\MUV;4NPJ_5\):MS MYM.U=6>*Z"Q-&8>(80T)1\(L#*2")%44:XTSQH37KJF_#E,CK"KVI#S&+\.< M=S$J\](LL%D!.5\K83Z:HFQ=6K8L+3Q[EO89+,=MV&&'8.@=VBJ I]+_IH[G MN3D=$-0N4LZT>3=LQ(]6\\UV';#@P15XAMKG[:'!N%O _2$ZVAV^XE&]@Y;+ M!+][72["C&B['U/FFLPHDKF("8,1H=QX<*FTY:HDQ#%B*$&_*RDL>/!+YE\(A[\XBT]2S>\Z/NW:[XU4U1CPDD$2:SC*C^,8L&A2%*: M9EF.)*4^37_/R/'RE4;H]EMG38/OMMFO??GUUDZ^X&F^G#]MG^K@JN=Z.#Q+ M+9R!VHTW @ X,&<<=.R\V??="UBVH!N%4-4'SD@9MXA MZE'M0 N7.Y_"&T< M%;U:/UFF*5V4%^6:-4%81T1"*B+C2"#SMYP+ J,$$1UK@=+8N41XEZ"I+:9: MNE;>^]4EPSMAOGP*'0J\H1V*O9J@6O7TKB#>"9C[T70HX$8ZH&X#6*WE@Q84 M=T&CXYBZ\_;1#JM=C&@?63M=WW/O2CW8E^*+>EZM+2N?*I6D5)XG*$I@A#,& M26Z#^QA&,#-TJE5.$ZZ\#K$=9$Z-3N^6Y0!4M9"6H+; -_7- 6O'K::P" Z] MM51I"W;J#E\VR@.@4'M%#A+'W1MRA^!H+\CC5C_:*=:;V;W6<[&+BA=)3LRR M#9ME&]&0"!%#PRT46_'R6ULM =6?6#U!\: &[ S 5@;0(1N@#7#?7W@-2*7%UA#H3PP M.WC"VV,=YH6S^[IL*+S':M@7Z+7V6KWUP:QC->?UN-%6=WV,;*_V>MW?;_57 ME=M4+[?BFDW\=ULUPT)1J2F%4N 8$D(5I$2:_PB1*L090JGTV5Z_)'!J^^QE MT^,@N^H7H79;^84$<&!FKU4]VF6_L9$<7('/;"[#K?A<@0FTW+LH;M2UGJOQ MAPL]Y_O\_;KPT]J#L$M+V6K"D=J]WAP!M!?95#WC$4I8S @E2 MB=UP(I 399-+(RZXEFFD4G?W\PI-IN>--L9 5ED#9&T.L.4@_\/=*[IF?"X[ MHR-A/C"#-5: V@SPK@VV+9*X/TM\P7;]"H!<,R3N?NM(0S-^09$?S6B=_#3L M(?EJ-UJZ'JU%-5J!RX\$@+C#Z[WFZ:,YP0$@:/O$(1X7T$7^E6W*OB3?;/7# M_>9];":I1&@$M8QLME_"8)YE"11$&C]9),9ESGP.2CQD3VVW\ZMX5');-<'Y M;=E\B39XWK:$_[!8_2A>4B9H]1,/X%F?&:$KG.SK<7\U?_N#@=\L8_Y;L35H MS "_EX: 08Y?>@ XI%]^1O+KN^C=D#AYZQ<>X>^X[SIOU)7R'E<+1DZ.X1FOK"+;U M!I7B/;*>/?"_[(.'1W7H<^)7!=3=@PX/[$C._L[;;.-V:6^&[;C&_,2S WTT-=-_#)GNI7W9CJZA?6,_CV8S7+DC1B M,5-0YU$,2:H3R&.9P@S+/$'FD/\)U]TV$A'=Y+ M-?K#T@"PMZ"J!7!3EOX1Y99+RYB;RG4UA@1U4?OC&,Y9[:'#V&YK?YA..+!7 M/*P?$;:;C"]E&?_\@G#W99N9(#B+-!19*LSBG28P3V4"*3%_Y$A+SJ@/][D* MGAK=?;R[?7/W\>[;W?NOX/;3._#UV_W;__.W^X_OWG_Y^B?P_O_^[>[;?_O1 MH?,0N#'@$, .3'HME5&N_V=IC&C,4 (3 MS')(J,QL7*59E3--B>(HDXF? Q=*LZFQG#4,E);=@)WVY;?9UK_>)/.L619N M.!U=PM<8I*'=Q##CX^\6AL8RE*L83*]QW MZRU9H\ 7];S+B/YLY(GY,UM\44]LOI2V%4FU,6\=W1F*94YPK"'BAKZ)$H:Y MB480Q78[-3(OA$J\W,\K%9H:8>^4M"=*]O/P]$&O'1]'WW1$U(?V68TIT-I2 M%E:XV1T<63YN#47K;"F@$QL(QE#.[;7JC.OT!@+OR!D.]=Q^#'L0 O"RF]/] M=E-LC'=@&;Y933(9<:[-,E[&N3(+>B$@CQ&',8T3A;,D5A+[,*JO E-CT+\? MQL=4];/ :J^Z8_Q8[R%Q(]$A@1Z8-(\BQHXZY+7TOP'OYHNMO7J(C8"^* ;B M3&_QHW)D7W ..;'W<_IQX"^&56W!POOENWGQO*I*J][KRO>=92G-J(C,:C_C MQH6,XPA2'DN(=8Y2K2EB.O,KFM4IS^FS&[5LEE77IF<7K H\>E[;B+_-SW+= MJ/ZYG3_;B;?PM&<$[:!.*U;UJ@$YF3V(5NY MW=2/FNZ6MJG,:OWSD]K,4H7S-+;)0F9-:].&&,PU%E!HC9C45,O(JV)$^^%3 M/^N6>,NKP0SUY M3;_O\E:4D;=%W:K][7:]-H\VBR-*$T4U1%%F? 6)4N,KF&425I1PDN69B+U* MI)\6,[5OM='2YO!9-?T^V#-0NGVZUP,T\$>\PZ;6\ ;4.H;[GKLQ"/1EGQ$R MZC?>;>CAUW[AZIZ=$E9/SVOUJ);%_+NZ6XK5DS)DG8=4GU=^G)RZJFVI:*L._KPHO>!Y:<*NA]N& M_>&Y1>(R#&X$$AC:@=GDA;:@4K=>6I1.@D73:'X#;C=5,[PR&6&S,NRS+OL@ M#; CXH%@J&X*#A+'[:7@#L%1)P6/6_M15K-[TG2444790&:MY(PGN19YAF"6 M85N5!BN;6:5AIGF:))AB:B[R<%?.BYJ:R[+?0.0[70&KE?7CH@Y\W2@H#&H# M,\\>L+V:X/828-YD/C@%VQ%Q$CKR7HD/$,>[ M*%YWA^C\^IMYF\I =B6;'/59JB*<(H%ACG5N2Y!GD#(:0:6HCI-(4YQZ!99? ME#@U%Z:E(I#7=C:YC+<;%P5%<6 :.F@2>P/:B#;Z#M4MM@.:0?K&GI+WBAUD M.\SO[B7;=:-_5O87-E_^LMW8S[6N5!CKF I*$$Q)'%6%<_-(93#**.()HE@B MY\X&1T^?&H58!<%#I:%[YN\Q:-W<<#44 _- B4*M7(]"F,=PN.<\7P7+6+6 M6B])H$H^9\WNR%0^OF>TI.2SZK;SC\]?U,\#^IN2#\:;^J(65?66Q_GSNY6- M_YMASBAA2L)$V1H1!,>0(TF@3)'6@AG*TE[U<,Y*FAI=U8J"MJ;@]TI7SV22 M\^BZ^3E!,!N8U_K!Y>W77(0BD#]S7LZH?LQ%T MM5&5 !A+P,Z4$<;!W5L;8SQ&6O+':ODI:W3%8X^?2M728:@+=,4Q7 M9,V=>-A5*_)WJI@_+"LJ_6->S%)$=(Y(#%/%(DAPEL,*RI2;XW2K:;R%^"*K7*OP*J$9:@GN@U'?]?0:$L(OO0R&OL?(^ M8^B99?>YJ_TH0*KY[/UR8V:0#_.%6K]E&_6P6O^VE]*E][J52X,_S99W3_I=A\M@KY-UF M_,'P')@F/#/82_7'3UI_@=K(&>N5[$FFJ[^ I6^N^LN']"@@/__CU]5R\]@< M,J>Y2!.52(B%YI 099C*O(:04$H-32F!E'*N%/_RV5/C(:,>J/3S*$]^ -?E MW?8K0!B8//;V]PA/. 3"HR![?T#&JKQ^^<7P*ZM^VN*N^ND'=XQ7*/VTJB\J MHI^YI)\?U82;OUT]\7FUH/J\7GU8K9_8W5+;/\HBPVR]-&17W*_+C'A=AZ:K MKW-C4?E#E1[_SCAWMV*S98N9R.,(IS&!.BJ34#);7T,1F&:)5$SF<<:]2K0- MI>C46/&3VOS;O^ 4_6>5->3GFPTVFFYNW!3&:DP$+1MO[(D;*,T$+3MO M0&.I^2*!M=7ZA8VUH+#F@I:]P!I\ RJ3PWF)0P]*((=R,#5']3V'!OO031U< M7K]9I6EH=J]_L^5#5P]+&]EKDR+5LBA5>KLJ-I]6R^^JL$[V#[:6Q4'WL2S* M1:0E@WFB(IO%2"$EJ5FS2Y3B1"28D=1G @F@T]3FBK8AU8(3FO6([1O7L@K4 M'0*J@#'SR\T*_%8;"2HK_2:9$(/K-I^,/&1#^_NM :K;!H/;]=I/GG]5SGY:;50Q MR[!Q[Q,I;,W\'!(F$DBISF'&F$X1Y0FAM$D8_>9.TQTBG;[EEZFBWT9@X:8% MN*T"5P8G?%PQQP@W%YS=J/):V$;*R=AI:5WA2D^XL9B5FH8C-@"Y4J"CE*:2E\ _;=,,!>Z:'; M!SG@%+YY4)?0UVH=Y !$1^,@E[O]#UF^&>C5B^UR&D!RS$<[DQRUNJ.@Y?C>T8[>CFK;OOPY?Q%/0N.+DH,E2PW!\J]@?;ZKMZZ MF<6,$90E%$IBUUJ819!3&\22I7&::8$89EX%2)W$3HW'J@T47FZ@B/8.EZKT M]2Q0Z@9]QI(4D8Q!>Z!E6PU)2!$G4*6:,IIPA9/$K^QC>/#'J?Q8=O0;#W@W M5S4\F*^]"_C^ J;^A62]( I56-9-Z+B%9KV ."H\ZW=WSZJ.QA)6/-Z56WI5 M![9Z=;A\*#N=[Y?.J1"Y3?3%S#;L00K9X+4M'U^ M7I3?CUE$R_VB;Z7!LK(*&+WGW\LUAF<=2.<1<2.L05 >F+-JG<%.Z;)+Q4YM M4.H]R K;&ZU0=22=Y8Y;5M(7CJ,JD]X/Z%U0^VF^*;<6C8BWQF$V I01HXH9 MSF)$E%90<&P6X)FDD*94095'*$FUYCGV"L;ND#4U#[:E:OD)B;:RWK6RSR+L MQD2!PXA>^L$69]RUY? "%?F^JRDLAUE,>(SB#$&<"P*)0#;\PRR^.!<\9BI).''*OSPG8&K4T.@( M&B6!U=(]"^LDB-U$$ *:H5=+?JAX)6)UF=XK$^OD T=+Q>HRIYV+U7E=W[8Y M5:5JXTK,-^KC_+N2=\857S[,^:+N-7V03_%;H?1V\7&NU0PGA%&B4L@Q32#A M$89Y%!EW(*6Y)HJB&!._YCK]E9D:*1SE%[TW7MM3&<55*0VLUF4NUT_%UKZI M7%>-F^/^S$BC,3 /-6: R@Y8&@+VEM15K6_ T8BUQBED;Z#K40W60>@*54;N M,W0]:,?=B (\LV\M[?7\.]L8D9]6=@.*+6Z?RI+.@A&,2:(@TDD*2QN8X^+85^XOA]%[*(IWK"%+2'_]5&I MS2_KU?;9+-MV44=?-\:AL!_&6_91-C*(0#$>C5ZHQ*M*' .R3D8,_M1]R?S5BJ MM?$KRS/W4I&9D'F:QR;6-\ VPL4GG9.R7*T)X7OXIN@'G:L[*GB&KA6!VI:SC=Z/?* M01J840_&YZ9AU[L2\W 4V8%"(-8[)6%4(NLP\9";NBX-5@3@RR[?Z$X:@IOK M.=NM:)M%[^U2MD)WS>_,\DK:$\:J)V_K=V4KJ9DD";-SUZ2QGK99QH+:\S"BM;06)K!%A@]K#O \C71"88XC#4DJ(LBYIL;1%BB5"8JCR.LL MJDO8U)SM1E>[;VJU[5L4X 2L;J0?"JRACZ0/J64^O-& MG\^5[[BG'V/\HI9JS1:&IF[ETWPYMP%R=A581_S6V4!"9XQEF8(B1RDD*LJ@ MS8&'A%&A8F1^I[U2-)RD3HU#7JKJQR!N,+M127#P!N:46M_2D7NI\:YZR\6, M-6]N\0(I$,FXR1R5;;Q@.*0=OYO[%N'XKI9;]<%H;B/N;'3NW^>;Q[?;8K-Z M4NM=9QCK59G_R6_LCQG)<98G&8),4L-&>2Z,2R,0C#5762IX&E.O9H(]=)@: M-WU2&["NS/ MSN&/OQM-#8SJP*15:P_L)P4:_<$/8P!H+&CWH&J, ,:*D(4^ M>D,8K "(OP8C%P;I#=%QP9#^C_)/VR^7>W4;OR;GFF%,\QC#*.*YS1W((8V9 M^3%/%=?F?SKFKGG[QX^?&F5U;].XX-7-0]>C,##%5+N;32='_Z3]4V^0<];^ M=?OG[>Y(W#]QTVB9^^<5;J?N=US5,P!O_GTNU5(6=8MAI%D2 M2QY#FJD8$HEL SQ,;?!=CJ-8QZGVZAAU\/RID=-.O9Z]F@_A.ZTU:%BY@Z>/FZHW&G3CB+DSESFGVWT=O5=K7=)NU(PFA.E($X(A82* M!.:4))#S)&=<2);'VC7-Z,63I_:YELJYY.A> *S[,[T*AH$_4&<$O+*(3EK; M*WWHY9-&RQLZ:4 [8>CT!7V#UOGF;A>)76[3SJC6),M$"J.$)9"0G$":4 D) MEUPF'*,L\@HR/2%C:A]C^PSAX^[LOCQ-V&M>U"<+OO/J"8@=Y];K@!OQW.5E M(U@OS'H$KI]%)5C,^K&$DW8]VIS;FF=NUC;2T%>J_J$*M MOZOBPVI=_KN2]WPQ?RB74H>5Q U'9%FN.)29B"")> 3S5&60X#R6:12;2=RI M5V,8=:9,-#N;;%R)FG\O3RWU:@W>+MC\R:<)T_6C=GE?8MRQ&(N[[MO#4+8$ M:0RR_4- ;1)HV>1SO#S(]^7>6&K4$1NK%U7K YKO1FYA1V[=C)S]AN;UR*WV MMOTU4/>J8+!V-;RZ7LAX/;*" ?*BK5:XIUZ9K'6W?-YNBH_JNUK$]:8EYRI3 M2V9(G0#4S2$.!-/ MDTL[KZE2] :4JH)X@*@!!TQ"9R*=D/0Z24;G33Z;/]1Q2]\5]/-:B7G5^GPI M;Y]6Z\W\?ZK9.48)CJ2.8$IR!DD6)S!/F/DQ3X4@2-LP1K^5]%E94Z.)MJIE M& UK*6LG[^?UZEFM-S_+7ZI_;N?/G2J!VN M;97+ ',#K-P*^V/(-?=%F(*MO<]+&GD-?M'DX[7XY5OZEZ7^85T@X_:\6VWY M1F\7MT+8E/1BOWB<14+SS,S,D,&:^NOE*?MVP M]<:-==R$^WPNARH,]^6\40_SI>VU!WB5..I?&MD!=QX1C'*=09W8,/4HSR&7 M@D/)N&!:4///O,;]_5*^+NJ- L-A_K[*Z!P2<#=R#P_AP#S?*-?:$+H!.RNJ MO2&SXIEORJV*L!6IW8$*6)':0>CH%:G=@3A5D=KC[GY3P;V]]G[]>3?+OV'B M'XO50[V0PA%E%&MG!_G7$#4 MC6O"X30PQY2*V@;(>U5!K>L JU,W6 (QR@5AHS*)F^&'#.)X5\\-K;),AOJH M6*$.BJ#9[DZ6IKZPC?JLS)NVW,RX8E&HZ"X\;88-@.O5=6PUIJ?J):8Z,] M^%+V8J\-"+A[U@NX4!MJ?L+'W6/K!'618\;BKKFR4+/]>E)/&+*835!:L;*P0":V!B M*'':%4@JI\N6H@'[QEQ&(U3?F Y)X_:-N6SR4=\8AUO\HT?_OEK_PWQR)[MV MQEPR32)(I;3%,BF'.98Y3*E*8LPD442Y1H6>%S,U'0 M&I@=:B5!6\N+C3=]<'*/F@R#UTC1D+>+1?,Z%8 5Q/AM^+1<@E25_.D!U M'^[*U5+I^:8 \ZJTEP1RN[8NV^91@>JP,%#(Y&5,.T(A.VX>+<3QL@'MT$6' MJ_W)M;V5TD0AVNBBA C((ILK)Q&'C* 4ICJ-9,0T1<0I"O'TXZ=&IB^V"MU) MX01NETGS.C3&W#/MD81_ A%W>KP.F9%HT>U5\:*P\W9W4->)FT:CK/,*MZFJ MXZJ>6QRVRC<_;,;<:JC]YN?^DKK?]NT/MI;W5<7V3ZNR%:J2!]O%OY@';-Z9 MR6T7R3G#F+(HTRED(C'T)T@&NID%3[1SN-9X!_[,X8$5,[_:T+ MH%?K)_M^P-):4)0=YYFUMK@!1[%59=^SW[Z^LW=6Y=X]S\9&?'DHPQF.(@F3 MF#!(;&[_F\GG<$ M%_IO*8\^9J$VJ<=3?-QM[]$'Y&@C?7P-KCKX_J)L)1;#K)_W_+M/CK,K4&&; M(,R?S"7W^JOYUT(S4?_.?,N5\Y]0;*8_S&$L#7T3:5/;,L$@2KF.!2>:I4X5 MW890;FI+TD9ML)D_E1FI=3U+\^?N1+V(R@@**AG @?" MRO#?'+Q;&KHS;PPHHPR!-0%\*+NO[JS8-2$#=?^QQ'V_ MS7]P+F]0#@KYP&SVYS^L+OO@@X*_TB;I$%?>J^]U-[H=6RU^C]SM)W8 MWN:V-VK[/Z3?FJ+= 6A9=;9[7"W,_<7[?V[GFY\SS'.EHI1 @G)I)A"=PSQ! M&FI)N!8%CP=(ON]&S=O%=H4BD-M\4=RHKK"K\8?NK?-] M0:I/JO73C*69S C-8,9CV[:'1Y!K+B".>!J3/):"^A5M/A(Q->>S+)NX6+$E M,$L""_9/\,0VV[7]2[5W7VXA_%1L[;N#< )?-]ZX#K6!F>*@Q.0-L/H-5E^R M9?LPY26M@->L+MDR\$)QR?:5?7 MS!35+"8I,QQ )6@] M8'?=)QP"S,%W 3UP[+&%YPM)L TZ9\$C;[_Y G*\N>;]A)Z+G=7RP59\+EL5 MFD>47P*F+,^2A$-.=%D&6T)J8("II"3+HBCF.OI@@1'MO&$(E PXXUD6M,XB[V:AA[+F-HG MWZ@(?K=*@EI+S\_]%)9N7_N5" W\L?N"X]_S\[SYH3I\GI P;C_/\R8>=>_L MN-3_4.R+*N9EDW.V^*1^O%V5"YG2@VC.P')&>91I*++$?.T4<4A3K6',1<+- M=V^F?^%Z!G9)V-0^^Y:^8*E^ -'2V/V,Y2+$ET^R0@(W^ )BCYG1%;25[7% M=1$\]_.HD"".=/S4]0(&2CMR1:7C6.GB(T8[17(UIGUHY'Q//P_J;BG692 < M6[Q=/3VMEF4X7'&[V:SG?+LIB[&ORG][TPZ1VP?0%3.5Y$*F9E65Q"2#),Y2 MF*<)@N;_J1"*I;GT*J1^O4I3(^IW\\6V/(Q5Y6F?#4A:;3?%AE5!U/9,<#TO M(Y;:0=: ::,<8,_/B[G8U5RVB7W?UHH5V_5/4.[F@U_5YK'>82YCKWVWF .\ M VZ.XK@C._!,TC(&5-94<=$%:-L#-BNP&_[WN^$_&4'=LC.<=QH.\T#.; "% M1O5]PP%XZ"H'?'+?.J0/;%E7M[8SRVHQETWEZ\^V%4OM0=SK*L?,S$%?S;]4 MLG>%;S##B/"404%B 0FW[1YC@B!+$568"4RE5X7\(%I-;0IH&W4#7IA5'I6W M#;,$L3,-[&WS[C09=IS=.'[TT1N8YL<:N!YE60,"':QZ:PB=1B[R&A#&XUJP M(1_>C^3K::/XMJJKQ;S9%O.E*@I5?%*;>]VN(S-#<28S11B,*5.09$Q#2BB' M'.>8,N!-:V ^50/SHEQ5.-[M UH@>O42/2J+]@'ED"Q[/:,?)S9/;GW>G\W; M^6C<[#(GU78!J);ID#R2B5^\6U#MIN8([XYCI&I*U]N>&!OV!WC>KI]79K3]>#'L6+H1 MYZN-T,#,VMC5KNMW QH;VIEU9KCV=H#*D' <.PB^@4@XK&ZCLO0@L![2^#!" MPO7_C'8GAR2A+#R6/><@:VH$MB M&6OCW44*8TADED 6*PX1YD(*32*6),V2^)L[773)[+$._C8";30T7E2-NW?J M7KF.;8/=<]WJB]WKK5/O'&"[?DEZ H^AEJ!M4:^[Y#QA],4EYJE[_#A$JOGL MK2V]NMQ\F!>"+?Y;L?7[I;3%868H9I'BRBP*(QE!0C,,&>42QL:WB AF-$FH MBX_1)61JSD6M)Z@4!5936RT,6%W=F*(3TFZ&" 74P,S0"R-G6G !X00=%$K\ M]6'U_=_-[143F+_L":#SH:-\^"YF-1^\T[4]$PWLCI2Z?U9K9ELSE&4WFQS+ MG[\M9=T32:76#F1NLV>$W]8<=GL"[ M_ ,I^RK;_L,"?^X<8&"IO?LHSS=FTOMN5%ENS+8)%2@!&>>W9,O"IW:U%#I#$NEP5[KAE1^MXJ#4G// MF$2G$7 \4@B,Z]!G"P$@[=,DV1FC<*V1+XLP^?G9#/[&>$JV@MNS/;V8 MR5C(C*413*@DQE<1&%(E&<11CG,N8X6H4QYT#]E3CN>73I,2".)YG#P#STP>8+A+_6"#>:WX!2]YM="V/H?MAYE^<,G^Z[5443*II/E7,$,4PT) MD@EDA"H8"TQC3E DA-=.7J>TJ5'77MGRX]G8'\OK_7BJ&V$W9@J&V\!<= !9 M^2,H51T@4,L)E$!DTRUK5'IQ,ON04-QNZM%$=;O9KM6O9CGVM'UJ CI^6YJ; M/ZV6;VW7AH7=57IYO%'\?;YYO+/=7-CB?KUK]5#^SA8"*^Z6U6''O;Y?*GM8 M;)1^(>DM>Y[;BM3VCD;J?J,BUHC0%'$HXSBWE;0%I)I&D//$D%86$?-[YS:N M$S1P:D19:0YJU<$NTJJ$R38? WN@#L\X"V"Q C58X'[=:BE3]6,M 3,7-(>> M]QH8T*HP#0,;.)!>(U??O-/%?V]LJJ/OTFUW@FI/:);Z_]_74=]7CU[($U3? MY[T=JQOS_U?>7[^&T1-^.;I:5D]1[?&:9D_1^@,?>?)Z7IEN59V+_%I6J5+R MWA[\;M=KH^@;5LR-D2M>J/5W:UZ9RV'/A9>V;T)5*($MQ'91'1BW:I%&C#(> M9P(JG"-(HIS /)4"8J)C&@E$1.;D8H^A[.3")OPM ^Z"1>@O[)<0..3NCLNB%4?9WT MO %!/YO?-Z3,?A/;K?Q_MG6:T+?5K91E5C-;?&9S>;>L9]33K::_J"H+6GTU M*L^%^EQV _JR[RU<-:7/AGE8QV>=8ULF5LRAE.,5Q#/-7\\Z(\=8NE'"=0@-S 0M MY7:IX0'K?IPU/511CV,!XU;L.&O@43F.\U?V^[9/[U*U-E+?_-Q?TG25L:V9S& <\\B608PAUUS!/$TUEKE V&C@ M7\!H"%V=/J+QZQM5JO9OTS7(L+H1U:N-TCA4USYW:!O8/GP _.?I\PEKIJVC M5!IZ RI3;T!E[*[75\!JCT,.1B#R'43%4>E[2) /)X!!90U0Y*X)&WNW+2/, MS.)VED9I*BBA4"J*(4DE@90E"4PBED81RQ,5>Z6?>LJ?VLK3?!!)P%IU)P!W M=#"'@W%H[].A/MUF!;B-_YT;NBUCA8T)(U6F.X_=I3DB?3C6Z\]!XU:'K M>$S/3;)ML5D]J?71FKKI!Y 8%Y(7@7) W M-.V47<';<+0N'WM [9N>!&R #U1&74'MG%Z2-NW_F9OK1'IKC M;?U8Y8OZKI9;M8O$_ZS6>K5^LN'[]WPQ?Z@.IA*B\E3I%&9<*;-XY@(R; @F MX9J)'!/.X]B'6YRD3HUAOAE_MF!5RZ=GVPD&L*H5C%E-F:E\N[2!>PNU*4/X MEF7K0\^-.+?!<".@X! /3$.UOC>MY*J6RF"O\TWP&KY>4 5B)C>9H_*3%PR' M+.5W<\\H9E'6]2V^**'F9?RT[<7TP\KXL%J_72LYWWQ<%<6WLO.T^F/SQICW MCUF4:DDDEI#P7$."!8(TSCFD),U(A+&DU"\VN9<:4V.SK^)1R6U5^>;MHUVI MEQF,.U.J$-72&&"M\3U4Z#E8;N0V_! ,S':- 6!OP'>UJLSFXO>K*Z; M>$Q"$ITE$B*9QH;Q4EL'"2>0L)P:H%*=Y+S'0K=;ZM2(KE:ZJH[8J U^V"(8 MN\VB-VHI'FUUK%XKW NCX+7"#8?M."M<-U@'V'KSPBOL,O>"S-=8YKK!<&:9 MZWCS &>7O[+-=FW^/%@V<LN(1?#"^=G%X.M?:9?(-H>LQ9@&.0*\?B0D<@S9&#+K*O0+& M,4Y$SV@PG5/1;HB\3D8O/,J_?>G[Y<8\[E;*M74FJS\^&L\RFK%$H8SH! HI M!"0X22$7E,.8(YHSG&98.-7*K% 6UBC?-7X!5MC/$P /8;NX*!M? M[-0;*:]6IA>1Z-7+]/Q31VMF>M&P=C?3RQ>'^_#Q3%.F5)K8IN>96<LT/OPNI(!\^'N3#/_6U MC/SA8Y\/'_?\\&U^HN'F;X^K;<&6MM_:!_->;)1:WC\MYWQ;W)5Q$O/ORA;^ MKW<46!QE:1I'$(F40B)55 5')2K6F8Y(G"1.?-!'^-1H(D*8@%I=L-.W;'KA MGNGL/0+=Q#$TK@/SB5$=-+I7%5]K[<_@W".UW!MP]]3R(8$?*;7<#L"F&0#[ M?]T,P*H>@/EN )[-G7\-DUC>%[F.Q'+O1XZ66-[7V'9B>>]G]$XL/]JCVZU# M9TASPAB+H(BP<1)YG$)*S7\$QCR3!,6"Z"8ES&W;K%.>TV?S,JUKX)E@MPG= M.W6T&V"W':[K01LMM?S$EGUK*RMH=OEE2,+EEW?(&CO#_++9)W+,'6[JQQ]E MJ]ZJG.(H\3HL[)0V-2_2 M: BOZ;C>#:T;*VF=['#DT!VDT,(> ;F@Q[(>!4Z[#+_BC*')Q\[6I'#+J/:)0X[ MK[LN;/+MZHG/EW7-U+(ZZO\H>2?MHD7/V:Z?=AG/M%9VA=.JC6%^9U;"LJ2< M%MF4=\Q2IB*&,PZY$@02;",M,;@+VYH&UOT_BAL;BDT);-H#;Z!E0O1,O7NNU^'WH' MAPX^1H'C28?3]U5"4 >'_US4ZO"">S8Q,DH9!,N8B[^K^OW55NE&1,9C12/81*K#!*52$@12B&+:9K+-,DXU3/#9GSE MRAH'$GQ>];: M,>V0"<]=UH_\WJGU_#NS 19W2\.F95Q.8=:E?U/RP7AIM[:\?[DZW?/N;M*/ M4J[S6 B8Y)$A2L;,,I$H G.4LD3&*N72Z? B@"Y3HX.]*:!E2[DS55L#]N:T MO(S>WMDUX^C&-B.-SL#,-.3 >)-9 $@#$=\UFHQ*D@$@.R34$(\,2+Z_F/6Q M+?+Q18D%*XJYGHMR0]'FE]X*L7VRG6"5O'][]VUU9^N+J??%9OYD_^V3VE1U ML+ZMWJBR-)E6Z[62,YX(+7">091K"4ED_%HFM88X2T6FS0HY3KU20<=2?&JT M?FA:E;?-]L:!57G$8*N^K=6CF9\MT?SP8<#*?);TCYK]G^XV O^A=S]^:=T7JWN303.D8L2G)(DER9B1*9U4PL M">0V$HOF&$OEE!,TLMY3FR=;;4%^^_H./)LIL6P/\BK=02Z/NMM\-\&Q''BZ M&Z*'R-%)7XD L!" _<;[U#J+.(_:I)J-7-;Z?V'_$>>A&*8EB;MX_Q36MZNB M7'GN9M/W;&W/2HN[Y?L_A"J*>_UFOC W/]PO?]N7EFZR'8H92G5D.U=!%A,& MB43F;UH+F&4JBI"2-(^=4UJO569J;J"-_AS\]<*]! M;1&X-RY':\S>^E5=#S)"[EFV8X[42%FW(XR85SIN*(@[TG.O%C%:NFXH,-KI MN\&>V;>&YV:^+J=OFR&\ZU^,X@1)R26,4JDAH3*!N=0QC"FE*D$DDL)KQ_.T MF*G-<7LMJY("O5M#GT'5;:%T/58#SRI]8.I16K,+A6"U-$\*&;EX9I>AQ]4R M.Z_NW05BO57R;EELUS;RL.XY:UAI'T@]$R+.2'IW,5@ M/AA\)IIQ6[F2.S<]OWY)2K9EMQ^D3*EU@;F9=,F^2 M5&VB)+!F#$00T7QAHEVD.64+R;1%P67.*8]3O^=X^\W/S9)HI1L(^KMCA,C[QJ8%.HGO6R%_O]Z[A MHW ZNDJN!&ELOX8O/OY>AS, A'(1'.MBVOO\,TH^NGP_]]DK?,+/+]_G/S^\ MSV])I^?OMD\N;[_1U=Y-_YO51UF7E5A@AG,(B0(9XAF 7%,(Y@2#)*<4H2P6 M&9:;G&"WGK[A">1W6GC[.<9NI_416]^P[WO*R8;?PSL\E]'\W;B'.\NJ'XK; M/M)?:_T/G3'/ 9;&(_D113.N!I/ M?W4,0&5'RX M@,8551].M3QQY8<+"CZN_G#I"Q-?"K2]?U#V7YMG]^MO56VR-RVP9#PM> Z* ME$!S@9@#7% (9($(C7FB!/2Z]P\NX=R(2*MUI]=0LZ[X/[NC?42WTC[!@?_D MT(Y\L@\Q8/,_PK=:FKC)5L]HI^@,CNF7QN"IS^,GY?M]'+POP1OLA'VQHX'; M15<0](-Z7ZU^V$.Z[:%[]'M8GE/P-$UCG *<4GW&SC,,"-=_XRP7&<$BY<3I MC#VL^[D1_>?[NSM:/YBEWUZ !LZWQ)#$ZFJCE[=?5]6#]*WA(3GL#CR^&A@ MCTW2O:JU6]%;MMTD*QBW4.HPY$)1JU_GT_+F(& >D>*P5OPO#U_JYK3)+3ZL M9'=WDQ1)(G*6@H*DW-1$C &)80(2R1!6"44\=CHM'VU];GRU$="][N%QT"[? M"UX%QS^G2>)UWW=2ZS/W?(^_,]G]WDEQ^_=Z MIS_DSTJO376OJERM/YN+?/N3K$W5+_I5?I:KLJK?5VO9O+R7O4IAM[_I#SR\ M,F_QNFG("**<0P485 6 (E. L%2 E!$"(69YGA9N:?O"">4SOZ?)](?^JT#_ M'K4:1%:%2.L0Z0F(W3D@T(A=YM'I1V%D\GUMJST:C2*K4M3^8JO4XY'9*R/9 MJA99W09P=Z!Q]]#GHW6XF @$Z]L%A*^5- M9.6,MN@:2<=(4'42CN YI1[W]$1IH$ZJ?#IST^FO#.22LJ%?O]8F%%1OHA_4 MIS; YN#2+<-YR@I"-)=0!*#"$C -,$ Y@BK/)<]SY,4J+KW.C5]Z5Z"=O#9I MZ$81O4:8WN;UCO^.UO^4;76W+B;"DV2'M:C7GIZH12* MCYSZG):9?&!XQ%%>7QZ: ,"V:7+3'2O[NWV#QFD&!<\AR*1YOY>Q#.CV*%"Y M4 Q!D4GDE=K-L=^Y,=9FZ=BLE,?+5P]^]>/L!'Y?'UR.K5S+M]IT,V:;GD'EKC3<756ORW]9ONPR_+"DP RS8_J M.B&-R6"FKW?!MJM'R8WI)L9^]#M.HPVPZD0[?=IBFS>V) BW"2![JMU$>X/5 MZA49Q8(6?0N%:,M1*$1SKZB?4QW-C3\W1Z&=L, MBK_>E]]M$.#*7G!_;Q7PX]>3>+N19@@41V;"?0!;7\#'"U!YT]HE' )QULLK%SU\19:[;*L7KJKZE/XV-^*U:BG+U5?_B>)#CHN#0)(JA@$)" M 20P!MC$E>.8IP1G2$KH=0T_1(BY4+@+%&]LZAX]$MI 6%>1D;I1#]&: M_K3GJ$Z_J&++LKU4:*X,*/<=13=R&GML1B:NH^'>NR#=FTVHMU5++H6-]33O M:'IZ1A^V8Q0X#GP@KB%#O7U%F#Z:>R!(1P.VA[8UC%Q- B_3VEH^^UI+.^&: M+O* I(A)025(!%0 IB@%F#(($I0328L,<9KZ4.CIKN9&E"^J'W)%C:M26UQ@ M78%.;C_&.P.M&Z^% 6QD]MH)&>VDO!PNXTU&E\$(1#EG.IJ46"XK?$@?#M\8 M1A(V<>A*W):RWKPBE/7+RIP*%U0@2I,T!3F%&8 H$X#FT$0")DC$"<Q&&(&P&YDQAL/F31H.@ 1BC7,] M34H;#BH?\H;+5X9$&OO<,3U3>L6:>Z77>IXM>%+$.240I*EB '*! 4$2 043 M7!2$9QES>@9\I1RS(YQO^JA&C80^8:C#A^$\ZTP([B27Z-'Q2_1F[^Y\4V0[ MLKK82_/(:#/-@/@$ T\R,)-% -L!6MH!*G<#U!:$B6A_@+IJGY%=)]&#&2"E M!0D6\GLUKF?C?(>W/F%P[]40[$?T7M_I% M0H4-7\FH/@DG!0,4(PFXRJ ^( LNB)/[U[?CN>T_)@'8O74;;JHV^17Z<08< MYD6!",<@BY,"P"(A)J^009U#%E-34QFZ5 \8%? )*@A,!OCEG7XL&$?>VHW8 M]K!QI$"2%3TRLF_*(S6F*O!($/L5JAH#Z@F+4ITJ_=9.YDK_[T=O4D?F)JTLY:OD814I[^\/CKXR%2/>2MK(3=1\Y^3XL'I;4CT%RO7# M(HD5I(54(,U5 F":Y8!@A@$CN)!%*F!&I-M[4K^.?9;/-&]&/WR7M5Z@JZ\1 MI\VW2"VKW]KL'JI5*%H:C3Q3?#B.@MLM4WADQS_>6>2LQ#>[AS0;9YL^-&S% M#AH!Y0%3N" GETZGCF/R .)(J)+/MP?<4VUJR;[37=RWU;*,X^W+JF*-K'^8 M"(8WJ^_W:U.A76NL^[,;J/[IOJ[U0GU.F[+92F)JY@64!BPR25)ES R4 M8E( DK "X$2R/,GSG!#A?)5W'SF0=37=>9^6#7 M:W37FP_V;<9]?SZ4[7RH]^=#O9T/S,Z'Y78^T.U\Z&[Y0MWJ33-$YV[^1I9@ MNMO!::#+E&0%(ID !4J(.4D) M0!F)09YARK L4!8KG\*;TXH_QPNX5D9C@M@3F;G9L'^1.SW]3F,3SPBW4]U\ MQWGL&T*MRDUD_HQZ&IDW,AMEH_8C9N /?KG_C1:%: -#],<-$'\RA\X.BV@# MALWC$+5PA#MU/LTP!CJ]3BS\I*?@IQF8P]/T$TDQM.[$"VF>A2[?K(3\^5?Y ML"@H+G(>,T!S@@#D# ("!0)QD 9F;:]D1E01^*$]E?4CSAL<>*Z$2<4>EPOXM0'_:_7GJWXMZKN MXIYQ@9B*%0*(FFM^CA"@VEP%:09CE5.)4N84+'K8\-R6;2N;^V7%'DB7;Y:& MJC[RDFS%&I J<4]]]XN5H3!,= MR81)X75 <4_7,;<+>QR<[^A\3LG]./_KO M09WZU"N:EW]SX=2-[U D?6>DC(_Y__%N2Q_]KE&C_ MUEY+:].U?48WE[*WPZ:9VU%^9E+/:(>:KHCN%JF;Z,QDC7J>DS%R%?)%V^:K31:-[*/./:A+Q?FN"IE_)[ M+7GK47@I&UZ7W]O\>Q_KZKNLUP_/?I;-0J9,P3C/ $>,F+0F$C"((5 \91F" MB_UO)B7!1D;-@UI*Q\/#]>-R?D>=%.V1]SY?H)TWFV @ MG=L6=">]+4'_M-L.KN]_$N(.!M.&8L,U&#RQWO.'=_0?5?UB29O&+K-$08PS MG@*5J11 Q&-]/I(0D*501*('>8=]S([RS&=L:8WU:^2.K@!<;#AD8 MMQ/%2'"/'984$NF0&?!.839^IKM'/<\EH]TI2#PRUYULXMIJE1=MV.:4$6MS M+R\$@9"8:A %DQA HC"@$". TBSEBN60QG)8(^=R<1RO*+$9"//@U3>O ME>N)"G,&@O-TSY)'/='#69U#\ ID6'IU/:GM. 240_-P4!O^(:DOS-N06M(7 ME9 +1;'"B8T_U<0$BUCIO^49H$(1621)D2#L&HG:;WANUMT+^PQ/"Q<9Z=S# M3O? .L\GUT P,EDS\?OSHT7\?9BX\6RZKW\SC M[]=5_;*Z9VMUOWS&>75OH]:Y+.W+KN-1Z0N$"%<%R4%*$@4@A#$@B4A!F@@I MH! QCYT[S0FU.YCMY6S=F'1.&LD1#0!K).KA)E4FLE!&B'UDN0-H<1[%_D M2IM(2^,Z%G?EJC3Q9Z;&[>:-.U9(I*G( 9(%!3 Q&>#CE '$H<*>FX&@J,\H3R $CL "0LAQ0AF+ LB0O*]=AO?G8D M\?GSJ]O/GI;3/F".MM!@&,:V;MIPBC'BEX_K',KLV&]\6D/BJ&*/3(/CGQJ8 MAZ+O,#.O?-=EFRKC9=GP96429VQG).%QS*F*@8*Y*3>?F"02209RPM*"42&9 M7\2"1]]S6]\[6:/GFD55Z3;5KQX"-U(8"=B1&6,@IO[)$/S1"97)P*/G:=,0 M^$/R*(? @":&A-O;L%;KOQ?_N&_6YF^=T2(&PSG8N"& IQR#'3&!> MP$2ES#V8_F0_L+E+>)<1Z'0-;$B4XF-1S.*WIH(USX])!Z'7=WLN8E77:;5RID MEL"X F%.8"2(\ 0DP!F(E:<)D(JYX"[P\;GMNAW\OG4)C@ [/RZOA:&L1VQ M6]$&A,H]@L*G%,-P2"8KM[ 1,5@)A>,ZGRV3S9B1I?1;"HRZ_E:M4F%EY: MU^MUYODDZG[1V6:&6\(0F9,&4$*:=/?#(> MU$<3F(S8W4 ;9'/7HMLS#/>M6NHO-VW2E*T/021*Q@4F(,T1!#"G9A])",A3 ME&*12"25W\-3EU[G=GC:"FW7?4_L_]SDTVY9)-O"FW&G;U&)7147_:*AE]-UJ6KB7F M @_YY5NJIQG(D>ET-X8[K>Q#T0.]VMPET>LV:XD9P;:(J54NZK2+6O6>9/S< MK]:>9APGNI0[MB9/+TFG%?D0Z'HO/.YG+@8#=C;9E6)X@/J7D2.T/NP(\;+\ M40JY$FT>*)9*P1240$JI $0I! 0E"<@QB3'C5&^V3NZ4HZW/;U+3^ZA:AR;V\0_YF]+OJU7W5,N6/ST( M&V9Y F/]'\@HU=:Q*#* J60 DB)14*5)F@JWFLD7^_*9L=.42=;B@DY>=SOG M/)Z73<]@&(V\JK6:-GY4T8$W1DK[/SW)S.LG-3HVTIN7QAF_KR7 M:U/>ZJ-Y^RJD>/[PI3$I!=MRTWJHG_&U9O&U/@=OYSH4J,@2(LR;%F'B5J-=#W=6HMPME*[N?<35@6-PLL''!'IO0 M]1G18KT1WSB__F@TT&?$/T5;):*=%J/Y%S=>)'F^AODM;1AU7 I\=!, L8%3QC4C MFCH:J[0+([&!2A;&X/D2SD,S:C&F.=1$.AO9<_K3$QG+MLW M4/H9;$&C#TVPLGM7BC%LT_R%UJ5QA'\R=:R,4S7%*=0;6@[TP;D ,),8D!PQ MD'%:"$D$5L++&WW8P=RVG8U\D1%PD%/Z$81N.\(UP(Q,V5Z8>%/H*<4#<=RC MYB2MR)(S,-]JJ;*6V+L6[5FYW MIZP+W)?]V8%!'-V&L_A9<:.-O#9(LI-XP--@%QS=7=R!\9S(T=V?ET>G92 O MM@ 1H9QG2T,O^FD ME.;%)6^CAA:9I%DABAC@6"D 9%#YG#X MQC":.,R=_V9EN]K&=O;Z7"2%5 4O$$ %,O=/^LQ*88%!6J2HP#$L"/%Z..W1 M]TR)9"A]^*#NQB[/. ,0"T9!/SY/RT@!( M#HEJ2!/#F*N[GV]NJV?\U_NREA_K2O>R?OBHI]BZ7ZIQ@0DLD$F%B0CB ++8 M).ZF @C"85*0K) HWYSDW*C+O?,!)[B1N6M3,+$QX?G?.[GWZX;ZL9G'2+B1 M66!TI^&RC=#1NHHZL:.-W#>1E?S&L1RP-Y?Y Q:(RCPZGI3)_ $Y)+(!+?C[ M!X[4:/PD>?5U5?Y+BC?"7*DHZXOH'GFTD@C=>X]'];_=WTFQHUC#NY^,;_*# M^M*]#UFD4B AZ4''Q2J6=G]6TMDMXC)U I ML'WDY'['/MW07_9XS') 1Z;KXP5O=VI'?;TW+P4WFEO_2D_WJ%/^IF^TMM=W M%@'P08$OFP>'S9] MYT,3;#3TZ]?:G'2TB!_4)_E#KN[E6RW\F[6\:Q9QQAC.$@DDBS& ,N: ;M $R_5QH;N)TW^X*?\X(XCC]_P+)1T$9W9!*[#@M"@X SDK&( 4$D#B M%(%4)K&,4Y;$J5/YZY,]S(U,#F.PW4LD'0?P/$\$@65D8G@4E1ZV!-)9]:\H M?G2\W;&$/ZOL*\<#C=38SJ01^:; M5A%@-8EVJK3'NAO[K)%;.NII-<8;[3" A@OTN4:8J2-_ @!W)!0H1*M/7*NE M^_EU52NIU7%XDI<)'. 0 0!PYC#(B^42KS>L#R=*G,C\JWD M__W"!)DMEZ$>;#[-1'';)GX?PS_R%C-*79#-KZ(M)$_THO-)1W=N)4;\%?E] M5B$9/&"C%2H9+M&P/?K@UO4#6]-R98R%5S_Y-R.\EF3_GG8;4;Q@4A2<9 JD M5""3^90"1K)$GW@D5X7".6;0+0=J &E\B'*:+*F?'KEMFZCJ-#+A9[+3R28@ MKPY\OA5;ENU]E6?,WS4#ZK893C1((^]FV]'9.K^B#[W!>=4?G //V>ZM1+@] M* "H@3:1:R29=!<( -DAC8=H*^65=WYJ&I+>RN+2(( M,TJ!2DR)AX(PO9H5 QG."$^2/-%KW=4E=+*7V:WH3KK+I=\]D+SL&PJ"S]BK MVQD:+[_01=6O\ V=;GLR_]!%]?H^HLL?/K7 ^V/Q5O_MSW_8_$;_88YP?_[# M_P-02P,$% @ ?7ND5HGUOPHYNP 0H0( !0 !I8G M,C R,S S,S%? M<')E+GAM;.2]67-;29(N^-Z_(J?F=;PS]J6MNZ]IK9+=S*2NI.RZ/2^P6#PD MW (!-0 JI?[UXP%P 4D0!($X.((6GOV=<_..G,I^=__3WV?P?XV\!X-]7_^C5[.N/ M^?CSE^5/@@EY][?S?Q&6:Z$*@O51@^+&0 C> 0H?50DANU3^G\__(I/U*10% MTC%#'^,((;GZ60RE"&LU5ZN'3L;3?_Q+_2.&!?Y$S$T7JV__[2]?ELNO__+S MSW_\\<<_?X_SR3_/YI]_%HS)GZ\^_9?+CW^_]_D_Y.K3W'O_\^JWUQ]=C+=] MD![+?_[?O_[R,7W!\P#CZ6(9IJF^8#'^E\7JA[_,4EBN9/XH73\]^(GZ'5Q] M#.J/@ N0_)^_+_)?_OV??OII+8[Y;((?L/Q4__[]P[OK5Z[HFDPPQXOQI&K\ MZWR6+])R\<]I=OYS_?3/KV:$C??AJ8R34!__?-O_WYAI:O"G,KT M%2K/E<\&U6TQ5!X6Q,1*4PM,__QY]NUG>C!I3(CZ11626 GHWNO6@CJ,[JN% M^8D^.[*1",N%R/;:@8H.P1N"1I3*:OJ%3B4=1?;FVVY3O:G@%_/TTVR><4Z6 MY>IU89YN*?L^JB\_\?/7,*<'0?I"(+CZU]7$M-#5?%>.!##Q\$Q\AP()-[C?#S+;Z;Y->W1HR"UM\$;R()Q M4%84\"0C0$O;IY>\&-$&$+=>NQ<4?%FNAPO?[P=3_"W MB_.(\U%*Y+,YYX%9Z4$I0\) *0G@)1:9;=8Q'(6&NV_<"P5ZN"@X2H*#T/X' M_#RN0I@N?POG.$H\!A'<4Z\_)A*T$_Y'DCZ]F%]/E_,>K6<814IQMH\ZTN_D "HL 5U" R 4I M[L[12=X &#N)V LG=N@X:2?G0<#F4_C^+I/XQF6\3F-<6D*KC5?6!K)_EO!/ MWT'0-@$+W*23]K)X; M_;_CKRNGV@>9!3H+5B())-.VZ))BP%,.QF&*SC<$R*UW[P>/ ><^&XFU9W!4 MJ_=BCF%%MS*KPQL+TF0-9/8L!&,4Z""X-%JCR\>%)IMOVP\ \YT'BRZGE5> MC]4G[[_,IM>YN2BCX9F!,26"$@$A,I*""\9;%72)UAVE]KMOW$_U TYO'B7" MGM7_$=/%G*#+1?PT7DYP%+Q!9%R 9X)H+T5 \)P8"$FS2&ZQ\L>%%7??N)_Z M!YS7/$J$/:O_TSS4+KR!+/HWW].7,/V,JTR\-N2:&*_!A\! ,4VAKR74&NO(05%> M&'Z<][?MK?MA8, 9R*-%.8APX-7%O(IK?39;(4TZN%B,DM>6<33@K20WQC$& M@2<*?Z4+5AKCO/!'06+7V_>#QN#SCPU$.PB(O)O2TT@UOWZ]^:O")R :B'01$Z@'__%58XN?9 M_,=(A9"#K%G4@@&4#)EV1B^ ";29NE^P%B\#G(PP4Y"!Q\/ ^3 MR!;,:X7VN(+@+2_=#P>#SS8>+LA! MX.#-. L^*0M<:.[18@S8 MPM?2WPF:5_?/Q"X_=K]$#'\+.81 MPNR[IF&=3KNQ=%<7TP23(0N=@'%O0*5)??[XGQU_H!VUN\Y_]]OK-;Q_?O*8O/I[]\N[UBT]O7K]\\_OWY'/[W-UW[W_9_P] XZ AS*VY$] RX6\#F$KZ-5 M$5W=;,[*V_$T3-.8=IS9^I;@-42EB8D9DR%&5*"BJ!"5&2Q+QH3(6-YY$[>$ M15S!Y_*EZY6*D^7BZBYU#=URN*.BG(T%G2+@R5@W$W>/N=44]R62\Q%_&WS"_(ZU,/X^)B1>+ M!2X7+W_\&O[/;/YJ$A:+%]_'Y*9I%:,D0YY=#J T>HC&1M#99UFL=<+N\G(. M0=(3R!L(S Y P>PT*ADVVFX8JV4.KV?G83P=*9F*JY>X ROD.G!?!6J)1XDB M9R<$3[ON&S1&W#82^T5=9U#9'Y)'ZVT L'QUL5C.SG'^ 2 .<@8+M^-A,.M&)P. U]GR M"\[O"6S-"I W?T9>+D>+9Z2 T<.UJE3!%X"&1(V*+5.BY1K6S+N(HG_^:BG[!U- A M.U+ X#(&M[7X0Z7,@1F)#BU2J5$6C.1/ .54&8G4RYJU]'&(?"X3<% ?/4# M]3EK)MS!0.,RZW;#A'<\.&6)B=IE348&GDD.SKNB36)"FET5$XO-?%^-O84+,+%XL7X7Y_,=X^OD_PN2"3*W) MY(BA!I:KF#!SB,[61+ -G/9GC6G7$=E!'O,^A T!2T M?AV<]H!J)ON# MCV#*A-H'78&7Q%<)P@2K@N5N5^W7(7#9@ZQ^&G9VAZ+6FA@ N&X3CY9(+%R# M,#5!X6A11$[^8Z$8E!C0QHOH@Z5[.#1FRS!IEP5<<_#;;)KN MB,4(E:WFY*%%:VE[C>2A25O BF3HNR0%TXVALI.@(?@V30*O=F(?@'EY/Y]] MQ?GRQ_M)(":FN?K]7VLF@[Y>GV[C+Q@6^*'.^#@KOR_6B(&0DX7@C+."*\=<:YO5 M/5?]AGX-(7AO!QT4'@:P0LY('J'>A=[&]\AP4Y32%+K$4&C+H!TH",7KD2C/ MSIN(O'5::R=!_5K9[G#93@N#""7_.IOE/\:3R8BE'!12U!M=(.=%L0)1^E([ MRS,N422F6R?.K][=;PC9'50.DNT #,V.P\H:%#OI$%EMV.=$JA=J(] S$B F M9KP.A1S?TU6N[)N"Z"QX[ X_#?4P %1ME=-(!!-*B@@^^GJ'3M$>3%XO[<&% M"ZZ-CCL;830+#OJ-)SOLO#8*C#2U/UPM7F V@BA:VJA" M=&S7E(###)>CG%!+OSJ,NZ7V82$OJA!P?+' MM6@"%N^$02BASGAT48$+S$*]CAM%"$''7?>>#P'(OK0-I&*D35E )PH9@)W9 MX.MN;L^ZE"7]KU[XU?6,*(,SHJ;E?/$FF>)LZUK)AZGI-^;O1OL/0^P850P! M5+/IYT\X/W^-\>;$T0>>$EE][ZNL$6,@8#HZ,T M?!DA))$>NFTI.@0JT$],JX 1ZS R) MJR):5SMMIV0P45F'2:+C53 N_- I+G!4-;"6]0:LJA<.2,A<,\!A6,NB&R3 M:FV&'B5J,#%:=_!JJYCA9@$V&.*,>#".@[>UM96W#"(K!32M&<^D-LRW1MHC M) TFE.L.9RV5,@![]OKRM744^3E^"M\WA%CK%G3Q@4"@ !DC\ZS0@](6DPT5UW&&NIE %@[&[(L;%:BLJ&1>LA1TVK!:. 6)@'[8QA M0F595/-"R >I&4R\U^$NV485 P#5!A,C1@)!'1FM!T6DR\P@%$&&US##6!*, MZ]9M)C9>/YB0[R0'O$\2]@ BO]H4?KP\7UU)GN97LVGU$7&:*BN%4]#+98&L M"ME1)'XB"PZ"DHPDE6(TK7&S@YR]<-2\K_))<=1*&0.P/SLD)'GFF=P_BF95 MK2#.$:)('*P2(5EB+.GVG2Z/JF5JWIOYI*AJI(H!@.K]U7M7+*T;)V@KN/!% M0**_0 D2CV<8P7'BC(OB4;?N/;B%C+X[Y;31\/V+OT>)>P"(V9AYLJ;?>,.X M_RR4ZP@V'R?LP MILCR5?@Z)A]K@ZU1%8V@& ",)>=?!6D@6&= A%(<8];XYOFDQZGJ-W79$9@: M*V, \/J RS">8GX3YE/RZ1:W;G66<1K7%@HL96L4"*RS/CTQXX5,D- 'I#44 MIZC=CV1&\&BMC /#Z-,>PN)C_6 ELO4S65IB5Z%<%-6AJ-.H%^8U8 M(C##@U?!%QE;YR<+L;?<)UN_66VJ$G6L_(I?!_ID&URO("@V!14<8I$9Q5(R8-*)$HTK4.Y M)Y+8;]*RJ_VQ0S4-P)K=E]HH2.E=PCKQV-1!=<* DZ& M5+6[UAJ[K;?IZ+? M3&9'6#I2V -(83Z61!EI$TQ6UE#,RA@HYQVX7&@A9.^\"(IKV_J2P6,T[9K_2TQ=BJJ+ HXJ0C*R-$+5,LO7EZU-,E+ISN;HV:^$H+&1G:T&/JR-]:2F+ MXH/0(ACR4%L[9T-L']X*"8\T%'^*N ?@9&UO^Y<4%]&$#%P'PB+LO%Y'X7XNM> MH"SQI.OY9*K>:.(&(B.?(1/3V0;!5&K>3O,I! X!6TH/OB='57M=(#0, U.U#37)(S^8K MZ>55WNX]SC]^(9&/7%%.!8X0=:CE%CI#L(*#EL()S81VH;6+N!]E?3M5;7"P M\Z2YB5(&![45"XL7%\LOL_GXOS&/9,G9)ZEI%=8+B:RF600:*#%*DY@-V+R7 M\&Z*^K9A)X#644H8**3>+187Q(GQ1D01.5AR5D&5K"$DI@&]-$5C*$6V/IY^ MF)K!'DNWAM(!PA\HC,XNEHMEF-8W\&*L\R,<:9U M<+@'68,]FSX&7:W5,2R$W=O)'1J968KD%SI..[DDI@H)S1>+T6CC7?/ZF1WD M#/;A:#:ITT?X"4P9XV M-T70 6(?(GHV=VV3/5G-Y$%*1KNVSA:<-7E5"!LC5DO;.B^UBYY^[\V<"D>' M*F 8-I20[;F:>2L8\I7AT^P>N=0)(HJT$/V7IL04N;8NNKE06+ZO2C3$8S: MB+X9ADY>F_#Q$_WYZYO?/GT\>WOV_LV'%Y_>T6]?_$8?^O7]AS=_HW_P[C_> MO/N-OGUS?8C?JEKAL)>?J'ZA@60:532LZ_FN,_PWIY)2J%*L@.SJ04Y)"KS@ M!3SFK*7F7(OVLS*WDG)\3?Q\LOKRX62WK=_,WW-+FH MJJM'9_1?KB6-PF%FD07R$%P=3A,EN9N& ZUXK9(U:$KK;- MZ2]1LN1$D;+U-?J-U_>;B>\")8?*=@"ERM==N"Z'Z=[4&/G$M$F*0XE,U.O] M'+R.$3"6VID05V-E&K7=K70Z7\0 0\E>?F@\SVTE1SU,X.X%40QT, M %'7,KJYKCCB3G*IHX&DI"(6JK(D1!YM2$VN6?BSH-LI#0E' >)9KF UWWHZS? M$H-.G.KV&AF 82+#BJ27=( MZ-G'[D#+LW8B'T0GZMTR&FD6!]/+XBMRWU]-EV\Q#*;XW5'9%R\^4YB)%6. MIV'^8S4FM3:SK2G[V2J\O5ITHU+O&*G" +$.T,7$(6K'098L.,M%J X,7&?L M]%MWU<4V.Q3=#\ 'O&;QR MFZ/0>Z3T6[35'?R.D_D@-NG?<+D1_6#,PD421-)H0(4ZS\EKDHM+4GP&UU,0CKLZM/UZNP^/)V,OOC;Y@_XU_#>%I_^*+0'OT! MTR0L%N,R3FN53E<%%1$=\>B0V-7DOR8EP#&50%N.@0(GYVWKFX,MZ>\WH&T. MKVVQ1Q^:'D#R9(=L1U('JR.YF3$:"K68MA =UY!RSK*8B$IT4!;]$#D]-^ Z ML=U\DO 'L!U?=6:]NJ?T,BS&Z5I(%+(DQFNC,%ZO@3M73V05@HNR,*F2,[QU M%=9.@O;#TK,J\VNG@ %8I:W,C&RVSF+48(2553P6G&)D:8L-R3B=4_/AEEL) MZ71BB7FD=?$9?81L)Q'8[[;9+58.!.;3%3=<5%X:^_N7.Q,: M%G@FCT%G!BHZ0PZ$51"M9,SSX',JI\'E0R3VNQ\/ 9E-E#< ;&[<,GX]_C;. M.,TWWDA-V!!)H\#1&J8+F, %*,W(Q0E&@I*B3'9RJ)EE;"'7>)[/(K/#>W+G66XD0O? &K.'<4.BKIFM\=O$5!WYV,6V/A?L_L@^4]@-CGFOJU M1*J9GTVQ3B;_/EZ,F"K&6IU!*X?$#)>T8ZA$3G=2'J5S$5M/7=Y)T$"P=("F M'P+-T6(? (;N\/!Z=DZ.0'4YBC.TNRY=9% MOO>(Z/FL]GC%/IQ1.4#* X#) Y.B+YG)SDMC7*GM;!TH&0O$K U84R^7>$O[ M=^N[[CL)ZOFDMCE\VDE_ %"Z.Q7ZDHN(4984$P2L[1\H$H5HN 9E:6VXE#)K M;G:V4]+OG?;VX&D@[P&@9DL'R4M&E./9>&/JD!V2C9>YWF2+M!HRTR7X$'CK M,/)!8OJ]T]X>.VVD/@#X[#')^U<5 "E:-T+0C0PBB'L@1+]Y&)#0D'676 MF'C[*6IWJ>A[\E#[\/TP 0\ (@3O:ESK@>KJ[W?3^^FQ#[/)Y.UL_D>8YU'4 MT11-D"]>65H!FABEX!1"+E*YH!)MWNV/J9Y"XD#B_ ,12Q#E\=XW:E_SUD-3]'%P9#Z MBO/Q+-/BF2\;[7SWQL\[5X0J-H)AI=Z)(3?!.2XA)BV<=ZJHYEW+[E/1>Q/? MD\'I2 T,!DD/SPS@C.E IAUJ=Q*RZS+6(7 6A.)6LY*$+*VWPN/&-719_74R M7+71Q[%5!>^[1]EJHL.BT3 9RKFM&U1)*RR08+S*%NTRA;EW_^A MO?<) M[A-C3]?&T"!VNV&#$=Z;VL5#>E>=4L; 1Z6!=O08B$?F9.LX\.D-,;KLCW?+W&YLKE75\ PUYP)3A)@_:6!Y#08VLM>4ZE-;>NTB=UBOK6IL#""P?X'-EQ7>Q:;UT4M@ MD@<*=DQ"B%QX",S8R 0J%*WOFA](:N^MI_K&;%-=#A>RNY8F2;?@N%Z2E4@A M5#0.;"FU/5?VX$W4D#1#S"%['=L7:!U.;^_ML/H&;WNM#J)QY=.7Z@:S5ADN MR#,B48>:AR??FB<)6&>">JU2Q-;MP(\@M_<^7'TCN+E.!P'@%_G_7"R6-7^_ M^#1[H-YEQ72\R_0')*DOB.O+.59K*7W -/L\73UE'4&F[$-TTD.TC(/2*H,C M64 .2K,D"N;F#D;7//7?6^ED:V%0\'B>/LLH)TNA! J0EM49]#:3Z%V"( T/ M)6?O0_O[%D\FL_\F3WT;^&9*'"Y.=^QAM5>R*S%SP) 8*.YI)3+Z*J=H7<2L M13X13'=0V7];EKY1VDJ%PP7I>AU^P,5R/DZUS4+]V(LJSU6[OTMGZZ*>@)BH MBD@6R;^2CN(%6I"Q3H\I03E#T8)GV/K8_&BB^V]$.U+P1"U$8(1C$>EE4813@$X6Y3B3E?=&82NNCCH=HV0]^?XJ#M2;J:-U>H%$) MP'I/>)%(8+7+#8G(FX()6*P-JIDB,2E!C@T77KC$->T$758!W"9G/XS]*<[+ M6BEE$,FM6\RLK/05+W42^Z^X_#++(VFT"S8$X"P+(/D86C?&@HCU+@4ST;O6 MA0'[T+4?YOX4YUW-U30(\#7MDZ]CL.A8!%='A"E:AR19^I;%(G/DC+7O5GGZ MB0A_BO.OWM0^B.*9AVJJI?7*E"1 BT@2#26 P]H 24>II,%86.NSKJ/JV_\4 M!UDME'%D6?*;:<-SUKO%U<[%S!-P54>'9(JJ*+*J-_EC;2T1R$GII +@@/+V M/\51T)$J& B0'JZFUL5QP\C,TC^*Y-UFBLTS1>FQ<"3VDD$VK.IV\:P42/=O=\]K*:-W3?+W:]KG]-&L6(1'/TH-M?(S7]E;P*F6RN :Q4:H$FTR= MO"O7E3B>T;?1D8,0M:LW'[LS?O?H:7!+K3[S_7Q6%U5^^>/W!>9WT\OIY]// M+]*2EMMRC#<28$Y2T)42"%G4SD8>W@<@K9< M;NM270,X]"76RGBY'G+-59(F!="L=NE,F0/%^QH*8RD$,N;6MBX)NWE[OP#J M6L^S)D(? %QN50C7\MYI&D_PUAW03[.GBC)JK9/B"K+FM>V431]2^]3GS#G+ZM:[]8^5N:4TCQ0T @]#=4WB**&V_R\'4\#27CZN18G+6BS>#U>I-D%27]4 MF&4V>P;..EZ'_P7PP6NPPD>K153"MZ[2V9>V?GL9#1RBC50Z ,NYDM]B?27Y M]>PB+LO%Y$6ZY(5E(CUZ"SP&\NZS3^!5IJ]*]*A$"4FVWNAWT=-O1Z3!0;*9 MZ@9A,Z^JV\ZFM):^SA;C]4J[W )2,5B$(6\ZL 3U,!]"3+61GFW+]'@H-=&:<.Y8G6_RNI:A=Z1"AJ$AWB?JW?3;R3TV9R6["A' MR8H1#%+TG-@QM:I)"= N9>.LM4ZTWK!W$C2TGOHG MJA*ADHPE:^QLT.L8ZM MG/%!Y\#!L<)K@P!R,XSBP$T2Y(*H2']VOPMOH6QH_?9/A+FCE310\%T9[??A MQ\IBDT'F.M;9 9Q5;T0J"%H@\56$D%YPVWR8WZ-$#:W]_HGWTT-4,T@/;NTE M?PK?R6Z[%$S,S(-.%#PI7PM,,"A@/CF1)!H,I]A*KPD:6E?^DVVEAZEDD/BZ M;:-_&8KKJ!5SM>-]9@M>C5;75M+#@U:BNZ=B^1X%*=,C#&7UOOP4^@;I(-X,E"V M4MPP8#F?)<2\>$MB_A@F>%8>7G,V((NU?;BJY]XJQ (^O]G!4X.R([4-R$M\.YMO&)4=J2TX69YKF\P;!&DPLH#=R H? ,5:VQ7O &&6>B5NH:P/[] ;]>;@%GY5?,XXMSBNK/?YLM:6W)[*4T.8). M2M79SZ[>. P0K2]!H5>Z^>2K'>0,,L?3# FS;M0RH!3/AGNQXN/J@!R9R<;J M#(46*K%39]0[*\ I:94/2436/'I^@)9!IF^Z@E@3A0S @KV_7BBO,2YKCV02 M%ZZN HZPA$"Q5**UPTA(;-<9\N$:3WH9 WO#8'OU#0J?;V?$V]>+>?I"-ORL M;'1&'DF9E4\V@BO&UHD8'+ROM=N!.1%<\&3>NSN=>("J?B_Y]H3"1DH:CD_W M &,KE_5R'HMD7"FA#7A=PR*N!7A#+&8A7&">G(C8_,3V4:KZO;L[#/0=JJ3A MH&]_.8YX4.2HZ@Q62TD,1D\^;%"K6AT6-7(M3U15>NB.S#L;V'1B.':DM0&< M@U6VZO_KHOH6)KBZ@'PU@7E5HS/-MW^P\ 6X5,9"3I,H^TTR&KS",XG7U0&8NP@[+E_2:RAHK;)RAQ(*,G/UY\_3I9 MB3),KD3Y;EIF\_.U,J\+GV((%*(&P$!1@C)60$C%0%"<2>Y9B*)U%+*&<"Y]KLI/8L6T/LPSA0(C+@@6ZYJ/EAX 8H<$O Q95".E2BL-ZC: M]WBX14+/,X&Z4/.]Z\Z'RWP0D+GN"W#%03U/5P$3^;!8:S%KIQV6(Y#;P%C! M(@/KX []'2IZO@-Z$N <)?D!8.>Z;>)5C>TT7^<9WI'AWLAH9+1!:@5&Z0 J M&C+3O@C:R@5SQ407FA=L[4UZ,N;TW5'2/U_10![[-5=U%>S\TB<55Y>$3OCO%H0L^FG M>9@N+BF[::QSS:T+TG!1'$046.?_1EH@F?B.,NCH4!1LW7;_.(I[+G@]B<4[ MH4X'@.#+WE*KMMIYO+R8W[#R\F+YVVSYG[@*GD9:%9&E=(#D4H/2KCHZ4H-6 M@14RY2:QYF.^]Z2MY_+8DZ"R$STUP]_ !GZ_7RGN"R['*4QN,]O5]._;KQS$ M*/ =4CC%7'!O-3>"T,XI"@=5+S0%,H&@32D^EFRU;7W[MH>YX+MNS)H@N$Z1 M@7>*TU*T&F)D"3#7E:2ECJ%U7_2.VGGU,Q?\*0AJT,[K*>H:Q,Y]T_BD7OE: M?;T>#41NM%8B$^W&8P(57(' ;>W.S5.@7U@;NC@*?H"<05[T;(:$+<=H+=3R M+/;FL_GG,+V:8/ST??;6/V^_9SY,7:/];_,%-4:83<;Y:F3Q^PT>KB<:ALFU MP;M!6V'!8329X%48J#K*.##C@.O"BN0JEN8=5)H0?O1$IF.(J!,A)[,%^<&? M2)DO)[6.V :AK0P)K!&K!'T$EX(G_Y<67O8:,;?NZMJ:AWY-Y>GQ?&_@4Y^8 M>!8F]^/X\W1MS:]#U-S=#W++LG>K(@HBM.N-FP4M2;2 M*@DN% VF(%.*)<;;CUG8)W.1@(XT#_< M\I#V!NDQ2AM9HHIWE3(! MHBQU]U3%&F61Y=;+5_:^K5176#H?ON%#K3T+$S6*R)JO*S3(P]RI&[]\PX2P ]2U\A W;S@ M&D>I2*54]J"2DZ T"O#1Q?JM\$DYTGGK%.Y]*HXU.R\FD]D?]=#Y[6R^*<0; M)*-R1A7O(&E!FV^0#F*M#%3,)U8"BP);%V(^2E2_AN9(+-RU*6U5\"R,R48+ M_S!=5#I1F:OQ[8W/D_GII%1VGCQS?@CU,JC1 *ATK6LLX!WVH(4 M"EG*=3I,^PK8>V0<7]I[])^=G86W^.IOE/\:3":W*=_3LZ>=QG!SDQ#SPH/8691^* M&]F0JU>]V'S5>G3H3<;P&FNV8&%2"Q IUF#?U<8 &4%2W"_1>A]5ZYJL)Q%X MK-W9ZV4W2R4Q[I@(":1.)(XZ8-779O8Z<6IJZ1$:L/WH:H; 1*7J/N7.\@9 TN. XAH'"" M10RL=82VG9)CS=*F &]0S(S/AC$'H9AZJU0H^BK01LTL9BZM%+:U,=Y*2+]& MIH'N[UJ3X\7]/(Q&K3,_Q ^Z_(<=&(HM%#4R$>M'7\,C<%$$,QF2J<>PNC84 M%[07>.?12)FY:][$]C8%1YN$.N0);U\NV4@9Y,P)X)&<^%(B*$P20@JKO $K M+MF2/03O #J)-;<[-Y\62#%Z8"X]I;B,909*F(JYBM M@AB"%SKJI$WK_7,7/?U>_VD.H09"?Q;;S-LPGO]'F%S@K\0I;='G!V;WMC^G M_2:T![V-]J3K-]WX+QN%0B;Z7+PF@$E/#DR=C!9] 1N=C1R=-;'U4>HYN M\KWEV1L9;KEJ3AX@82%F'<5BWEM1<]VY6S7!QKYUW,R4\ M"\NST?9@-OV(GP^U/-N?T\5!PJ/TMKJ;LG[X!_PZFZ_*O*^WM>*=(WT"RZ5F M1B*%.RX$0&9%8LD'+UL?'SQ$R]$57W>>NRT1)'5V7C$.-A4.2J*@79P+\+40 MW7(F#&M=%+L'63W?.FF!C7N57HV5\2SLSVNY/!83W8BC9#U%)#=L%;:63,N76WT-L4'.VTW1-;'=:W#=NA!%F[T%/T0XZ" M$D:#L\X"MYYE7E0QI?T-ZCV)Z]=4'8&)>VY;)^IX%J;F#5F2V0_$ESC%,CXH M;KSWB/9F9C>5C8S,^]EBB:L7U=WGZE77 &/61*-]!L9(_RI&@EIR JP+43JA MF8JM)[3MINCHR^.S\Z\X75Q=K;LCX_>3,-W(FDBF&!KG08::-6$F@1QGJ MF9EKY?/ MW^)J2^FXUC)!1G9Y&\TE+T%+2]N?ESF(UK9H!SG-.MQNVW&U5UIP)B%909B. M:34BRH#,-FN**KA0K2/=7?3T71C;!A,/=KH]5@//PJI<#L%['^;+'ZM.;B2^ MVH'P !/SX*.ZN*.X#]7-;BIN?]DUVIR61B6N /TJQ,\,0LZB'@Q;R;D*N?FA M^6,T'7\WTL;4[] 3R^KZAV! [ M]Z\F=J.D9V&XZL#$\ MQMAD5% @;"*H\%# 2\LA",-MO7J?=.L3LB<1V"#6>_QE-RO').837]5_9O(E M$D?POC 0SK*@T7 66W>#?QJ%/5^-[ Q;6\*_KO3V+"S>ED:\AYBZK8]I;^,> MI[:1<=OR(H+'ZB;(1J^YFY.9A#(E'<%&0;#PJ&OO(P8LRVQ"]%+PUA=XGD9A M!SVXMRT/A)X+6.9U*)E)+*WO5NY'6;_FK$,T[=%8^UA% M/0L[M@ZPW^/\U#*)XC9*)*;GL[P6.+AK:]H(_EF8EX\7<8'_=4'/??/MP.K/>X_H MH%A@)Y6M:C[OO.3FJIQD&"SIV_D@:M;!@B\N@T_291YJ7_[F)^D/T'+\U,K; MS]TX ?+(I-(&4L0,BKE21U$%X"JRH*(HOK1N8_,@,7U/%FR @_M3*5L(_GF8 ME%U-"[OJ-=I7S]&^>H\JS9RUNH#CJ6*1MC>/(0*WSBOGO=6K=_7P M'S?KHZBH1:@7."1%#HKXA>!$!*U,J.U;C,^M#=,N>@;;9_0IB+B?+&JD@ '< MV'P9%N/%6;DCJ1]WN7)2!5<;'$99.X61B"#:;&IY%B8F$X6HK<]A]J.LWUN< M'0&L Z4, &J/=+N\RYW65HO,?9U'YVBGSQF>J)7;%MO'3OB"5CK(WDK[/L)9DLQ\!IE:%X83-Z M7;WX9^.(?4Q?,%],\*S\AG]LO&8^F]*7":^/DU;#6Q?OIIN?&4_3F("S>54? M,\ID$&2I:TER"FVXY!!\S:.D%!AO?GNP*0>#=?:>@KI[H6A_2GX6!O-^2_># MK>2#CSI%(_H.[>&^K<0#*I,#YQ!]R+5E'0-?$Z?%2<^YRHQCZVK3$[6C?SU> MA,^?Y_CYV"JMU6'K]'J:\(\[+.8B?:B]V(SAH;K.$6(Q$G((1EJ2 MJ2VM;[P=0&:_0>\I -FU[GJ$9QW-_FJV6#D-;Q;+\7FML[PZ0SN;_E[/A&FO MI!]>"6%QAU$M(A>U)B":9$ YS2 (;2 4FZQR@59B>F2K/9J(?H/?+B%X6OT, MPDX2L^^F;[XG7"S.RLOQ9%)9)?:OOKSYY>JS=]B-:+&D0NYT,O4VE(HD9,:@ M2,TNWPF0Z#DBUC1Y@6 M7KJ(X%SMTU4GV<"]+X!)9LF15^>BF\34$RD=W+":IZ#FWK":[I7U+*S3]@D- M!]NIG8\[U7R)#FW7TR8!&%4[$!8'-HE8]]$"+A-:PPFIQ(@%U:/"+&>U+@(#K5,R5/$'KK+*=\CYSG-CW@*:A[.&1^G MD0$$!S>LO!U/QTO\9?P-[XGOCGE.TM&&$!6(DA4HF6A'D"R!KHUBDA5B6]/>;F#D]K$^N\V?A4-Z:.7*H&[GE(=U.\^G0 M97Q@KHNR+@M7:J<-GT%E15]E&6@WYEHHGQ2ZUD=NW;12'AXBSU2^ /:2\_*KX&,YZH9 MZ%FYMTIO^!,Q28DI O,RU>[N"8(-]4VGLU]7K%' =*.EY M;'#K.2<';VV;_[RKR5,=;F=WQLS[2Y V+)N-4:-:BH)''I(P2O%2T@JH&5-/T?#F268GPAW -K423SVYNL,&E\)QU 4$)@L*BZR-8PVD6G>G MM751MT[V/4#*H.9+'0*?EJ(> &(V!V1=EY!<;I]W2TF$UHL)L,X!U6X <>8 M@ERP9%?J]8W6P>@!9/9;/-'4KG6KHF?A1V\=3W>P6[WK:2<:K=>AT[USD)H) M3 7+*,*RZ$ YP\$+6\#;P (*K2CR;[UE=#A@;^/4X.HMVUS)2\GGL^D'3!?S M.>EI=7GQSK)1)7@N)-:*.%JF4=!TK1<7JH!+Z*%P512*R%3S'AV= M#5N]=DSNOF%#VB]_7/YR(SR+G*-3G&QQH=675ZUDLC[Z8?"0*KK."J]I4K(AK8]XC\G+WAH?=[3G(F^BUSZ7@)]8.%9N"/WIZX>WL?JH4>= M8N)QAZ[&G1FW1C.'487:("C40=>2[&%28"(&F;(3VK>^#-AV[O%K6FR9!+-X MC6E"ZS??O:&N)$M>D\%/VH+BA4-@2H.A=R/ZK'4/FYIG0)_L+OX MP(.ZGUO?H:OXR QRKBF2YA0[QU"'-IDHP#GZPZ)5$H6T2K1NAM/-]/I:/'RS M8JX$?#D6=./\],YB*,%@*HXL?Y+DWGBOP7DC:8$JF83D*=^]^[NU1OOI;Q[T M9/JGH&*S>KMC!?3V&.W(Y+N:K4E RKQ^PGKOCXNULOOHY&>,X&:];$][E MUG,G!!)[-M0A(XZ3%;;* KILLPR!"1>?!+=#*>G7(^PXCDPIH53K1,'3*.S7>>L EB=0 MU*!@>&7W/]**&]>"$.+Q95C4YH/G]2;[6I>3U2,O6[>N6AK_-V8*S\:SO.[N M=B,(S8(Q+$+(H=1;APE\M!P,EXK%&+5DW55B-F:FWTKTDX"[3_4/:AW\/IU? M<[;)>^7OV@*\^"/,\]T=R*0D770.C*L7VW3VM2VL I32*?1:%MG:(V] ]E[8 MUL\:VZ=1Z;.(N"^]^O=A3CL7^5D+DO*U,W58*_V=#^RBH?[^'#1KJ[_]E3<- M5+V4RA0'J.ME':SSD8Q ()1F;F,FJ+0^U7V,IG8&<:? -]*Q1=8FC!I\9E=' M^\(G*,'%P%E$8YL7!3Z1QK[;ZS=$TKPX0P777,IH_A M]*AI2H\_LX.NO$_CHU63WINWOKCSUBUU%$DYD9@WH$1PH()7X*RL%9Q".*SQ M=FS=N>Q)!+;)%;U(:7Y1L_67&8FK;,3=^\(:K<@Q@&91DT2RAN"TA<05:EW+ M.-+3$I'[O;?G]KR=X65[6J@#7?24*VZ'HM4N_\!KS]?UFUT\#:JZD/RSV")?7BS&4UPL2,QQ/ W'.?X[ M'M9^4]R7\D:[X9;7$1[78V'2?UV,U\6MUT 4@EN;=2+'K5[,PSKU32D.IC"> M$ UWL75R]FD4M@L&KMZ[\9+%RQ\;WVV<#XF0)9I P3)2[)ZTJ+/G!&@>K!?, M*MV\R?\A=/:[CW:(M(=#A(Z4.*@TWDUZ\ETF/8S+&//EE?/*)Y%V^^HY_>[B M_%X-G2FV.)<4E.PH)/,L0Q!20I+9)V(@Q>:'[(U9Z'=#[P7>IU?] )"_T9MX MU1(Y8WFX6_&U'!8U37!C$#;4=.^P'[-WE7UDHDX3K:>KQ4*)@<1DLL_-IY9T MRU&_YY4G7!<# L8 ELF6K>_]?/:V%I=NW!W=2)-IBB8Q9A F25#&&@B18@SM MC(Y*!H6A]46U)Y+8[]GD"8'J>1?AV-O\3<;X"\?L-_C9JT:_KTS>F?KO$5%:29)I] M/244X%T,(+AQN23C9&KM)38A_)CTU6\7YQ'GM17TNB!@\6YZV>!N-AUIEC4& M*4"FY$"5E"'6A%Q(26>/SGF_3TITUSOZ#=M.CYO-!%8SV0]@0[[BY;H[XE5C MDQ'9:;+\U)CMDS5<@CD;5R+R==1V49*/0S9H)BVK4.<1ZFIM_P9#B .U)/S\*ONQS3 M>YFVZ,"[>^(+NJC9.9S#9C4\^\U"SL8YE74DE.9"H*V7\AE%MNACB%D:D5WK M"\M[DG:LZ;M6PGD8UQ'C&Y-#R +?UHKFGK MFB]?T_;UXON8MA?E32J!0W22_&?F),1L/:10O(V>U,);=Z-LR\$@<'Y2#+9> M!H<#HL?EL)@O1Q_"]/.::*N-Q\ #,*<9$6U(?D0O&.&+T^0;6+O7K7!ZZ@:" MZ;L;]-YZ8;\!4H^@.USL0\#*KUC=[)$@SK36N0XW-Z L?162#& * 9T)8LGL M%?KL@Y;U*_LQ4D&8I$4T#H*(IC:?4G40:0'& MB^ A)6?S7LU1'E'YK9?VK/1#5#9K(;^^%1^^;Q#N8D86.-)V5A,VSLJ_:W<<4O_G2?G:'9HH_6'X#\(Y_PS]>I%1[-=9]<3Z;TI=IG:@Y MF[_Z4L6S:D=R_8GQ-(V_3I"B?7RWQ//%R'E'D@L24##R?Z*U$- :("GDZ!R3 M)K8.^(XFNM_TV0!\X-.J?0 XWQ947\]8NIU_^F_,(\<%RJ)-O5C(00D6(!27 MP2HM$UKR!9I/[WL:A?U&<2>&S^QDNAP"4L/7\3),UI=1UXS6BZCOSK^&\;R* MN':^&"G#4Q2J>J-8_0LKP&NG()I2E,\A6=WZ]&LOPOH-]'K&97/-#0".>VU6 M(YV"(#D "PVEJ2R"\,[J]B@O]_2OF< [BYP\"<\,A[= MR4]W<&A,K^C[V/@NE]<'QS]W)/*/%^?G8?YC5BY_5>\HAL^?Y_BY7L"//]Y, M\Z]A_@^LTQ'>KY_7\@S_B->?0E6MI'/B\W^N783(=-W :?7:=:Z!%:5\8IG<@E@M9# 0-+>@BM0BAR"Y;7U9;Q<] M@SC#;(J5^]W;&VFC]^3R_YG-KR2S6)VK$-&9QZ+ :;,:H&Y)(B6"I% HBLA= M#'MU@GDTPWSWS3W/YFFFT5DS\?8,CM_".9Z56SR\GE6';I1,X2(@TM*I=^NC MT^21&0_6Y2Q]\BY@"XP\2$!_1U'':G366KP]]\&XHOS=VLE8Z>#RJ$7*8)+T M'*Q5BKB(&:*T")I'@8+K(KU^Q&W:_8;^4-!(=;/F%$E!J]2!*:0]EQ:'_5Z@P"N3/)21*MPGZLEC[VG'V2TU..L(Z'V M#I":;'TQS1_P?)9Q"+\7++8]O9^< M=V=@.%J ?>\8LW,22;UT<$E[Y@$3]PI"BO6FIV?@"^,@;1 N"^^#8_OL$W>> MVT]NN2.U'R6TGA6^'I'RL$RR(!Y40"BKUN_,:L*NT""CQ4)P#O3='OI_Y#7] M%;&T=Q9:2K3G&.,R=W0VO^Q_N>3IF%T'HT2(>!D1J3[E+#A:7Z\?'J!@S&5A0) >#"KQ-DK[%$+A' M6E&J'4[N$]!? '*\3N\#Y$@!][S+7#*QQ1H:(:2Q9 VS"ZH6"F=:-S%";=BK M17$L<[7'_O+@"WI'P;&*F[66X@!Z<]ZB72<>>-$9')=UF@$)(HK P5@6M1$Y MFFSV0,#=Y_879392TZR1S/J>#_5E]D?UJ6;SQ<E;YWP,] MY^M\-BN$W2O31B:L.%O ,*)<)5W 69*&=&3@,#,12ME#Z5L>W4_)3S=J/U9R M?6<:R0WZZ\6R/NP*M=8K$0BPWGA9H^+:ZRY'X)9)D[A#+O(>:K_WX'Y&\'2C M]..DUO=:'T_S[(^7]*M\1;W*EO#J O@2B/KL''@A'822G*G9$5<>*]W9_N2] ME&Z>A]*/E%O/6G\[GN.5F2+GI'Z[6,Z^?KVQ6E$GYI*5$#!RVJXH0@Y,T7:E MR#LIFGF]UXB'1U^T%R;L\\!$6ZD.(0/]\K+Z[2IHOKY6F$G/(D%)5H *MEX_ M"0) HU>S:<):9EC5\6&\^,?+ M'R]QFKZ()+$ -)>ZCD92NLX&!=%I(VTMG5LC*7':.KWWDWS M4XY.5#%(:%UQ<[D&E='*,^,@L51+6(6E16,S""Z1*VZ=8'L=@!P%K=LT]3W8 MJB4"'H77$>H8 +P>*92^Y[&EM_"&VJS %@=\NV\HG^Z6I'X;1EA)@+%)YH&7)?1Z4G#5IXDQ%5 ML;;UC(D=Y/1[Z?24GMU!"A@BEBHCETM2V$#&G)%,O*[SNBB<"MR17;?6I(C% MNOVZ.QV#I1MRAK;#'JCRQZ!TH/R' *5+0.('.0-Z(/Q,G3 LBCE38 7-ZS MW.]Q7G\0/B,GV>G(/''@F7#U](2!<[6;J561&TD67'4>-6[0,\AK#VV0UDP- MS[2UT'4GE_6,T'!K>.X'G-1^+LO9[U-ZQ-<)+F^:X]6/7E]8PJ^SQ7BYZ*0# M3DO"3MH;IS.)GKAKCF6Z2)01R"6MAR*R%@*P -**$#4/4JMGVC5GZ[.KUG[# MY77.>@I5].L,>I(UA M[.X/=[D=\<*44$Q!,/7VA+0!/&I==QB-@J0D; <'LP\3-(@!'R?'UF'Z>#JX M_!IK7KU&#A!YYL 5VN"C)A]CGRO M^[SK>>RTAX*GN;0'X,G1SH#C;S6MNKC'RUDM9?@\#^?U=KVSY)L@<>4X*"UP M52U-K-G"/4;N96N7;C_*!C$MI1/$=:BAPW$W(X>C">Y>CJOCK]0&0LP>A/?[9Y]_) M-YV??<-YY;+^H(;:A8)I'3@G&"@'"D6D*!L#))]3<$7QK/;9#I_RSG[/TD[A M4W4B_>>:<[Z.L(CA>T+H)M[<]:;31I5[\WSJV%%$(Y(0D-$$4,DH"($,&VV: MGF"NT#2^^6O,WK%7N'^ K!9,0LP"GZ[RI M9 K$.MQ$B"B+UC(;W*^4Q"U .1UIGT&^:%3^#C<<_1V5Q 2B5!":1P M7#D'F:4HM;,\N'UZ7C7W\?H/1(^P8)U(OUDHVJ6/]XJ(&J\FY.$1_MNVI[3W MS1ZEM9'?=?.>:W Y5B3I1X+6MM2MJD#(7- ?5AH>,]F4YH-)[U%Q;&+BQ60R M^Z..ZGH[F[^>7<1EN9A<3@I;W(3''V:329G-_PCS/!))1S_'$9YLL3XO#]ZJWO MIFF.88&O/*LQ2ZW6]TXJ0*4XT]))DD@OZ-Q.;[]QP1 QVT"O MS\:6UE06>;%C7(R$<%S4@M@0)07<0@0(3BC(FO8L:[SR/>'VAL9^8XTA8O5 M_3T;?/Y]/E[B62F+D6'*LX .D.7\_['WIMU-)DD:Z"^*\[]Y)-+)&C:2+1D4\7\^ALIR;ML:\E7;XJ:F3XN&XPREB4*0O0. M:[_V+_^,TNG]X^KK,W;XWB/;?6OTE9CLBE=QQT('0JKR-=NHQ#P. = MAOG\)VGA7^'\$L^B6%%]_JX3TK5_]L_Q.LT<+M#[&3)NYRRBZU-H)T( M//2LO,KS>'\M^U5)?D[*2Z4Y8(B.[%J7(=C:F"8QS[DL.I;6H?]'2!GW;!P. M+?=/S1::Z,#]_42ZP7J7_':YF$QQL?B$7U972VUUY'.(*M5$L9PM?9&B)E,' M D,]^35S(;1N>_."JXG*[\.HF?Q[ -.*]JO^,SD6S\AD\'5TD\K!0U"2 M@T#EN8@ID872&CRW"1@9+.T4>Q\R>TMY_-%HUZW@UTRL^PDY:3 FHEH&&4'9 MJ,&5C)"#9BFZ%(/99BC.HPN,#(7]%39K+;T>AB'/^Z+41ND'RJN#.^'JJGQ[W4\%,:7DB@6B-U1_DH,W M/ )W469FE(Q.#F2CO]VIN]9PV!C D#A,SAT!I09B7Z\#L8@J):XB^.PT*+HG MP:FB0.GH7(Q:R#P45&Z1T8=+LZ=B'X')OE+N""C_F,\6BS.A:P/+*, XEJHE MY>GR8P68S,A9$>C>?1&F7[VU7^C/YA>3_UU2U?S-_# RCO:" MWE!:H[RG)T9V>XZR#N#.9&PM)]99#0Z3MVA2<'$P?^FX[^FO)]/)!;Z=_, ' MRZZ"NA<,EZ'CD@U@%FAAL(7-*M916:H)PL][L1'@S% M'Q=^'8U9\800URK#++6>BA?'$1FZ4?:S@*+R>T; MANU(XKB(' PJVT/R8+UU ,NK7@K+'O>DNL77R?>KZ>\:+9-&TM8MHDZ4SPX" MIEIX1 :\PL2T\XTA^ 0YW<+M)$ M9/4C!ML.2:X&FFD VQ]GH>,=0!M M;4*U_*&*Z(J9G#QJI3UP'FM-6C6%N1# 7/1.V*13:&W-/4G0N.&98R*LG5XZ M -G[JICW5]./25N_A?3O\]F7JY%](EJ+7$,L,=8&"!D\.@NHI5'2>%F:CUEY MFJ)QGR*.";.&FND 9T]([B:D:KQS.40-/H>:65_'>Y?@P"HF YW0VC:/&VU# M5R]I7V.YIOLIJ&_0K5-5C(E1>04I1W*HZE;-V!/ M%&P/L]U5TC?$'@G3GY%/8S +0T=UK;J4T8,7R=$NE3H8D2++1XQ\/$)EMP[# MX#!LH;:^@;GL]EAX'>5M(7OTH)*T$,U2EDFSHIWFO'7LXVF*NO4?!@?ZQ2.64SN6(OLXZ>:_=!6$[')8-M-?!Y?Q8*8_SWA55^TUZ(>F&470-!!):-#)9Q\GCMZUO MY4,*\@?/SAL>:BTTT0.@GJP;3CP:KT.M&S9DN#C-P/&<@2Q:%;A726'K6/$) M%N3OI/*="O)WD7\/8+I3A,KK\>E*ANA235%DU2'/C!QR3%Z)Q'+S$2PG4Y"_ MDV*?+,C?1KL7>15P<'PL/D9^^%3XPP;W6I[5H3!U]J;\QBQ/Q$JK$/N44. MDW-'0/EP.4]?R2Y?M["LR?.:*,(-!FAI%+JT$L-KC8D,#9)&V30 M*K2^4;8BK _W:D_E/P*E=IHXY29]UPGUUZ-P7GSY,E]6R;R83B_#^7&J#G99 M_?C%!GO+9I0(5DPV),X<5MG;SZ MZSM.%\M6Q*3W/\+%Y7QR\?-&4#9J\HMI>]?T &6,KNUDJG?L.+.*MJDYXAOG M3K3W<2"WQ^-NCP,#Z;H#<^&I5[@-3&,UPVM23'E-\@_G_Q^&^5DP)5JA(YBD M(JCH#<12&*0@6(B<9"".^9JZ)=G=OO(/B+<=GF"'4/[)X?T=W:N?_\3S'_C' M;'KQ=7'FE U!I$1'3-&U&8:&X,DHS$9*R[5')?6H4+]/<;=)!+VB_""5GQS MZQ;^_.?L3**4.OL,:%T %60&XM%#RD(YCR3EU+J]Q5Z$=INBT"N<]U'P::*8 M8(EG5OH8LJ^3>:L)6&19E:A:GD7. F,.K8-B>Y+:;19UUTC>677L\LY M>3-D.5FNZDM&G5^.!2IC8#-+7C/-G6\]3FT_2L<=$G2B2-Y9Q2._..W&X8M" MJUZS:4HN4M@ TMJ:M&DC<^31U PE80-;\D1(^IO).( M3[^=3;]\QOFWWS%>W$1>ZT_[1YV?_\SVL>0=^6@4(5Y^_H;\'T/.OI 2N*CE M[TB&9F!!0RZ8/#*C?6CM%V^FY-#+NGYJ;=@^OZS/,ZOW1!:=UY$GD)+,9I5, M]0!CJ96%,A034U:M4\(VD#%NO*J!WN]?FH>*N@/3KN[!B_4>_$S_9IF1XFRR MFLB%(E2H,D&HR03 9)(8E(EH6J=Z;:)C?+PX.P#-)YQ.9O-WLXOK\O;H MLF*Q/FZIF@2E>""++-F:]G=I^(OJ"RCV8?I (>(N8.*YI-KFM&:Y)5$'XHH(SM:6F44FSUKWN]Y(R+C/$ /@Y7!Q=X"9 M)>D?PL]Z.R]3)-??7[%3(J;DH@)CF80Z\*:.V4/0C+'@#8:"K:.ISY T;OQ_ M !RU5$$'B+IK]BVO<$0R] */8);O9Y[7Z=Q6 (M21AU59LV?EAY2,>[YT]H8 M/E#*W>'D5KL6'XQ-M5-+%I*$8>A+E!@A,M^^_T2/_\Y^_QU=ED'OG_^DW[AYZO) MEZ]7F?]>.)*C1##%D&$7K(;H2* L,E1&HT-^+UWID7!T"VIZ MF^J)B-JJ*] M0?D#YW'6 );5"'P["]/K9G=K)AB+27L704B!M%V3HNU:IV04QX/@A"5FML#9 M(Q_?TXW6 #@MA#CR\?0O_#I)Y_ABFE_]YW+R?2F86[Z!%S(2B ND9&5U$!QX M(SP0U*.6TA8MMAF7^?0JX]K'S5'14*0C@F,QOSC[&*9?<-TIV',= H="US4H M[3B$2-\5KY'Q$"SRK2P<^M1;U@W]=&/9W%FP)TCL;_KN+\,>%+_&JXU96QOR M>EY)=@C19%['A&;-$DRPO^83"??+K]=-;PU MVGL;$QBDTTE9HR!:;0!M0JTBBUEL]7;XC,KO+#JRTO=1V:R%_,96?/CK%N'& M995BJ8\6M1V*80E\D35&%'0L+D2MMWH%?$[QMQ<=QR9LIOB]Y===0./M30%I M(6.'KC@0 BUY,K7]K"-AL((^H8R.^]:U,8^0,F["Z; AL/WDW0%L;B?QG-D0 M V(,8)RKO6,M0LC((3*'!FUT.K6>['9[_9Y"$7LJ=,,+\%[2;=;?KPTR7E[. MJPC/HD#I'5E2C-6&)\%D<,%G(+N*N6@D$_=[?#0%R)J,GB(/[7&RCZP/G1+9 M'#!U L.:#RF5UL4S<(I.6L5939M7#*PR*N5LF/=#9)<\I*0G/[0];/:4^*C! MR\VR^>$O]JRXBQ['KV72%(*I58/.7 R68@Q9)EUEERTOIF>):HG M>Z8-GMKJH0/KYBY#;Z;TR;BX^$A'WK*G5[YY&S@C8T]:48,$MG;?S?3%BM=ICU* *K_X^BQ!D]I!%$M%SJX1LW?=WF.*!QV1ZDRZ?O6:^UMZ6 M3*9!BHD\7B>A3IGFV?L<0NM M-S;2"W /5.2IH?:JQT9*0?DH+/C(R%+FFD'TY/B[I&/10DG'6T]TV(?.<0,Q M_6!T'[6=)#2733,B(K*2-63KB$MO6(U*63#B]!Q8T%]P7-GQ8V< MH;F!P9]WNUU$*5Q4I8 6IDZ+M1)"404P,ZT")M3\7A^#C4F:SRXT;D.205#4 M7L"G$4VLPX]NM7#^=/G]^_DR@SF<_Q;.PS3AIZ^(%[=FD'W$Y6C#S[/5OST@ MPMAL[0&BCL/(I5$DMN/E<,>1EUD,@A)2/)IDT>O'*U::5/(=FLZ.LVY]C#CQZY\GM_O=TY MIPX4V>@U)^]FTW6BPB96F&&ZH2))3AAFJ?#:6!#CRYUY-IO:(V>.$\X<1O6'2*N#G-4G$'L]Q*^^9=7?FH3S#[/%9-5WDFSZ M1>U)^7:RJ$:=,/6=%UPA@"O&%;FAQ@&/42ADCD4_P!C@PPD?)W YVADTD$;' M#A%53M].0IR<+P,DUU+4+$LLD@&WN<:Z''D9+ 4P2?+H34C1^VT/K@V?/W*# MI(9NU:'"&_VZNKV5-C$3./?&U2%PDBE0@:Y=5R0'&Q0&8SPAW6V!A&>6&=F_ M.EB+LV$$VJ&;=<72SZO2 8Z"-@X/(&0B*U\S#4[4[6,"#UXH:U/K,HVG*1H/ M2TU5_Z2K=9 6.O.U'O"2$@9>2$)6RSK9S 3P*D=(0M$);0P9B:TS"YZB9SQO M:T@\-=/ Z#?833'*HX(RTC.K7 %IBH$Z5AD")@$Q\YPP,:OO][1^+$3XS$KC M8:7Y/=98K!T<.H\*F8I>3K^RD%F(9 IJ,MVQ%N$SG0-)+A&?Q[G+=JPD M&RINV!0!V]UH>ZJC WQM/%)OL9.=X99;#2K:5(8'+D M4R2-&D@<$ELM53'Z!7=?0F<\<+J#DR'KSM.1'H2'8,G8LR[S:#5+K,0MKK/[ MGSMJ;'$(-!PLO!&CC)7V_\8:A,+\@I 4OJQ'DEX=F#7SY'VY/D1O(_Y&:B4Q M8)X8(Y<:&28WE8"^IY&LF&;>.A%%P0&&P.Y X7C&V;@X'5"/(S^WW./FJM%!+41_ M5J*Q:)D2.>]Z.08T"P=>$\.1"^F+DI+=GSFVS4V^"PGCEBH,Y'ORN-W=S>PT%GEWO[4"WV M?6]OY,ZE($-1P)'VNPI90Q0.P6I?T)%0"V_=.V4W"KNYMX^&T $U>$)5$+BX-K'!Y^TE 5"\_0/$S]@<[D3]04G6RT I5T3=9Q'%AR 7,H0?+FQ9E- MZ@]N/FVQP!798ZUDRN:YI5] MCY/35?W"+GI_4*W72.0=W'?K/3=="N4RG%P*+2I$K#MQ(1]ZPJQ%RJ2%9 MHT,14=&=>P0,]3!3JHVVMX#0'J(?.1!QUZ6XZF1NB]$E!7!%V-J#G)QKRQ$P MU=X[62 9:EM$ ]=G] V$=GLX8"''VXV(W%OJ9>.VU,2 Z"89J\1D4. -W) M@)H[2;23G;Y-CLS#3^X@V;>M\@\47A<7R*8+]NUUL\U<[]BH%+CJ!RXOV:#) M0Q/28BJ^&&.;-U%[FJ2Q03240=).#QW ZNZI6-W*,UM[716N@)4L5J5;01(; M26;O!0( MM4LF9T7G>#]9LY4)N]BM3^B1CYLVB#E,WET\:SQ1IO5BU41\J:DS;J5RNC:+ MI&] 15G?B&2"DFN&E[59B2$CQ4^0-O:!=! $MB^:VUL;'9Q+M]FZZAC^ZJ_O M.%W@&:E=(2L*,G>I&OIUP*/EX!"YU8Q[5H8L4+A'SMAGU5!@.D3J79Q3-W=R M3-ZFI#EDZ4DDC-5TB#HS Y-/FKQ#E -%9;8T?H9-O6L&C_TDVD&M^+_"?%*] MA1L&$C/%>DP@,2R3JR2$5'N0,>WNLT=^B3]V.<-]3"]%?W#/$];C($KSZ'XVB$Y&P:QQ 2:):-RTA)C M\\&$39ZGER6C8?'U0YCDU[,Y6=^7TXO%FVDZOR0AO9G^0:M!.==1B-';9-P!4E([8'."X8G@P5[J67+O"U MR45<<_-^>EWK=Y:,)M*U &:U!66+@(C9@U4Y2ZN55:%U,L5VE(W83F!4_ V@ MM^[P>-TQ_'I[.5N\1$:N1U!N%;0(Y*)6:]5RI:55;LA0T0."QJOQ[ =]AVFI M(>B&=P/^.^N2'#N40;,_),%Y!9LYD*168J DBEMS. MD#CA1"15>&11N-:/">V\@M>7%[2]_IA,)]\NOUVA_I]UV%9MIES"20+VG(4M.$,!^6LA2CK4<^RS2$XLCZVJ4ONC:^N?)9=$'LGO:4SH>X$ MEA$#>8OYQ=E'#.>O%K57)+'W(J7+;Y?++O^_(U&3)NM0QO63;ITQ,B,Y7OQ< M)B:F$*6RJ4:U"J^VN (GF ,?4S*>IR+95KGC1,FM\X5^NCE;#B9R//?IM'$Y M&P,D)[ ;WH5O>,/A.C//\<2DYART4H$DFQEX04Z MRD'QDU4?*LZQ 8;81-] MX^R!(T-G1\ >K,>1,V+7XU@^!*+^WA&RSO%$KU3RQ$()5B)&F1U)13O,Y+0J54?+1]!T M5]CLN*:_WR:__NEEQ@DOC8*>E@(?.Q^_']OF[76:(2L)L[(<,)L$JI0"7HL$ MUCO&F>&DEFVF%_3(VWA!V(ZDL;\5VQDC^T&V@YR/C6T*KQUX'H3/B=QVYD*= M(JT2^(0&LC+6I*10#/J$\8"@_W/]]L?:-OTI]U)\KRB^DM=*[J2I.CACD<)Y M%?09ZJ*090D\N5Q?>21$KR/P@M%CED$WGW^[.Y7C1O,:0F0;\+735^^(_/T2 MW^%?%Y__Q/,?^,=L>O%U<6:R"X815SY[ 2JH#*X@V:%.:VXDC]8>I>7\$S2. MF^8]$AH/U=4)8'$Y^?S/V1EW3+.$!0SGRS[MQ)$1'E#0WE/%<'._P=O@$%R3 M-FX&^7C(VT>:64B!%G;) 2OP&E?.'K%K7!D3@=' \K[!$ZN,V^,,\E:$ Y=S?YV$$/*M70U$I\\>=VZ(N Y MFK9"F#T=A VBBY''-]SFY=5?F"[I5W\NFRV2#Q,5&MH2F?$$=; M.($9.)/) M*Z6##VG'$^GN"EOAPYT./AK*(W KR/G3@=SP6NHI9&&XH V% MG.[Q9'6-<$L@KU=:;YPG!_@8B-LN$,M^$6CM)/8.:MN?G"2)Q1@2AX <&3%D M$X+GU@%RSTWF*;+F:=,'S_+DOTI,?Q\E='XFW9KAAI%V2; ,9"X2%*O3 36C M.U\P[9E QMA1H+7KJ,9?)4:_IRHZF3QYTZ@:%3H5.7#)/:C +3C.)41I MLI=4K[A&FGG[49BY/[7C/L8W!':N^$4'KU/.RX4HGH (^.@\K!0M!>@RO& MVJ"T]:GUT*P=21SW ;\'3.ZCJU.#XO+1F&DN-/,*2JACD@LC!EF=L2),ELS8 M@+Y]\Z(=B1SW:;\;..ZLKQ,#Y/(I,$>//GH'SEI38UG$7YWUY5QPTF*.=H#. ME[O1..ZC?R]PW%E;(S__/\G;YF?I$K,U7!AP"DV=%,LA>,N@1,^C]((LDVT* ML'9?>=QT@"$0=@0-G-!I=Q9*M")P!LZK4E.U!'C.$;+06=*/F96Q3,!Q$P5Z M.-UVTL[(*0-WN;GSR'UFN2[.U6&9TFF2EUOWAO%O,9[JS MQ+A) T.=4ZUDVL_+R)/(?_1E.BM1%(L6A(]FU<,RR&IJ8E$V6>)4']44ZS./ M8+03JXG>^L'H(UR>.<.3R2L@B&! MUD+X'606/,+&U;-VBLX(+0,D#(FL2<_!VSK6,3#MG:]=)(>=5M]9=L$(B-I' M%=V?4;<>ME.@[>*%AQP8;9B@$T0>Z!06VD5FI)/B2*=5-UD&(Z!L3X6<2*?. MUV$R_U=7/_X6%I-U^Y&4G,PF M(%@AES=''<;LZL!E=M1U@D> MCPN;Q\#;3H<](?/V_?>0OW5#-1&93;QD0%73XT(NX),4$)#1I2^<9ZYY*X%= M".P$IPT1\A@(FZNK)RR^F7Z_O%@L)<;7+?>DT%IDQD%9HTEHQD!0W@$S*4:C MC%*A>5^?Q\GI!&?M0? 8W [42*?@$E>]0$M](8P:DK*2KH58>X&: %9GSZQP MS-TOFAP$7&+,1IM]@&L?C70*+KEF10B'VBE!M)= K* %Z("8R1G@1E%M\$1 MP"5W -=P+7=&!=<^&ND)7 >8OV^O*QR2+#;4=%G.3*W6*1QB*@EL2M*@"B&I MP4RX%@QTE"BN=GPND,DR2)ZL1B/#Y@9D-JKP,XUI%1)*[ZGU?_N9S\".=W[K0;!L]X0L$* MB0VC),:X9!!2%E!R*D$H&R7'QK#5@@'23O#O#RJ'3.7%8Z MRI@ N7.@/!9PR2A(OIA$IK$TI?4,W4>)&==#&19!;33000+-+?/A*5E)XV0R MP4*.-2TH.08190!#[KWF2B#WS0N!MZ+L]+V(-N;8 'KLX*#[[7)!TEDL7LZ^ MQ+25ZF@\QNC0>F/:VX2;IVL:B#V%.FN]\Z$ 9C40IE MMJWOSCW(''D.Y !HF1U7=1V@\\:,N"7/LV!5I&V<26B<; E6ZJPBYR%9KY71 M5DC>.BZSD9!Q3\8C(.QP\7> H:?E1(Z,4;^DQ2-:]0= 54-%=+,O#M^;N'EMV]A_G-67GX-=&!/IM>_17^T^11OG5NX M/P7'RBUL)*-CY!9F9[!DP\FRK)D*3 >@&S83B(TE9T6:T+R/SQ%S"S<8VDO+ M^I_365S@_$<-TR]?C^BO9]-$NWMECH3S5.4S+R?C0: #&V+3\53;JSU@ M?G&7^\7'>X[HV@Y??M:9L([[5(M@N:^/J\S7ZE@#M0Y;JQ0]3X/E,+9DI),- M,#I.MTA .RYH]MXYW\GPG^5/%V%^<7@']CW%\(@47J0TQ_KWK_[ZCM,%GC&D MJUT7#\$KLA*1&0C37,? M$:TPG_^D?[I4G=W:/5T0Y!V]&C8$/)]1CQL1B*9"(I4A9F4+E8 M\!XY!*S]\+E61IYD[>UO/W\+Y[4#^Z>OB!?_F,\NOY.*5GFK6=3N5B) LJ:. M[PL2?+(!<@Y,:J]$B8,5XCQ!5R?N^J$H>:+HL(U*>O()?OMYZTA8WC/+^CBM M4"6N.*CB$!2OA47H+83"I"A"26N:#X]]FJ1.P-4, X^#[&"%](2OF\U8$V56 M3:\6Z]H26Y_C>-*0LBAD624$QU4!SNE/;5!2*CO\T?V KFZ0=C@0'@-9*ZUT M@+0/L_E2-1?7S&W@&5 ?\3OQ"3FE= >9R\'5=!$!&]UC7M8#Y'Q2'N8O#I9,'K9 M.FRV(XGC8G$PJ#RH2AA.;QW "+2G4\ZV#EBJ#S\^D]FRW-G1J^!MP"@' M:])S>,>3X9\VCF#RM5)/3Z#;JKPXLN1BRK6AH$M5?K2WDA&UQIA%GS3][_^: MF31%R$'-3'915T]8W-#=P 5%Q!H'S"I966$0"U,0A7!:JU"*/T8SDUWZ3732 MS&0G$.S0;V(7C70 KM\Q7KR9+B[FEU53W[@A]ED>O&)CLSI\B>:U,\Z91AV3(PF1=043%P1G-(R;OLN:.-W[HIPZ$T=Y+J,+QK>@25 M=G E/U]Q;@LZ(6A7DHD;03F!$'DI@,E(3Z:JDK)U![%3Z6=S%(SLW,)F%X5U M@,"W,]JW./]6;Z5KMLY8\ )E\*"#$*""Y.!TFF8G M9=^O&CQ8\LW@,V1JU9MIF!VO[A&FK6J&*#AIKL7:>R%_ E:W!62QDX"\6TCE@^1LNA9\[5B(7WY?X* MM\3]V\_U7ZZL"A>BQ.P3%(5A/:_*6%>K1%C6.:@D6H?-]B!SW/.J"7;N'U-# M*ZN#._#:5KAJ0'&UT5=1;AM#EDI 8G4XC""C-A@5Z4N)A7FK?6P]K>=)@D;& MV-!PN ^_9KKI 6@KVM?^?DDQD#OD@:LKA4 4I-/K50"C\H!#U*J+(PDCWN+ M\-FC"W1Q;^VCL%EKZ75P2KPX/W]_\17G5QOB*@D$A0IU!%IFN8XF0PE.1@_2 M!KK>!=>"M6Y4OYF2<=,C#@=+0SF/B);%_.*L=@J9G4_R4OC+X,;R\"Q&96\4 M>:4*"?3>"W!H%$3'HU)1LNRW\MYIB5LHH9]N$/+XZB.CXTCF22/I=X>?];8* M2>N8I2492 ;*R R.D=? G+5*.&7#=FGX.R-H3,NDE4Z?A,@> N[@2KH>H7GO MK(S,(1V'&;00Q :C.S;*4&=S"LW)\N. MF]]T3,/F$'GW Y6KK,%29)8DA,RJAZ XK\/V,GBO,]*I2>=F"U/FP<+C74@' MJ6\S#/:093] >)'_YW)Q<2L>@(:<.EU[%O!0QWVK4N-*$CA72ID<0V!;W3L[ MG!_W2.@"'/LH]9%3XA )=V"F/'&DOKU.&U YT]7+/7#DAABK/&&,$)7U4EOM M0FG=Y'$;NL;-"#KZ7=<^\+P]L_C-)@B(S+)"DZK Z'PMXPQQ8 M#%H)59R/K=,P'B6FBQ!Q0[W/AE!"1VA:B:INN&M.M(I.:T&B28K5L7,(3EL% M006C;2DNJ]81Y,>IZ2**/#R>#E1#!X#Z6+.*+_$UR;#VJ*X)!;6+U$NZ\6?? M<_)@FO&?L=B:XT6?=1_WZ^;*9) MO_?B6Y7X_R[__,PD*[W,# K]!\@X18A:$,="$N,8;#'-)_,=3/7(1M_0R#VR M6D=^]O_'?+98?)C/RN1B(X^W^2(VKUD^\R[F%).%;*-89=H'M!FT]()VJD,, MSZ53'K+^5B#4)P?"HZFD@U%N6VTEIHEL63M=%+H.E+,6?&(:;DX#>8:CJXKF]MJS/+4TW0*'7*H045:J69CZ8^J3(I1/9%M'XZO+7\ M5N"Q)PN>?07= 4:N'?!UU_/%62R<7.R<(%J%R\P><%BJOZ3I>VZC9:W+DQ\0 ML15>W,GBY3"A]X":FLAUS<6;:2(/9\W+.[RHUJ"PIB!8JUP-.2($)A$P>/J/ M9SFRULU:GZ9H*SSYT\53.W5T *X5_6_I2+WRI2?32^)KS>!LNO@-28"X^CUR MHW'QZB_RMTF-DVF8_US*\]V,_I:\\-GY^5(D1!XN2!08N*QQ\.1,@MK/&YSQ M'*11/BL211:M8W(#LK-=D)B=+*Y[04('F^+>[JXR.=-19C0R@HJNOC1K3DXW MLR C\YJ\G^1-:S!O(&,[$)[N4\6ADA\YW+%Z+,9\RT:]Z5=Q)H3VO) #'8VI MXP7(4'6":Y#>:Y&B83G<>_+:&--X$W72^J:'= M!S1NJ+%G)A1?.S A!E%K[!TX:P28+)UF*;$D6[>$/X#<=@/"MUYZL4ZKB#I) M[B4P1L>&2AG!99W H@E)IJ \MN_BM2>Q8W=@.@X:'Y\^/J1N.[ --S'Z<;+X M]S(=D2LL&M%"\':=;^:]R^"0)5&B$J6T[K[_%#TG!\5](+$%$/?23U=8N[K/ M/M._7.X8JY6$ MRH"4RR8M9%X$Q +9:EL$S\YEM0>@GEMWW#R\HX"JJ>@[.Z,^$Q3P:>Z$S4D9 M5\ $1MQE'2$P;X@[LA14#EF&N ^PGEUYW/RZXT"KK?@[ ]?KV>5\,W-ZS5S0 M3*-/&F2J@WG0$G.VU'&EAD7+6GF8N\L2# MK5T5;2)'6[,"05A;QX^)X')DWJ5]D/7,N+_@>)K+Z- M_/9S[4Q_Q%5SH,77R??52+N:_^*2@UQ'BREDBJY]31ZUSYRC%$&P>R;\,!&S M9RGMQ48;.T;16*<=('<#&U?=X+T76D4!''VF+:X"^*@%,-J7@;&H0FH=NGB4 MF%X"]2:(N1K@\OJV@PUL=%!1E=5")Y MF5+K$.Q&0L;%52,E/YCM=ZC$.X#-FOC?<3'YLNH:LMQ2(BJ7K0ATGM<@813$ MA:AY6QXE*YPIBZTOS,V4].)9'O-";*"3+I&UWG.:):EKYI/--2?0LTA[A;:@ MD9RD5B*=UJV; 3U&2Q?'TD%Z?A8Z>PB] _!<,8#YQ6+-T\T.O)KF1KZ+BB&# M8:Z>W<[0%@L1;)T:'$B"*K3&T19D]0:I??3_P$!OJXPN\+7[P?[V.F4K!*4B MEP:*+ E4* YB1 <>?1 NT@GO6A<]'T1P+S&TT;W*033<%9S?S:I:P_EJT/29 M$*TUT@[3T"^0 M#_PNS.=A%?0>)O/WP0+'SO%]FL,.LGFYM,RFP*$8I6J>D8!H4Z+3SD8"LK(^ M=V DC9_-*[/S5F8-9),CJ.(M1*0+P02^G%&'J;0NC_X;9O/N@L9VV;R[Z+:K M*WY#WF R44C##"2O#:A8/#B-%HR5&.G6HN];MZC[%;-Y=X+$+MF\N^BG*ZQM M>/].UK!46!V07&NB@F?@:S_^J&T0)G/,]Z?@_%VS>7?2^B[9O+NHH ,XW<]\ MN,KWRS;'$FN*LY)0XZH0L@Y@:JIS4)YY,TCC^0>4] *A0S6]J?/\86+O #R/ M!.*#<:4XZ4 LQ[0;\LI70'G[7-=!)E\BZBL>7 M)"43"8I0!51URD,B9]^A=RAEBAY;1TQ.ZA%L)SUO_0BV@] [ ,\V[R[*II(" M';+9&-IBR6=P5@;PVHO,I>/3_81;!?][_$(MHLRNL#77NE6WB<=HO# ME/.@4'$(VA@""N/:9NN8.T999Z-DR@YS1UJ[B(UUV@%R'T_HLE8A%LDAL43W MAG*T^Z2PP)!Q4UP)GK>.4OQ:R90[(6'K9,I=U-(!OC:G]BDO3$FE@%W.3Q$^ M@7>U>780=*%P0]NV]6/J2253[J3DK9(I=Y%X![ Y[.G/!^Z\JA6)!06HJ"PX MDVGGD:EK&!,\LV,$6'_YK)+FU^L@&AZYC.MJJD4-ZBS.ZON(C8+VH:HCEUVM M;.1: E,H,7(T-YK#+VQ1.O.AW9X.PZCR%D+J79UNMU+9,$<>8KD1V5-1[5B MJ;KIB!"]<$)&6QB7@QU<>R09=14I.PQ43773%<8>IK#HC%''%$DJIHYK9X6\ MZY(A!5.,\)E,U=9CV0Y-,NK*N6R-M,,TU '8EKV+7\Z^T?I?<;I8"O.JS^9M M>Q2OO*:/F,[#8C$ID[34=)VCH[@-7I L8XRAMF]4X+-54)(P=*S;Z$3K0&X+ MND_/>&L#WZ/KO'.3YCL=@D2IUMGF0-NR<(/A30/MJL MH_5!#5?=_PA1X\ZLZ<$\:*&M#N"W]85Q?Z^]GLVK=%>=X\,TX6I+UAW(),KH M$Y+/5Y,1C<@04U; 4K!9,-J(:9 A%6W9&'>R3I_'[C$0T<&F>/)MX0';I+L7 M*5U^NSROSZ?O7[[Y/%L/"EE<3+[5/WN'%RM_]?/L-_P\#]/%BJTSYX44GCS7 M[$KM=L\\>*X1$I*B8E19^:,D1P_ V[B#AGJX(3K"SB]0\G(_%6_@UO?/+'?L M,4A2"V%0Y-R\!\))%L>$C"0!DN_^ZDBF-VTOHNQ3&[J* #.#U2I1%%&XC7[G3,)D>PY0&,L6J=8,JW= MLF/R=\KY;@=MI%XQ=!)/%I\N9NG?7V?GA([%J_]<3BY^OOP:IE]P,GWQ_N6; M_=\FMOO<]H\0>_#3Z+5AM=IUR#8+%CV3#GA@]7$K"O#.92C(3"ZN.)Y;GS9W M*3CT;+[]JO?$7;7R;KA+U@I?0*3EYF %HI(9O%;(+&-!A-;]8':A;UR+^P!D MW#_L!E-*!S;R];F\WK?$VFRZO$:6?72DCAP# R&, V6109 ^U?PD(5+ I&7K MXJLG"1H74L/A8#:44CI V#T>KMKK."$"BQ)0T%:LXU7KA"4!K%:A29/(EFX] MK7LC(>,BJJ&B9ZVEW@%T;FVXJU28=WAQQ_#\L)3SU8!4*3TF2Q)B#NN, %GC M$P+06\V9RR6RUB57.Y+8PYUX$"@>OQJ;:Z@O #YUXM_X5$5D+I!\$X$UBSS7 M+'+G/$3/-=/6&VY;U[WL2N.XL9^CW:&#JJX#:#Z7$_@(SR\OYU5-'W ^F=4D MP??E<_CKVDI&6>< >PL>#5G)*IL:ZLW@>!(:E54BMW[['(*/DS 3]T3>K#,8 M=!'2?!B .#,N15T'!]BLZ\10'R&H(H&C"LX4$BQO7:?UD(IQ@3@^-A[X-0>I M:6^H?5^R0L;V_&*LTL$K.9[Q$K75R_Z?0I/\I ;G\](6TH)DJE4Y9I7+,^2. M:RQT!^!C*?X7LR_.9$QH+3=@?4WN*5P1[[7HP'GR,+3/1I6.[8IQ7WFZVP6C M0:.#;;'A"I/)1K+@ZA,:ABI*"75^..22#7J?;$BM.W#L:6D,UKF@.X@>J*8# M+8U7TSS:2^*+G">K7C=OIG0A?5NNU_))\F,@) ME.;+Y%<&1@GE8XP6FW?<:?/(6%/";KW#?_I*>_N.9%=1%^)*%$M[)"R'5CJ; M(4I#[-IL9!26=IY\!C7;K=1#,'0OK=[.L6LLT!&ON,7\XNQC?;9?50EHQTS- MZ4Z*1U!&0W(C*_R/\-?D MV^6W->'&9&V-X)"6SBJ91N!3JB\VFFLRELA?W2JKY!F5WUET9*7OH[)9"_F- MG/G_Y,EW$Y]FJ0BI3 =ZM581];0-PJRY1D3YY+='RF^NT$P\O/4@/? 0(+N MP!?^/,>PN)S_7)KH2[X6+Q*Q5-M,6&>82*C!8.W?4FK[PTQ,F5*"\$%&7EIG M#CU!3J?&Q9Z:GPVCAMT1Y5>(FN*7ZN6WQ]2_PODE7O'RH#SI?B/),92Y;>@M: W2M%-0! M\);\?,3OE_/T-2SPPWSV91Z^O;BD332?_"^QN&S=Q,\46171Q0+!(5FDLJA5 M4$(R-$YBM*EY#_$M21LGWGPDV VAG@Y0]R'\7%8(O2^_3WY,,D[SXDRDVK+, M",A<<3JQ:_D%45M +&(X_>6(^Y=H98A==/^A8<;"8.[BD MKIE81F)52-(9+USX>2COG6WMZ=P@8N6O$X0I]#"([2[=HQIGDIWCX1.X+&[,A^#Q1Z2'3F& M?47Z^^E5&)_V!^L;\,8CDR;6D(^"*!EQ8[T"[P76] V=O$.>FU=:/4I,)V!I;R4< M)/4.X/-R]NW;;+KTY&YX6L<,?Z\YB_6-)'G!K9<.O)(25. ,7 QU5&NQ,D?Z MF]C:#]F&KDZNF\,@<'^>;6M]=("Q:T9N,545QR\5?2= M1M12BN1"\^['C]#2UP'5!DM-Y-X!?C:%!XN14BG/:H^].N%92' Z:2@F&'1D MN&!H_7J^;U1VN.96@Z#F4&F?1##VU;?OY[.?B+_A%,OD8M$X)WRGCV\?F-V? MNT;AV0^S!>&P$K%JC[DFXRJ$5U KEU,&R3F=.MQQ"-[RVG2(&Z6TYJYU:Y.G M*3K$X_I0ZS5FTP_G8;JHJ\SQ8C)?/IB\F*[J.NZK8UVZKUW6CEP,R6J3\9HD M%9.(=),KAX:<2IVW\GX,KR54<3B MJAF(=4!>Y!Y"B RTTH:N]^A]:%]"N(F2\7+)C@* ![5^!VNC2TQ=!59P4L8&T8MB94,#M,RCUR0/1D1(@HO@Q9*A/:35W>CL3>P M[8.,!_WZ!U13!S!YZN\G:U*;9?;5/.,DOQ:(&.B!OMBA& \!^MYD=); MH6)K?_$)N0CQ\^3B'&MS^%SC*I3Q3C+AQ\?$RZX]YC;61?6_@^>_)Q=>/>+YJ MP?1U\OWS[-7T8G+Q<[W+9,PL>9= %&]K9]U,%J=FX&QAI7A'7D^+XO8=R1JO M"K8! )Z"4T-MC RT]Z5,$LZO"H8Y8]&$ D55 1G:=#$(!E&6H+S)M%[\&>;Y.GRB9):*!PNZ((+*M9@\^@S"<"\4$UPT;T)Y MAX#QJG3&\,3VEWT'P%GF0/P6%K6>\MMWDMY:3?/:H&#Y9/G;SYO?63]C+CF^ M87N:J[S?A6_7:!,Z4B"+PX')K:WL(/D;NY[L_K.[7 ME8VMXY'3-S_@?/E 6^>G50Z77%WY*E(&#,4',$;6IWBD,YYQ!UD7A:F(:.*] M!YY'7@P?7V/D80^C:W\V@"I&AM3;28B3&"?-%@#;?L5QLZZZ@MM :AH9?+BR3QO@;1'/G[C-E;6!AF/KB$YK%M9.BMYK%M8O4.X#.K:-V?3^<# BZ0A M(2/CD>L0>&O8/""BA]KM@Q3[>('$'E+N ";_(#O@ I?/6Y>KG8,962&[#4SV MJF97!_!)<;!&R2BS%SJT3H=]0,16,#&_RI5UF YZ ]%Z5YEDT=6YZED)\DFY MH@V50[43K?4E"(:Z];#;#62,>]X4=G\GIK7;V& M!Q2:E Q)Q3H&@!MP=;)F*(ES;H2T]_N8-HR&;D%@1^#:!PZ/!CM;ZZ8#X%WY MK\M-:+GD4>0((=M];>"C?U5+K>])=\1:M:[ MRRD17>:"J"]T>&OMP?%BZ?"6](-)OIC6@R1Z>E?97Y./0&(/L8X<0/S\Y^SS MU]GE(DPS[9C7L\LYG<#3]]^FDWBY>#--),7)#ZS\7;V&1V<\8QJ,LF[E6[@B M%* 514M,2([I%I'%7=?M RC[Z'=V)&&/_K*VZTG\]KJ<-GB=-$$$O _+WH8* MG%0""IF/IECTA=LM,'4 "5O!RYWZ#79,/8T,QU6]Q9OIXG)>7WI>_54?"K"^ M*T;DD790J#7?F7#1N.?]-.E?SH1DXG0O0\6M$RM'I[1* =XE-/T?4*=6W M'(:T8?0T\N'TW[/YO^F#;C]?7FT?%%S*+"T$\CAK6UXZUH70@(QSX8-6ZOY+ MR,8#ZO$53BFG_/!#JI&D.SBHUL6%+V?3BSF9BQ=K2;[(WR;32:WKKZ;CFK?% MF4PZY\051,U(7I)Q""%E\"Y%50LOO&P=J]R)P%-*"VUS@ VGOP[ ^6Q*QF,9 M&:OW*S(B+N:7JZXX50.?OX;I^^_+I.YE3)!\H]6$UC-N5,:8%&@9(VU:BR07 MP\%H&\D]JBT$6_=@.!9OIY34T&9+=(F:L0>B[2N3=Y_:@E0G9% ?-$?;!;;F5>2NQPY1*D1E,(" ML4[0R(Y%EI$S,\R[VXYTGM([2L,K8$AM]H+80[;R>J+>CS YKZ$_$LSR?CLS M0OD@,$-&\EL4UBZ$*3HH(1?)E2TR-)_--! OIQ1_'=GX:8F*7VAW7(_&.C-6 M$J-% '.^SDXN 9PG!XHQ+#QDGO5V-;$C;(MK)K;:#_[_]D,K')QD4]5/E]^^ MA?G/6=D0Y?I_I[,_IR_/P^1;?6U\\]N[CQ^)HOD//& 05MOUAV_+VE ^Q^G; M*KADV8H(-M60I(D"8IV:&Y4*.B.=WJQU'_AA^K9>??H&P5_785W%[6.T*#%Z ML+Q.;+7XVU]9^X-Q1K;,6%9C M^HKY\AQGY3IWXR-)<_*C>I%E-E\910VMQ)W6.X)5N#__Q[$")0:75$ P!&UR MX.MQF+T$+951/&>C33PI*_!:SI_PXN)\5:)](_);>T]EIHP@AQ&MJ5TKBP$O M:OLFS#DSIKBX/TJM07_/[6CKVA[7?^&QV,=R(_TWS3I/OWR2*=SPBH>(UY[Q5R;3DP:\DHT%Q"P*!! M1^\R6IMT;/VDLP-Y!T=%UY?4.JRU5[>+59ZPYKHDC0ZL$F3/D(D-40L/BFQM M*;2O,;O6T=!6Q(][Z Z%Q@>1SU%TW8$C=;>M&5'HI2\<4-7AH,DJB"+%VMO, M>4PN.]MZ0^_>J7"XW@_C@.#)_H6[:*0#. W2%\AJB<7Y0+84"U6&C&00:CDJ M"EXLBY&W-DE_]?Z%.\'J&/T+=]%QI_V^="!;/&<-43H#BJ5 FSX2,T648K3V MY ELDZ+Q8L:0I8@"-%-DR)!;"1&S V#>;_L#%!=[+ MCOHX.S]_/9O77SSSV97L+Q9G6Y#*;P"&GB*"B(O,S.@XQ"RFC M-VA$V/P"M]"_-ITAVJI$W!8(M@XJCJ28R!F9##D6 M&Y6UGO5V!6WBHP./O?.],R9P=M\\?K5YIOBEMFGYW,T>NM;4^F=23\')0^DP M*S5IRH.1-EMM66K(W3AFZ^O?7=/$-YP M[PV9P,YP.GNTY^"=96!T-@6]SL&?2/1AG+X=?[=]=0!\#O2@7DT[VTG_C9,O M7^F_+W[@/'S!I8'\.VWXUV$R_U%^_0,AO&%#] L[7]A(ZDS'YK%!!WX(EMST[A]PME4;C]1>*BI[%7CP3*7VG[/B^94E@=1Q.!248N0'$(P=;4.H-6.89:NE_< M[^P_O'IBV[,MZ'J*P.YC]C_;;_I:;K?CYM)GK0(O8$V@8RIF!:Z0HVYS*.C1 M:]Y/''9@Y8X<>>T33+WUIV?SMB_'8^]$+<]?:3,>!KE^.HB>_MUWX@%@ZRR_^R@6/,O%+CNZ1J;(@O=. M@K=,0BQ1Z**\4;&;\1"#.(S#!DO_[KOQ$+C]?>*DS\:7;RO:,#K 3#0@@J\- MHPJ=:$(60)==9EGD*+KIVS","$[TECV92.M@'P$XH_ML%?Y\7G[8Y!ZDL1*LCJ,PM M."8-1&E]\DERV[QEH4EN@TF,3(<],U M4A@BAY2+5ER:[(,[F8-@1^9_^=#U+W 0#(GG7_H@6#\*7!*JGY<:MZDDD36) M29/NC9;@-4N@12&U8_+EA,R!73@_46_^;W4$#(;D7WK_[^!+11&8B)*#"<&" M$B:#(RF"9D4E.DO9*;V)G50Z\__M_7%0W#2Z/\I@K,TB?_57_1;_.27LDB0% MX^K]M^DD7I(KE8BXR0^L/:T'&)S5A)XC#M9J+[]6$PG#S]JD>?%BFE^D-+\, MYS?#Y:Q+6LO 01:#UQ,& H,QDX M*8+/.4-*BCN7/..N]?RKGB97[:_)1R"QAUA'GNWR^<_9YZ^SRT6@TWJ:7\\N MYQ>(TTT6RGJP" ^<>%/$C%<,E*=-XW7-0L.8F?2H^/U!?AMGO>RZ;A] V4>_ MLR,)NX/3Y>XDN(A))101C"X3C3K Z MQLC'773%D:@4T\25XTDC_9W,6P!L^Q4[S[$X M)MP&4E-GY]E'7%S,)^EBTYA+I2)B2I!B1G*0C('(R4J6S#@4*)2Y'\#8ZG1[ M?,7.7_?'/.L:J:D#QV/Y%(CXB11[N5B:N()'=,0$D"QRK48B!ISS$).VC,P" M\L9;]UI_0,3(YUX7_NQAFND-6NL-2,=P<=HX2 *)A9 $>.D$9#2"6:T=IM8N MZ08RQO4)#E3L4S#90\H= .7A#KK98.]F4UR_0E\-J!>>>:,C.%2U BLJ<"$( M0.E_0S;K4]D[9TQGZ5)D0-<. MN>XJ5:$:!E(F5PH+,C?/9]R.LLXC>8WQ)JBCC+KDLDZ905)>:3["1,$*Q$<"2D5;6-TK3,.?Y7,NG:8&S"Y;@?U M=G#_OYG2^;+T#);,O:W_H/);/5!)TD.A-9GKR8-B@I/S2?<&5SHA?5=D:FW& M/D'.+Y-ZMPM 9L-HJU_@7648E2Q$M *TSF05&4E6D2X:9(FV8/$FY]:Y,T\2 M-"[XFJE].SCMH8,. /62;@?:G>$;_Q@OZ?FTV7_$3$K-H=;3B4M==*!U!K M$('BO"!Y3%A9)(ZUJK:H4) S3F [R!(^N^ [1O&?#T M7A;-E(>"G!%7:" P88"C#R:@M:GYJ.J_2;1Z)[SL%ZW>17D-!Q\<,U[]S^D< MT^S+=/*_SPCC(YY7@5W,_KFNV5^EM+4+9[>B9/AH]R R.T*!>3548K8.9*(O MJFA)_CD9,(Z)%'W,_O\O[\IZV\J1]?O]+P5P7UXND$YW!@$R[2#)S&">!"[% M1'=L*2/)F<[\^EN4Y35>M/#H4.F'=MN6VO1.(<^\$@F?;]G;12 =P&J1(60E)AI9(P'R, MH))QX$-0H"R3Y*]&4]C1G;03;]O;"5;':-O;1<>=MNUIS;*0PH*PND =$@6! MCB)@!I6.*(2Q[@43]<_5MK>3SK=HV]M% 9VUN=SC@Q'IP2E$-E$SA3? DA_LK:]?='43!6=0>J9EIRZ2J(BHZ1HI(6BU^.MC05.YX#G M7GF;[/$[ITZK;:\5W!JIZ11LOY=#;&222%IR&0R9SZ"$"A!4],"ES2JB9XSK M8UMZ?YIP_"%.RY%UWP':KV-T'W'Q;9KP<0'0@Q8IP\X$D00 I(63B;,IHC68]X&8Z9SJ[4Q*N<]0N1G M7BM78_S?S!>;7]6_XQ,Z?:WU,D$]H4DZK$#0L79[I1B#IH.[M*Y].BZ'G5OO M)[JJ#@?323207!69? I_X &YM$<>TCX-]A*EC3)8-Z_Y=;I,Y_/EY0)O<@K, M")E4<2!%8:"DB> 2EZ *=\8;I4SS^VR>(>?@?;@43+7LY^8='\(*7\]GJ^GL MDE1P]A47:Z4M)\$JQE.HG82N3L2,%F*V":+0&4/!*(IMO8=N35T/A:6'X^6' MC6T8[9Q(G< F=?T^+%;?/]%1LB1Q5EZO_9MY>>HO]M_%#G]G^TVOL1P:[9%/ MO?,&^"5X+T(L@%@,G>@1(7JR2".CT])@+*EYD^Q+-!VZ6W[ ;SB[Q#>T =QY MU127DX2BD$P9F=^U$M-[!9$K8M;6.Z&S+I*W]M">)&;R7)S=09FW5K1W'9\]C7',Q>WY_98 M%F)R=%8S@K9VM4>NC@#TRA0P40=KT3K)6X_1&]I"O,V]//6F7[[?^V2=9]$L M)B7JS,6D2!"2OOC$+*1BH_4HM9"MK<>]".WPZEN'Z/^0>L7?Y+ !:' 22=TX+ZHT'K:P?;4]5(4.AA4MCO1#]5;9XC?GL_L-E'G_.FPNUL=[FSCFZSCHSQF()64!C9"4HF#UY(36Y6]F)@W4T;>SI:7BUK@_('H67P[I,ZDY=O;!]\&DTVCF-P=^EX]H.^1 MV@53%$:E,S@," HYAV@(P9)^;;Q/R83V(\-V(+#!65T5<:.!Z^T_<9FL5A+8 M>NJ-\QE\(+Y=O?J5]G\MFE_!\ 0IXY[%PZ'ED8/Y8$UTK/;41X?(VBP0DM]=GJ(L MI>8*A=*"5HL)$.L/9(AN+-41K$"N<]=WOC M*=E^NV#D8>/^ /+OX,"^C:3^-9Q_K4*:)KQ9\)L.XD]37+S-Q/VTT'?KA(Z) M+,?D.7BM?(VE&G Z"V!)*>?H%+*V=9G]GJ2.@\\A4?-D3LG[#PB'^3"ZZ0!FFW#7S27% MFY2BY=XQ) ,8$3F=')F!4XS3R:&+2I8L[N9M H]3,BZXFBGZ\3'/ATB]@^%* M+V[VMV%\3"PY] @<-:L3J\F_XB%##@*38!+CP]C=_F;:R$G;(QR% RM@9&@] MXG\1AV_)P[J8T0+[_]D1!K..+C M:O[UW7RY?#K\:F;0+;-WPIHFZB+)(*DE0 $4KU^]5D=JHTKXM M?CO:Q@D_'PF&@RKJU.//C1M\]GW34:/+1V_SV2U0* -W(DE+GH8DC"M9C5"E MZKTUQDK.;="MPUM'"R9?MX.>Q?/IY[7 MH,7CZ&?LJ9_;<%F9.IOA)#K#0W :!+*:C;2B9B,C<(W.V\(Y:X>[S3M/J?9@ M4*3MHX-3P=:G_\PGUH54T)AZ[["J"R=#D-)!\#H9])P%Q5IBB]YY2I4&@V-K M5QV<1"_W+Y=+LI>72Y)UG,["$'W<.[^BO7UW&)>-#+M'B*B7K-2(RJOT[\OI MM)O;M1V"ZC>_W>.R]9_O+] MSD]7 =:SBW>D<5RS;T"$/9W+'4!Y M'01J'N%JG7S,ND3&2@%K5:H%M/7V(QXA%,5SB-Y(UOK>WB=(Z25Y.X3^Y^V5 MT2FFZK<+O!YY+XU!9-% 4!Q!6-%HOK8T@Y2_19P MVE\/'0#K(R[()CXK;V=Y^FV:+T/-R%R014._#^>/+=!-VMJ3L'PH$LCI)ILY M*0L.LR-F11;::Q7;#TK9D];^8'@ 9'ZXH?P(^NL IX]PO4K8[YUD]!S]/32-S[.\;J?6CJ V.^7=6'$$(5402=D7K2NO7N:FNZVLSTU/A]$_!T Z3%?ZE9:FZ[D M.N2>!(:(I1 K3M4>EY1#O66=MGYEHXLF)<-;YV"VIV[(RK6N"FW*P+B!Z,%1?'PE=[##$M6+ MU?2_:_:J[;L*L\]K;FJ\:EDMFJ@2%^3A"4ER)>&ZNHHM&AFU*,DVA^SS%&V% M075R&&RHA@Y =7.SPV8\[R\XPS)=32*W(CIIB8.42"Y&0RA" !:7@\^*N^:S M49\@92L8Z9.#40O!=X$?>A8N5QLN)LXRI[)GX'4@\E4BM[Z@!\Z(_L)S\KIU MO/7ER$Q??YHUY]VPSK5J\Z3J9U=Z['R;C2 :=U M#+1!J51 \9KFCXH<5A8YSU([[UM/W>\\XXJ^B.2E)->)5KD*S$/T08%$Z7R0 MRAG7N@KYI\ZX[H*P@S.NNRBO@Y/WJ4Q/T-DKQG'=WPGDWBB(@KP:LBF4]U+$ M*(\0%S[!C.M.^M\RX[J+,CK%U/VT34DQ:X811+F:<2\A>.; ZL)"$&2+N-9S MV4\TX[J3ZG?.N.ZBAY&+-E_-TI?Y8I.!$VBYT;2^=&2:3.!2:+FA!"MX+I$3 M,R:_8+T]?&9_ZC] 5?,&K+[AX+/D:3='9T0HP)H/2,4(,M"IT**4( MZZ1/V[2H/O'X[N+VC5#00II]GBRW?K&1NG!/:%8BU&AL6E\>GNCD)7@;0\RP MUESV:X'M]= M+Z^[([W;-3M10CE:B@5T+K7 )!3P-@?P+#OKBR\.^1:GW7YO[^XP/ Q61U)# MP_GG36-PQ.=RFC=7;:]GQU_1QB?>V!1-(*LP:1)FI*W?,69!"U;H]R*7T'HT MXB[T=9R%/F1W&TQ%S?K=F\+O_6+^IO;[W&G[V=PW<%:NC=R/TUG".X+^-:SH MQ]5E.)]H:3'5(A)9& F D0!"+A9B(0D4:U0(0W4 -&.BXU1V8R ?4=D=F(S; M">"WL)A-9Y^79XLZ1V4K.3A) E"NCHS/]$7;.GW/(V!1&B6I*[O6M9-#\=)Q M_GUX[ ^L^M-/S/ZV7$UKX7U^$Z:+OX?SRWJ_R+H2YKJ0-J%*W9)LQ"J1#-$P \5P6UCV!4OKC?^GS@#O@K"#,\"[**\CZ^5AY@EY($9< M@8B)$1O2U.]BG?96I J,"=LZSO5S9(!WTO^6&>!=E-$IINXG,HQ#PYEVX#.2 MD&I.*AK4M"(S&A5Y=&*HJI\3RP#OI/J=,\"[Z&'L#'"UX![)864RA9/V',A% M)/L]Z !>B +!)>9E(CX>#FU\/!G\^./[ \4!"IRWE>;8@+B;V@Y.^^R2AA*$ MH67"W-4@HA@=0Y8#UUM=;#)^24 SY3Q5!+"+I#HM I#2,5&4!2GJGL@X(^J3 M@^)D0A?,F?H B@L>FZGUHZ@M@=]_(#IOGGV?2_F*]OM@@W[5K7@997CP5:7H?E M%_K@-_J3;^&\YK,G)1KKT6N@_VI!LK>TC2.)1 0GA7"2%SX02(?AJ#LC:4_D MO1S='0L&/]NBV%PJN?[+VPG?Y.UDDV4I2 AV&I2)!KS,#(RV49A@N8Y#508/ MR5=W)D6'"Z0%)'ZR9?)V]HW^?K[X/M'U/@\I'*F%BVKS(=3Y1F"<"2M$S66&>&FC0S*&,=EXWTLD3:@&+D0%]+@9Q]75=0SCZ_P[#$ M#]//7U9GY6_+JW\Z,5$I&ZT"4; *13)PR290TC&O6<"HMHD3'XW@C@=1[+," M^E7V3W96/!PIM#X\/WT)-S.M)L)H+]%%,"$;4*K.\?4I D9!JE,Q2--Z#.U1 M&=QJY=B363G]@Z2#%71#=](J>N8X.%4XJ,0-!)T1#)=%QQ L-J]>V0EW[N1P MMY=H.X!$T].FKH_;:P@WP]JRU,*FH,!H1F<+(ZE$3;Y)+(4KH= D/M2LC,&8 MV@K$_N1 W!<8?B*C^U5*=1KF\GWXOKG#>"V>C?]^Y^\G*B5IHPG@M S5$J/O MHLF@0\HJ22-LW*9<9Q3BM\MSL9-9%J>!@D/' W=WC-QN&G<^NXIN%8R%HQ: MMEYO;S4=LQ(5,"-8,I)KQWM.#3_-V79+Y\^=(VZ$B_[&:>\HG&M3\W$AD5\? M&8:4@@$66":%>0U!& /)8R[1AA!Y)ZF EUC9;EG\:3+#334_8B/T ;,&+*NV M#CE5GL5X:LV(!M!0R(R],E+"%?33@R =^.OG9(^FA S?WQ6$I&86(F@DP M;CW#(C$(/#B()I&7HG66IO6>V69NS>EE0)OJXF2[>Z\;4Y?SZX;G'^*-;1MX M=WCA<7IT]Y7 2&VX1B&)5T(HM0R\I *!10[2<&4S\UJ5TV[#?3.=35?X;OKM M1S76\4='/S/L/S+][^&_YLO7I\'.N1J+Z%316GE/(C("XG667NM0W$^MFX.WI'$;J%Z&%2VA^3!>NL EJ\OEZOY!2[6]]95>^W+ M].M-3QPR8[ER((*L]R9F$IMRQ%F161N7R4QO75#W##G=PNUP&,R'T4D'\/JT M"!DOPN)?2[)VUC]4&5TS$S"6(DL&SI(F9E2"8!P#EE(B_K3&T-J0?):@<3M4 MC@FQ=GKI &0U93"_^(HK?/5Y@;@..UPO%U>OA:J-W8HL$B64!!=E@%283UIZ MBUDW1MC3U(S;]W%,>#722 ?8.JM:.5N\OXIUD*I^">E?Y_//&VZBS"23LI[- M*,BR*!&B\Q9,-2R$%Z6]*_P\1>/V4QP38PTUTP'.KMVK9R1X&Y?-7#HNI802 M:R&O(",@N&"@A%IFHVU)L37J=J&OVV/T*#[L8)KL *57/)T_)UL^09^XC+24 ME47:X8D1<"(9$$8)5,[:PEO75&]#U[C^PW"H>-1?;:BB#F"WA?#^@;7M@9;V M-UR$S_BW)9;+\W?3@A/)R2=R,@/F2 >!J4>"-Y*.'!D#8UIRT_K^W4/H'7?S M/!I,CZ;2DTT=7L]0_H#+2T+;O&S:?)K?U[K%BXZ3*MR5XW%2A,I)X;578*2G M#=1P!4X7!S(KYJ*R,936+N5Q4X2/E 0\,L_[1AY1*\$#"HA(ZU QX2 0WH"+ MB(Y'5ZM9!Y+'=A2>5.)O%W1M,7VJE>(Z, (>&]]UNV.L+U:8Z( EVY1 R'6G M5JZ5<8Y!D9XG5%8:.]3:?(:L/@ X!"I>!N!!*NH<=;_CZFV-# YLW4Z3%I0Z!.9RDQ#%LY[*[@*N;4T M#J=Z7&>G";(>[HY'5F4'!_JKV6J:ZT8__88?,5TNUBUHO_V1SB]I];\AL9,@ MOEY>Z?6L_"#UB]H!/6$J*Y[)@(DLUHO:C8#@-0/GLK):.Z9":X^H">'C>DN# M0/CX"CV),__C95SBOR_IN;_5>:,'!-:?>E+[$WPKFAL=U _?=8O%($)1,D.T MO%X:F3,$'3R4["S*X+THK4?Q/D7+P1?3W7_NYA* (+74IM3[1>@+6=/@-+>0 M4HDF1U^;,8;EKX.>E2;:_^$JN4/%W<'Q^) '^F=7UU3IE**VMI[MOLXJ+L2& M420F8;7+VDHU-&HVI'0%G#UT_ )H]A%XG[C9%,))C8QGM"!#3G2V.PDQ( ,A M$Y9B0L#0.G'Q)#%]86 6Q^Q;AZ2Y;EXG+MF-;EE(PI03$%Z.H]BM[7 MN[6E V6%B(8GY9O?KOLC%2/?#-7ZE#I0S-T!Y4ZA-HO):^L"\$(L*.X\A$0^ MH#%21943.83#PJ67ML-#=?PL9/84^,@C%#_AXN+=/,QN"N^%ME%K6C=>@T+F MR#DH!1C#(!FON8@'I]&CLWON/[4GI>^KI7D3D8U]WV@\?TUOG*YN&GNNK^7T M.DGA'2#7"E12$;S!!$(E;%NL) M9A_"ZLI,=^@--T%",'4PLI.^-GH%"&A#,%DFSEK'?!_2,&Y907.KXB 1=P:1 MS:I1*2EM9 8G%8G#,P/!VD3['1G5UJ&Q: <$20]VQ&%:?08B>XBX Y"L3M+.,?'_\3OM9/-ILF1X':!H2,NM[F M'!A$QSDD35MP5B&F]M'H0PCN!WK[H.6AAWPTU8V(T^5B-?E0T[GKM2HP9&^< M!-3U#JZ@L0HN@;5:2".C#&&KP1CTU#M8HY]N<7;OA>/6(34[T?878@^:O^E? M3\;KP,%&=/7J-3+0E!+ Z@CAF)BW?JL)<=OH?LS=X@!E/53W'I(;6>$/6L\V M## M+#>U35+S=1S1@L%\Y;R'!D0?PU_ M3"\N+S:$B\P,$R:#9'40N19DID59R%;#R)7.3MFM.IQ? ,*]EX[C +<"P/[R M&UOQT]D=PBV*HGR((+W/U4@G.\D$ T9'C,Y+)>16AN9+BK_[TG'ZWL[H.;A]JO$&/B4,C#C"F/.,OW.:A\S!M%" M3T^J? ^AC:STLQG^=3Y;?=GL4=YCL$PAE"0]*)$D(3]88!E3SBP5Q)>* 7]\ M:B^*WD<[\R:B&CM)1:JZHOUZ$!E/=!01XL$99+5?)H$OD4,HC*"N'<]IJSS5 MPP>/8Z@U5_5A AM9VQ^G?]PCO9GFL!F>Q$%ERU83Q"54JWK(M=/W@ ML>-89LTU?8BP>@@=WS=?WMV,IY$Q^ZAC ,,CF3!H2!Y!11 2 Q.*?$P]<%G4 MNYTFH@UV@?70Y9C[B;P#Z&RZ>5;S]*]?I]^F&6?YML\1TSG]+T^,S267D$!H MY6O;!=*.QQ&B4C%:A4%CZT;J;>CJJMAN3P0\G'O<6AT=0.Q^Y<";D*Y[:6(, M9"%E"<9;5:N& NW6@KQJKQR3/#(16E^8^Q0M797AM8%2$[%W!Y]:-C3)6>>H MM*5SG82A0B;L2Y;J!/!40HZ9R=93V7^DHJL:BR$@L[.HNP-+G22Q_$BTA'PV MNYOSY1-D,44C.5C,MEX\:R%H13Z_-ZI85;Q@K>LOMJ6MJU3G$,!JI);AVRLW M']0O,2SQ?__G_P%02P,$% @ ?7ND5A>;3!K -@ 1$P! !8 !I8G M M,C R,S S,S%X97@Q,#$N:'1M[7U9K_=?W+OW\O)E\N/ESS\E#XY/ M3I-+J\K:-*8J57'OWL7K;Y)OYDVS?';OWGJ]/E[?/Z[L[-[ENWOXJ ?WBJJJ M]7'>Y-]\_QU^ _]JE7__O[[[CZ.CY&65M0M=-DEFM6ITGK2U*6?)K[FN/R1' M1W+5BVJYL68V;Y*SD[/[R:^5_6!6BG]O3%/H[]USOKO'G[^[1R_Y;E+EF^^_ MR\TJ,?E_?V.R2::>G&69>IP]?'#VX.3ITR?3R>G)]"Q_].#!29[_OU,8Y#VX MG.^IFTVA__N;A2F/YAK?_^SQV;+Y=FWR9O[L].3D/[^AZ[[_;EJ5#;S,PLW\ M)S]C\*1&?VR.5&%FY;,,1JOM-WRO^SVKBLH^^]L)_?P4QT$YA2NTFP*,^__GB M]7%R^[0X^GK^P,5F!2-4VUX#?LRCPN?G[[TYO_@0X'195Y M\D[7#9V:G]4FN9_2Z;CA]$^.^POP6ULW9KKIK,#)\?U'7V -'HQN[N7-]_3"IU^>Y@F M.9&)JI-JFIPOK2F2TX=$+Z>XF'JWU_)B.M598U8Z>0G3V(T%!?I;J%PGDPV= M1+6H0&R]*N$\%@6L]//6%#E*LK>VRMNLJ5/X,3M.$Y6\U(5:*ZL3F.I29ILF M<[7"RTU3)[ ]96:6JH#-FIH,1J^:Y,'3A\G[JFWFR8\PGN1] ^35I,G[UC0Z M>7B2@HPLVL6DA1>]F9LJ>7#_[/3A'NSMBVJQ5.5F-S85=_*?>CJU>I/\>IQ< MY+!/>;T'JWCQ466KTP-;(4(/5%V[3 9;)JI4M5 N>9:ZL-W=DH>&3.)\+ MI3$S)HJF>BD MT#-@E]::N0+9F+>6B!;N>56"N0JD?JGM@F[4*@,AVDYJ M_7N+&B7]< #4F.LI4CX0??(>7PU'YPR('NCVD%\?7EG/X1C@@="T;JQ?O9@; M/8TN>D,BW-)+WUJ-)Q)>)].3J? QZS[+7?G^-H96"$VY:J M/U;8$3YS+^;*6-@I-Y#G%0@Z_/#26'A*9>O>$/= !M(<=D+^)2\_E?+PAVEE MD[I*"E0D88M@QX!<>MN KSA]_&V=9&II0-6$*5;9AP2UR<8J- N!&E12*G;. MP(9G,!3BR?IC-E?EK'>(F"[:6B=6JQKNF10:V7-E@>@4ZK@;I/!2@QI:*[M! M$5!6"P-OT#T2P_%;?:0+.39PMTH6>C$!ZH_)['/5@QUCZV=[P]:)PF '=H6] M7P9.XD[';G(47+@=8"BX=X'U)S3 A#P@P2/B91&I8?"Z*@[X!=JR $X)7!X&B=L$)$3,DI2#I:U6)N]J M%P_Q0(SOI6J!#\($,U*WK2[U6K.._GS#N!>@."$+X%-MY:E'V[$0.S0#_BD"H7>S<>BZLB^YO5 3$CL3"UU2)I@##H M=?3_.4@LM.9 1,"PR(57-[CV?AG\\GJ)XR5Z58G^I!95RV2++&>".!%2'?'8!/<$/AZTS:4FW0[. M#P;?Z'Y_!X7KIE-E!DZN,3]<<)#0:S7HDLX] B^ ]\#?BP2>ULRG+:KI@55M M8VYE@]8DR'R+EDQCG';5@B$!TJ)A(V'"[E)+3S%-HS6)4E3JI]Y X7!L\@^, MDDB0%W]XKXH5/^7<+C9I]^*?@=!:LBRV,LT8B.0X_S.K@9Z )@;0)'>70WV$ M6]2DAKAV M;IO>?KX%$BV!PN=FZ7G+C\JND'Q^8?L:2?"?%9RRY 7%/XF"?JP8!_>^ 1K4 M0O3X "!\H'SD(:9L26_0Y0S/$NHP57F$RHUN# <&EA+\P],3V("CT'<:OK\@ M %'RW#''. 3"40_VU\61/0I+?"BK=:'SF1[A3"F9LN*B<$Q)#@@^PC&0.CHM MPH#G\'Y@"PTH5>SUX$F@&R'F2^BM+A)&/Z&0@)$NR7?BN?SNNZ_&UG\7?%A( M9Y\>/(,];Q 4HS\N=8;[-2*PUJ8HMM#N5H(<<8K@M>SKPL&@C&>+C*5Y+$VO MI5W2!:*0H2J0U\_F8UJV1^6 [&;!YXF-)B;.UWZD!G&HO[^)R0?,#VY0W"+7Y#>_923(H,KD?S\Z.4EAC9*#G=8-HHW?!94@1=WK-YV18T?E>*!1L,0(@5QS MN,,9M;Q)GI.]\(92!W&R^UK:^"QV85.&[L,_?CJ=(J.!<1L\@.CCZ)K98^#"=:S3;*V!S2!31]Z!HS*Q:H.?44PX\D_& (_[0&Y[_+-ZD?7D?&=D85[X]3<"0WH3Q)_>,)*2E3+1TX8 M:NH"*02%G*>-1D<9;"H7_D9S6>75$NT$,*7Q1-''%/XT!.)E+U796#-I&SI8 MSN9V3T;O'[!R]\8ZF<$/%HWO#MO'$U!/-V[V8#048*(37(R8!5H@"%+XO366 MS(Z:K:_^W.$\6[#^5DJ,$ QX)!3I@8%,J]8F!P\.D[76'\@YR-"&&_(!_]!E M!8,#>^@X>5TU>#DZ#G(W=E@!/:O@4Q<+AZNWJ'(XGH0R\-'[[?N!8X M%89P?U\8PL5'Y,OH-C!@3]OZUK.MCI-?EB1_= TC\7"2V+S.)4TU\@=?PQN< MIFSC68JDC&@7WT-ZM0=Q>N>$YG5"YT/66ALD6W@S'"]QR>$1\9ZZ@^ $)RA2 M!8>\-Y+#V+OO83[$IQBR[%X>'!O*Y))]4#BM")EPA.<'5$ M7,JQ!*<'9#IO$6 ;B_RA A(I 1@EO1O>D(=[XPVY%"8,7]\^9G7H$XQ0F4[7 MO EPC,]"$# "Q9L:6_NX/.?*2-)-E<$1^;-38KZZ8&X42]>JF=]R.DP'!BK$ MDHO&E./X D#S+W#;?C5/;D0GIE:L ]\^H\J%J:SG)IN/*AF$R4)!:HT&88O1 MM3"!X^0?P+B6K5U6M1Z)JJ2[[;'9C9UPV'U>[X4&:T$;TDD0 *$B[TCNQRN* MGS-3PJ9%>J"W/]2&77 NXC-4E$9?P78+ <7*R/526<94&'28BF,$KS1C5T9: MU1!R/8Y1 R7/@P1S#OXMYYL:>1H9KJ@3%XDI"E194Z%) >G M9PX;?K">:]HJN(D0,_!$F="A"XRB7(^^3^X_>G@$-TON!0?L=_-\."W]-D]' MNJ-K,VTM;OSM+@V#0(&^0&6L/;#30;L(#YIY/WK@=@,E0%A#W4ZR0B&"C4ZX MFE2,^84G!@'1R]S.5(F$SZ%Q;[I%/G[@!VO$O<))P) Z#!44B*FA7W*]U*0Z M), ET%3#)'&,K&>(;!7R@W%1IF#7T4I(5!)AN@FJ/UFW\4SA#F)1HX]UHT40 M6>$@ F#'UBY)$7\?2+?;QEM]>?ET^NCDV^&_9]V%^(KYN@[S%; F7'/A-Y%! MP8'1'Q!O6J2'A M6E (^>]_>_#X6]3N1/C"MZ0<% @?A>_Y%:9VCMS\JK,F>-D*Y*XM33WG"Q*L 18SN:XS:R::TY8FJC8!$4SX$#^Z";Q+3\6#09[SN+ MD5>(;/1EXP41\QO>+#*P5X<)!QKA:K17486"ZP;QF('+Y8]L@7"]/W?)W12P M#!1-@J(^72_1)RVW+,7G+/"=$?(/]D7(_RHI,;HC' M3+SU-C)F/[MVXAKHC M:S_BGL=%ID"K=?XU6>YN.%:OT.V>^H/.7CD$?=1^*YTEW]<+?9D4ME-7C*'E M4K"6G6$(@L 1.14!,SS@E[KG)=LJ*,- 8[I"-9,S%Z^AKA%QS^4?ZV%%DROC MX4'E1?I$?_M@)=D54 <#085IYP9>U+J4_?&WQ>AX>,"\UI7]$!)V)@A0LYKE MR<,3,$@*3.C#&:*!0)$:)N#&WW1C]3-B,&-95'VWE3B!!D0YU#QSW8#>YZ): M(CJS)#,V:Q<(S".LKNB!X@>#-42X8L0M',77YB,2_*.N9ACA)SI'F Y:YTW' MG%&S-C76!\(H3J',8OQ:]%L)-XU&TN4=Y!>G/"H#KUU5&?FVR),U1%H=)Z^Z M916#1LP<(/+\K4COOVY9^CY%0E6%3J8M,1 MW8@K&KG"LQ16CM\877IGE)Y'^Z+TO).R([A/3G_?$6$LBM#IDQ.B0&&"4J+K MT]6C<8XZKN%W2^NMA^N"P>"^3;%0&TIQ1IY;5X5&WU%F-6,Z%^J#C@H<^X)H MR++Q9L<4X73>'=7_\;Z<@HM.I;P=XV=JZE5@6A:([.3JA"#-JE-7TCD!P'^T-!/>M!QHA MN>P*(/>N,,Z]P<&>4]I.GIQ3&:9;SL)Z)7QK)4:VZLOT:\W3J3 U.ZI$CV5B M1&8JW!?;GB#B*>T5%(>O*!+^]_Y7%,DGK6-;4EI,,[=4?20&>$>4W2D#M"WR MI^2@XF5MV2+Z*N3:T7<^<28?21(ZF'H42,\-5/?RDN+LF[&PX2'IR.1AR!09 MV[[>FIL;&;H=ASLL>,&: &HQW82U. (="E[7R:/C^W0"'XLJ MFSI/XQ^08RB/1CS#/@*5>F3WP'#N^8.VE@*00S]:U*MW\'P%PG"X/$Y]^]'> MS4#%;I&BXW>?G 36.7Z/_YA1] 74X2^E$(]20V>M3HEAQWJ>5"Z3#'-'UUNR M5JV>M5A;>+0F3<<#3)D)XE1%\8/CT1IDX>F3PV0![YSO0S6[Z+C05';AL$1L MJ*]II&,U5LUTX-&F:$(=?.7PZ[HZHIH$W@_NWJ&PK5+)]>Q>P"!AWZ7D9V]M MQ+XP9=UHE5/A.,I!.>+R!V3>NH./OI _1/I)P1HT* M'?CP(M_%JU[O&![=)!11;W+A_D+(>EO?)@Q HW' M;4*X!2GJV5A#:!!N[Q8YF,110*US3%VC[KT] 710ELO5NNJ>/1/AY9<(L?2% MZZE+WJ4W!04/;, M7*==,9>I0!>8&&F$8W'B123VT!SU^.J!1));%B!3S++P0K\CD+R+F[J8=RJ0 M>)-%;!("U-#H/3($G6E&@ZES\.BDF9-'+7:HC;LO;^30H$8KHAYC\2$=SXI M_.+C(Z0:LX.8$U!84II[<3+K]>4,?*^T@61V4!\$"-8W1 A*H."<';0J U$M M2>A1/27GZ85A97,2T597=J9*\R^Q3Q8:=LNFA*:I"I/[7 37M08H!I0J\BT= M8OH*XG,*3A8IW2=2! A\9P4Y%FZJ.7/W+35@Z""58QR%M$!_5:XT5F6O#ZGP M-14AH 8-U=K5MS^(]"I<+VHK.$W>M4"!I_?SH_N1I'H?^I)>2%_2Y)R3;4Z? MWG] OF*0$7!]3B^,^IA:+06V\/D/'OZGGYI'*BTFE**\JNB2)2B$O@%I])R> M&1[[MJGGB*^"Y[UTKK$I5EWIM\FEW G8+%5D+>>B4"-6;@F2&PS9Y))NP:=H M9E:$)F608E.Y;AV>6@0S^!SC39UWOY7>1G&/'3X-E 99DU*+J*Z\.SJ'(3-< M9,@])MIW:LU!#5M[=VYO'TFN1?>H];Q*UIJZ%[GF?RB]XXZPHX^G$H"D#JP1 MP;AM_*X;4AX/W[_SY@/OF@R)3[>7D[!E\'18_'BYJV!WI*)PCXW2I=T0OI>S M\6M:;N>=A?]/-L-)P> 7M2ZXQZ$;ELO(C9M*!10B]EU7*U&*.C>I[CK*^;QB MB#C" !]]<1A,$Y\AEYO:Q2:W\R!GN]BO\5'Y]\'7^.@GK6.W)9$8PB1>ZUHW M V9.-@=U39_4!DP;R[AL]4%+6VHX8 C1EDS[3Q6!U*&^Y;H6J,:E=)1WVCW+ M4]P!IZRH4KB^R"* !;?8CHG$[Z93<7)KU56!;C06H=WC_(#P_NTPW^NP?XW=EAT,!OK+.D;HS I[$S&>J?#M5VF ;!N=,D,Z#[ MW:&>?X+:9/7&'5F&L MFTNY#<\)%D' 2<\P]S'HPRC\UB65.[4=)7,!%/4>'1IW!E2P/R4I0H<@T9G? MA3SB<=OZ=E$'_9K5UWH-7'4%>]V\.F!;Q^@>'3MP;5 FZ^N #U2]@,:6DP<9 M4U\^4(V;:_$V:'UOQ=R@-9X!J5>4_H1U;A076* T'>_HIDH&086OJ#S<>(I< MC?"*Y.#QZ#@BST,G_K#S\=9WO#([P),/7;D^&1*G((D- M9XG U!?-.G2:&A MF*"U+$K7S3Q+0UK45&:'/]ILHQ[,]L M%& $YWBJ#=O?%H?B.,ZXOS/UD0NUJDSN.I#F53MI4NZ!*&@J>CJE+0P?Y)"! M3BW+HWA!@%;^^_P5I$U]K9-P, MRBB)*T].?KAEM#S[J;T?W7HC*3*WEG%407ZO>[DY'71O,M;@D=SQKE0M]5H' M33PJAS<251_I96 CC_Z!VFW^?1DEX5.P%93#'/8D8=VB.E>!L57,%[)2C9HA9$ M&^FCP&.D0,$&3D$9*^A=;K_3P3P&!5" >U*W[5+@X M+]6EZ( 1.JT#.[K/@**]NR'4MJ%N0S75=$$$WXT0#OW&1GV[B.H!UU)+(^Z[ MB8,#2O>X2ANM%MB"A/"_IQXQN=N\6Q9N!_AU#ZIR70R* ML]7B_* K=DN>7;=VY:K7=1P=]KJ\?=<*JY^X/ZC+>!,JC8 Y$RVX!HT5GC/- M_!\/!$EQ4Y31,W5H(5GVHI8AOJ3(T^LQX\-*J:=L7D7!@V#3 MQ?!UV-Y9A$V, M9EUH=!5SS:O ?P@*W."Z\CJC ,PRO6P&3(JNY$X7KG$AMDRS89Z?N(W89L:5 M6LZ'C!"NGANK981*%CH:_Y73MP1#8"1CYE(IHVJZJF: EDVX3^*GCQX+$R'S M--2L-<7!DAEOW<:YZ/K-AAS5CZ,&08Z,4C?&+@7$HR49%08E=_H@D2@Q$25/ M=+/6NAS(G1"#-5\Q1.[?AU\Q1)^TCN(R1]H&73FO;)TFOU5 E?BQ:2V!!ZWT MK(%?CY/S\@8GNH^_0TW<-UGM:-^G&"<#50EL7GEL'IB(5&SHR\$2?L$PZE,7 M1KV#>M;>5"= /8N2V1IS^VK6956A6)5WX%G^AI7J%T:90*Y(A^Q:%9L='/S M**=]4+Q.K&@4%OA&9,E0Y3^W*_M?HG#2)*U7. M:DTE DO@'?!AB;Z^KW90ZPP?OQ^$634J2NVZF?4CF(ARP;; M==3TI'I.J0 :C/6JQM[/*7REBQ6]:0$41R(!C'.L=HQ1,JS5K@3 1PA2IU2* M*'&KPPL0YF7]>P.1A#P#7 S"L6#B@BK;*2;262XV2QXIPE!PMZ1>'JS;077A<32G[M*)I"E X5[IXK#?2+;G6S!1,?T-HSD04EDRVH9GT9O! MR 32A)\F"3G5L.)/3@> G5T1H?2>S$_AS EZ!(UZ['VBCM-W$LQ2G7:/!\! M#ZER9RP%&['8*Z MFI&47+R2(0Z@(V#[3C?%=QI8V@7<"[-^[NC,(S*8G5[1,MV19MI72<[Z.< # M^AYQ$M$ND?TE)WIL=%<**)9*,)+Z W!,+H'.E"'B*E-HBB2X(F$\ MRLQ)X94>-N&6PZ!\!4J<'26_N&4BEQUB1= P!K6.$".((*-8-*;;<@IX04DZ M=T;1VB?$YI1M6'7;?7S'BY^SC/\<1Y?D&G%!^DC%B-L),+>\IJF =_:,JQKP M]:HM4,O XL0@\(1;H^]A!5* -"L2E2C?#&=J;Y)XY6%6H8/?013_I0#>X;AN M@(U$)2.PHRBD@M=WW#3V6)#::6Q.-V\Z>1B4$.9[$<(;\PIY(YS>&9:NFBIB M>3=L;B7)]9UR_>,=KZ@&GN:,N.';*9>J4&MLL 5**/OR%#4#H^T11@//^0U( MI,ZYO1E7FY^A>5A*OV/72&#CS,ELXU,'8!NK60F4FF,(85GI4G$N8RCI56K< M.RII7:$$H6;$VWHS$+H.U@!Y:MW525@TP^YBP7=@@[4NIOY"\L%@%7H69(<4 M2G-UP,8+9Y),HA@VW0T+9%9*@M3V0U 914L*)04X_Q_3EN%<$2^^FB8Q"+ST M8BBBB)X)@IM[18.SP_%##LHD+>MTJFTGVS+0%=541X5\"&0-^$BG8=&Y[T)5 M>Q#D@:^Q7Z:4U'CA%.PW"+VHEZ2BPMKKFH-#F;;+1@P9K#;'G4X6<"#+7*5$ MI6W#.7P?ZK K5 PB^MD5C4!.(IE4])*42)2R*6"&>(?W;(-A41AN %RC\NTU M>M(A^2"":@KK,N.&&F7LZLRKK.7@?S=3D>R5TDUZ*U4$JW5;'P^I7,'/@W&T MO$_+JJZU- BT4;/5* :+^R7&&G)RUEF E5^?8[[C =7QM=R=""MUZ.%0:]AI MY]$3(>P-,"(GMHZ&F=YIXD&/0>H69B&QLQ #Y^=T8;7]727S@TB]#O1?=Q/] MM;CC&_9ETY&@OI,P#TKPEX8MU"^FD4WPSSH$([7%9K@:C5/G :AC%T ='59_ MBJ>&+&L8/M(N_R6FL&.[S+W0"A9K/Z5T* JYX&6JX7GQ'ZXEK_P*IS>G?'I@ M0_7-F<9=FP//[!'UN'DY M7M@'E4BL7Y%N9Z%?0RS\[Z.O(99/2]/VZI]#Q'">;T\X&W:E<2()_!U*;033 MQ#6#:"? ='SY-'9\\474/='5=+L1"$OZ78DJ!I9)@,YTO"+W[TYCEKU)E\#8 MRDM3H\^?G4M["&+99MN/A0]""G*W4ZD1A921I,%7T7$S MP!X 359LZ4^I%9]L2@YRR9!6X6+:=F+@HSR2%(98G1W7F'/M!'L]EO1#3#MZ MWMWAKGO3\?95^5M;,A6_H[[>N^12O3)VW0$Z(X'5FD*70%=#Q"S:$,$IYL+9 MGA5H9]$MV:W1A*):5T=-?%R!6+^/89$1YAQAT2"[AB/&YZ;*6'$_^K'T(RTX M!.=J (8NI?8H>;.W8-/6\[*<)OS0S@0A7O&R K$,T?GGY^'7X8!46#$%&EB*W5U M$211X$,DK10A#IQ=P'RH4# Y"T \+DKI9]1?%:LPW9,BTNB(IK][(YXS#&*< M@.^,4-FCCJ([X2@\3EZA2C])#AH7O@(YJ7+9])\3CJ2LXW3IRIMKF/980 M?^2V-PMT^XY _CC]S7-\.#= A',,'(9\HYE&G]=R#HR@SD R26VAB)^Y7'_* MY.Y&!,3U?V7<24[NU(B3_4I6C-VAXO'ZH6(EK?Y(NQ"CGI73LVZ(FVP1Z2(N MYV9B^EDQ4O$F,&L?57&=9MJB@&LG8X7[L:9B.M/:?%(H1!PT!;LE> ^ MIU*06S6LI X3UKU\IXT9YE1QG70*&5.*?3[HJ)92,W &XE!B@8/3D9"L/P>F MC$B/YX<@'69 ?:Z,+QIT.,81 +*'>8^X83JST886C!,2Y*[M!;8$.S&6"K55 M3:K6)7E"4^I;49542+NNILHZT1BHB QWWI=A!8+NQG21T"'0*"XYEZ3M 1M^ MQDZ%(%BE_I@58-VOQ"\8SPGQGBB?';8C(B\!3H_$0VD"&'+-Q68O^U85F> ? MM%Y*3892RCL1(%$07H*GV(/J&>]XI+MQ^EV]&G;\(FA."EEWZP'Z.M2O(@;- M@!KJSP97,6Y.X'+=2_UN^>J?M&V1L>M#L9<$B>6M](HKZ8V5N* \^8DSJNFC MCT-TH$=!-8$%I(S^@GMR.[.ZUV;A:Q"7_WV\'T'2(FO,[*/A?NRP=Q\ DFA44?6E74[8&=2_' MPD4$8R L3$#>?:-I-M6,GQ0R6%W90N3_Z7;468E-CSBS B_@C]/K9$]'RJ#Q M[Y: ^,COK5FI D4*S;"?X$JBV:[(4;B6T0L= M&!71/AO_:DE*(J>'8S(<#I8@QJJ9BZAR,&>"IZ+=@"TU.%5(SAAZ%*B@'@6A M*_[_2&'>_.0]A)UT4Z$T)HEU$CZ]FE""?H^;3&604NJ'D;$NL.D\ZPC" MBVL##L6LJ*+[["D)#2CK% :K=]I>W['^F4.\.H1*;@NUY*\_2N:&$@> M/QK+'>M]L ]=S"X!(C0RRJKEA@5 H=8>E?<+, 6X['TC\(>XKL@U6MZ5(;Q8 MCZ3&2Z'N3U>E18)FGKNAN P+A\:UJW#59!$="";-FL"-Y./E*SC1+M/RZ M]?LD(!A8C]Z.=1<3[P3>%XH34Q/G%;"6E#MA31&MRT6\" L[L!H](Z[_NE63 M@%H^9,778I6C3BA;,CY@'!C=E+=RNU"G@GCBK0GQ(^RVU&O@]AC07J%R(9H& MNM&:;2M9KU*8&'LGD[; MDOY,0SXNQ5O1'>8.V0W \7Y17;%)57B\D""LU4)QGB<\%>7DE4E#X7WTA4'A;FNC&U"R^<(MJ%YCI$7;7IC M1]J="4 ]V9< U#N0$I;.M=,%WHK3Z':C[F]Z]0-&R7%[:X9K26%7['=CA_#0C9>(C1!@K!T8I*ME2T>7G-:IY"K2W4>^ M5F@!,J9:1ADR^*?&$72H*18>KD0 MLN0"J.V*^?RIH,M;+(+[9(^*X(:"41YL$1'E+D$P?7$KIJ:ULE:-6/5%$4W4@ M\A00GZ%ZOH@\BYJO=>=@N)2&$@2\ Q;&&>'T=)=@E?JH#=7:P1YVW.F<'M,I MV[N)T2[2+(=T?@G"9=3_-R-![V"%(ZX&6DX\V&,KRDAS%\6[TBR(DN'CU?;K MMYU1_)L%#I[L1^!@=WGUT[WAU3^;&H6R*G75[@_.9Y?5Z[TIGGP>,((_J?5M M"^4.4_?!8\[FN-[B4XW%^@O&9=9)466^("],&V[NH]4X>PETYC7M38O,<>P;M0 O.WDE$/XXDZ+FN1EA-B?R) M.G;/4/D7J@_DU,.@0DKXS.-2>B=H+"W2]P]F?4.#=%%,'3!@70!':J=,'0L(Q6!F'^WUJ3!D M!H_!72Z?U2LSF>L"XR ;2B>3#WPDYH2.)].L7YH20S4+4S.POG\?2BE#)N!4 M9;6ARHZ8 M5UIZ12OUP>#7?43,ELV7XVEFKT$;&)D0DG%-5+2-@(7PSDY<$?.W3=VXJS(-W(2XT4)Z")"SRW6Q M]/" %.L<-5B]8T];+AT=34R^"3.>M*2BH]-:G>+\JLV.TQ[;=_.#IP^0]Z!#SY$=X.VP)G!F@DO-KGSIBFY#\8/7-4#MJ(M:UWL MX1PO!T&6*ZCI7*J.\EFB8L.E._4"[+V**'I(L#\FTV]IO:(2ORQMW&( 6Q%? M%WO77.HI8@1*4\\#ZIOOB\1-U\!!50EU_C21TG_DD72B#DT6;B^*T66_$8/4 M,0*C$UA1N..=4:'VJ-Q+U,YXU?8*ZP[@_MSJ3[>MM9_.>\F\*]E M>*%:*G?##(TY1^O;$H\6_PI7J",]H*\%R!_GVX.8NDJX$_8VS34&+:(N MT32$;MHMN5AF4JC_SE#PWJ3I<^-Z+I=V^\1KRA5L:"XUC]O2YS9+.;=I-T=] M:-G&%>M)HA-_C!\Z_DA?Y-:C5:!F"_HDYXZVQUX.Y#C=$Y[- S MLJ[8Y6R2[-V"L"X+WAQW8*;*5LAD,QN!$A,C]'#?7F5X)",1!*[# MWW#(3,HC<.,Q1$X;+37/0A"Z$U[@*$)9B>\FY"VXJOVN5Q5*8^R'T-QMS>[T M9%>(\_3A-6:SHFR7VZ?-J3(%=1#K^EI/@6M!R0^VGPTJ M$^(7]= 1477#3I7: $"APMORX.N>% V*'WIW#N;.P)VN.YCO6[LRJXH:--W^ MZ8R@#JX_40^6.H(VXE/%]%C3=/A4#&I@]!&R@WSM\23_Z"6]G 17UI)KS77: M+S7S2-!UO SD:XMFU[URI%=J-/T[ MH_/=D=).BU/HE<^WJ(#TZ>GA.?+ SN MT%=@Z/X 0Z]/#D=*X&)O7#6TSVJ,9. MU2;DV4AZW1;13C6"V"DO'2[0A[18 M-J1?(*@ >!1Z@MXARK]%&=RG-L<7SQK#8= L5!16\RX5%;@5 >PA 6S M4AB!I$T.'N^*7G E2A7W4!8>ME ?S:)=.!ZW1)[:-)S/O T;)-JW#PQ0\3%W M:'B0N"24!(K*/&4X8)/@NJ(VP;[:I==))MB%AP((C@-'91D:]3$-N78"P==2X474,X MA[O91>:(,3@VLF03-F# KAJW;VU'C?%R@G[)42^K\NCW%DB+(&!80ILF$9

    GH M*O>*X8Z &[V_0!K*R\"B4:=N-,.?NHOJKH-Q8*,0*5 >=9V[>M+^/01<')3( MIZ(A1%]7M-MFKAF6EPO#PSTN0?OJE>5:(:BX;MG9 W5X<'9X\)S38DOG0L7N M+[Z)JXHHS-0Q@=V LK:2E M"5XSB:>4PW'1-I3#2QBGP+KG=RQY7E-/C6"4O MF%:9XRI2&5PKBSWT\/4N@9$NZ6-(T%9\U\:&UD8.JG-Q^3@T>'1 M@1 M]1TU58Z;@PWF\U CR#V$9G2S8]3W,/12%Z_.N\XU-J_?_6I@+W4!\OHM+=LN M5 /SBPRK[,O9#7<]'G8J91_&M,0H[!!$0$6S:V*JDH1R&HX/07X9FF,6DQ=C.$.Y$ M;RO:Q9+>Y;JT8E\I!BQMF72[#772?[<_MEO2F$HTC?W:$LG726"/(F<74G_G MSFAB7R@1XDMH8F.BQ@MV*>[/5A:3 NO>GB:=^I15M2MYR/73:J;\(ZH?Y"C/ MHT)5'0R7484_]4(@*F;3>>?PZ5VM,N+@Y+>E$I,J]5A ,\T&1&Q'M#3; D M-C1\-"JZTL)85& .^^94?2L++^LZC-"QTU.(N56[ 4 MNLR!+Q!S<):\,W@JSXU&=99Q@^@:>^BFF@BZY&/ZSJC&QQ?TVM,3GQG89I/= MB)4\/?WV':E_.=M2;S&1[)7KND0]?'\">DR>%ZK\ )??'^:0;64&_\:L^'3G M67&?5'/'NXLT_;M.:3,?RN\FL\Y#2?M ^U(?R M:4HO@8%]?IW@L]/;W(WWE^<__73Q,GG^RZN?7KYZ_4/R]MV;E[^\N'R?)J]> MO]CU67VJ%V/;N:8.DC7]F_P,"JG217)Y#'\6A;;;;KI-PD6V\)RS9I-MXQM, MY,I*7RU?_YV+'1_^IE)K(?S%E_E-/IU9ODE^/DXM\ M#99ZO94T(ZEQ&^0Y'.E?@X_XJIS$RLG9=N7DWJ3*-_"_>;,HOO__4$L#!!0 M ( 'U[I%;@[S/X3 @ &TL 6 :6)P+3(P,C,P,S,Q>&5X,S$Q+FAT M;>U:VVX;.1)]WZ_@*-B, ^C6NEB1[!B8V)Y=+SR.UW$0[-.":E9+A-G-'I(M M6?/U4T6V+K;D1%DG8]G8 49Q-V]5K,-3AV0?_G3RX?CZ/Y>G;.Q2Q2X_O3\_ M.V:56J/QN7W<:)QET M6I^VZ]J,&M=7#>JJTU!:6Z@+)RI'A_0&?X&+H[\=_E2KL1,=%REDCL4&N /! M"BNS$?LLP-ZP6JVL=:SSF9&CL6.M9JO-/FMS(R<\E#OI%!S-^SELA.?#AA_D M<*C%[.A0R F3XEU%=IJ]_6;4[_=[[:@307_8:?+>L-?IB"CN]^/6?R,TLH'5 M0QOK9@K>55*9U<9 XP\ZK7JOF[N#J11N/(B:S;]7?-6CPT1G#L-?U_!U122W@JU6SP\[5,P;(+F+(KG?+L MYZK%,-0L&)F$BE;^ 6@3FNL+>?SH[/SF[^ >[O/IP M\NGX^F.5G5T-OF#8L MZHKP\*"7N^*53I@; _L(<6&0+[#CT]MXS+,1L%]BQ[ XZK<[VP;KJCQ<+YZT>_-RW->I>FX8R-^028@8F$*2X(-Y:6_5YP@Z!6,WR?:X- MRMBOVJ0L:M;^3:@ZRZSC2F']]X54U"N[-%H4L&QIA+[QZKE*-0F$%!*)&M/CA MK+/B*PG;&N $/$ RX'*+$PT R0%0.E;1CJD[54J1' MHDAZ%M+&2ML"VQ%Q&JT"4G*C8Q#XVK(]!(8 1%J(_AVQ13K2!B'9W8,WOJE7 MDO04'B5)Q2P@E/IG1%PKP U (ENV'BBY,U"" Y&?]^&,-2C-/T)&=3L[!-&E M,M\!B+8Z- ^XG\;= $;+9[2O0ZE*R3;FA=V^"66](;#%2"&/ZL)@!TA.$VD] MY6$MR'P_I)R79+E*N 84]S@K$^D2*]62C*E0(G&B+58K*?S9@2V&5@K)C20' M9$CW/@5DU%-A*07[96E]OO8$J2V@0Z;;&M2X$"92$%:Y MU1DG2N<6<4ZBD@",N\8YF!#>D@^EDFY&R7W3L+2T/.X\I,*JN%-U193ZS'%; M.I07)D=(6R]&XE@;X0WP\G0$&6H,A^*(VD'I.OK[A8<.Y+O=+L)P)M,?#C09X 9 3.P.Y!66&8*Z#@G;=I6SS M)1N1]PU$2=E MHD?0:GM_AS#>?2$[,'^RN%@>U24_$5VN0G1)502R;U =:_)U81I'">NTL8M$ M[U]@EVDJG0/X0C(8:I025"XDVN<[V4,@(_=:XG;\EX3T?/7130*:[U=:D<7^ M@.'-(S9:O=8.(7$'-UIT $1:T5_FH$VT2XXE(#3*)+W8\$R!WU#6#5K-YUVO M,OTQY_PPZ)L 5^Y-PLG"!D[C AM:6%#:@^ LM2DV082AA*R&U&\Q[]LB17S@ M+'EGRE2R\=CLD6E]IX"V>SLARMZ)0=:H8M3!$QWBQA]*EP"KAN0GLXE6$Z , MF/%1>;9N2FZ$-%=Z!E@Z'>M B/P.?!%NWT4>;'4=?K]? M[S5[=(WO#/XOY@.7-_QU?\/?<&*]K%??[_<>+&W6HP?+OM1KMUWO]EO?O=MV MO=GL_D^]?GG$*.I_=UM;_7K_[78SV_!!"X%#:-B<9^\J[/=PQ7UQ,QYV]\QCI5_]W.]W?KJ>+E M/7L_^T'!>E*O7K^*]ILOSZD.9BO_N^%;CCO.;DDH3?*YLM4$_9BJSV/:M\12 MF>2]!LC13#K19W/[GI/'_P?7[H'K.3EU:7 +2+L=O[LZ'DM(V.DMQ 4=T;(/ MX?AB'5(-KWXWB.M[7ZWF.GRV.P@7;!-8^XYUN2*]@FXNF_ A+LO"K3?YRJ>O MY6_X$-=_$GST)U!+ P04 " !]>Z16[]S6M$P( !Y+ %@ &EB<"TR M,#(S,#,S,7AE>#,Q,BYH=&WM6FMOVS@6_;Z_@N-B.RG@EVPG3IPTP.0QLP'2 M-)NZ6^RG!25>V41H44-2=KR_?N\EY5>>TCIZ*>S MCZ?]?U^?LZ$;*7;]^>3RXI15:HW&E_9IHW'6/V/_Z'^X9)UZ,V)]PS,KG=09 M5XW&^56%58;.Y;U&8S*9U"?MNC:#1O^F05UU&DIK"W7A1.7XB)[@+W!Q_+>C MGVHU=J:38@298XD![D"PPLILP+X(L+>L5BMKG>I\:N1@Z%BKV6JS+]KS?HX:X?ZHX0ISAR.9[!]N S=K'7FX,[5N)*#K.==JH2FL^)$*VUZ;YK^WR&5U%(^DFK: M^[DO1V#9%4S8C1[Q[.>JQ3#4+!B9AHI6_A?0)C3/WTZ"R5WL1\D,9BY$+3+Z M_&XH8^E8.ZJW5BU>=IR; ?KN=(ZML-LEVQ.<;# _W/C.@\9?7'WJ_W)Y>7[& M3CY?7)Y=7/W&KF\^GGT^[7^JLHNKT_J+\^@4C).I3#BM*G8#OQ?2X&J(I^RF M4,"B-J]%G1W^CFG#HET1;A[UBZP5=D'B5:#8OTZ7BH%ILH2'[ I^L?=VS>[^X<;0R[G0B#'U12D M.,3^#(0R$QBJ7HV>/).GT7S=_/6CWYN69GV7IN&"#?D8F(&QA FN!S>4EOU> M<(.85E-\GFN#.,K8K]J,6-2L_9- =9%9QS%,@IT44E&O[-IH423.(CUD21T# M=O : M;:NH"=<(O3C@$93=EMIB<8A %40]S*: F-)F0:4SZ.P&7&>#9E1>9, M >@!B@"O!S",G(WPSDBN6,J)+@S3(TQ93H=Z:Q4R2,!:;J949<1OP;//O$^+ MSP0:@T,J+R9*>DJD0?& U3)LCI8(,&PRQ"7/;$$_B_83,%!V0@Z,I%6H,@A? M$^F&Z*#-(?$&4K\YFJ8%NCF&DLN7IN&U0+#]Q)NARQ5>F)G*#4PD-:A\G:,T\-@-UI970*;G1FS9NUK MP5MGZ_#67PG.VS?[K:A[:$M$E3*!*$*GJ._P$87M@G$#'B 8T;T.I2LDVX87=O EEO1C8?*20 M1W5AL ,DI[&TGO*P%F2^'U+."[)<)EP#BGN +5;A6.XZW!\4%]K[L.XXWY:@W-FS/= MQJ#&A3"6@K#*K4F%5 MK%1=$J4^<]R5#N6%R1'2UHN1)-%&> .\/!U AAI#(;*Q!'):,E0%I7= +RXM MF2-YOQ;\)EN#WSD/PYBKPI,511?2%/6A'&-<[ ,Z;RXE-B#? >3$UD!N3IDA MF.N@H%UW*=M\R8/(^PZBI&RNDZ0P%/JEU/E KR-M'3ZGHTGLRR;847FFPW8> M:9(BAI'"[M4N#^"54-NYSJ#R,]C'H3/"GX^2L:>,B5O M096G!_?J5Y\\14^@U?;>%F%\]Y7LP/S)XGQY5!?\1'2Y#-$%51'(OD-UK,G7 MN6D<):S3QLX3O7^ 78Y&TCF KR2#6*.4H'(AT3[?R0X"&;G7$K?C7Q+2L]5' M+Q+0?+_2BBSQ!PSOGK#1ZK:V"(E;N-&B R#2BOY=#MI$N^1$ D*C3-+S#<\$ M^"UEW:#5?-[U*M,?<\X.@[X+<.7>))PL/,!I7&!#"W-*>Q2F3*5/'AL]L2TOE5 V[Z=$&7OU"!K5#'JX(D.<>,/I4N M54/RD]E8JS%0!LSXH#Q;-R4WPBA7>@I8.AGJ0(A\!;X(MS]%'FSV0M9[=N3\ MYJDLCA%^8&HXU8KG%GJSBT,D[ESQ:4]F?L)\H\.RLU@[IT<]>D\_)O9'R5"^ M#?6 "L7E*_R#@WJWV:6W^,[@?S$;N'S!7_LC1M'!CYB";K2_4;<-'[00.(2&S7GVOM*N MS!J42Z?7RN]8M/JVGU;3?70$8/SU'.._(CFC;>%J9BZ]?[ICN+J>R:L/?,HZ M5?_9SI_OUK/&ZV3Z@X+UK%Z]?1/M-5^?4QW,5OYW_5..%5\WY),FN5S9:'Y^ M3-67,>L;0JG,\5X"Y&@F'>BSF7TOR>/_8VOKL/62G#J_@Z2@PUCV+YD NS:X M'Z2MC]]JG0XEI.S7N;3^&,XRUA'6\%+X :5][PO67(=/>'OA;=L8UKYI7:Q/ M+Z>;BR8\QD5:N/4FW_@,MOP-'^7ZSX./_P=02P,$% @ ?7ND5BB[;%@. M!0 IQD !8 !I8G M,C R,S S,S%X97@S,C$N:'1M[5E;4^,V%'[OKS@; MIBP[@^\)P4Y@9DG8E@[+LA"&Z5-'MN18@V-Y99F0_OH>R0D+9&'3%A;H- ^> MV-(Y^KYSE>S^F^&GP>CWXWW(U"2'X[.]PX,!M"S'.0\&CC,<#>'7T<=#:-NN M!R-)BHHK+@J2.\[^40M:F5)EY#C3Z=2>!K:08V=TXFA5;2<7HF(V5;2UV]=/ M\,H(W?VI_\:R8"B2>L(*!8ED1#$*=<6+,9Q35EV 9[?;7TR-62B8\ MGT5O1WS"*CAB4S@1$U*\W:S0#5;%)$^;B17_DR$FA&=NIPWD+NK)><$6%#Q? M@]Z_RGC,%02^[=U&?),XD6/DKD2)4JCV!O8$C,H3HK,*3MB7FDO,AG@&)W7. MP N(Y;4WXG<@)'@=VMS]?)1DIQ@S>)PIPV N# M-I""OG@JR$&[9GW-VW)[7M!Q-?I!1DJ$!%N!OAOIR@/>-C2T7SRELX+KBGNJ ML/!66&/I_9#OI,TS 1YA+"6W$J5B"E(A508QR\44>(5_= .IZGC"E:;'"TA$ M433N@RG'N3HF#XI*D3S'"7LUSZF6.9:"UHFJL(04B0V?:R+1.3FF("MQ#4#Q M#T).P'.MSWI5H^?+]:P220D*K*"H]".12=8$2^!M-FUK0\]?7]OV?;?7J#0W M7N_=M;:REB5V2QU!B9B4^4SC,IB7RT#S9%$+8,5#'9:# M:>4B_$S1]!M+4\EF<&[#/IT22='QFLFQ9!6G>D^B33'(.$O1E&A6Q2\9?$HQ M^)C_;1;/M3O:#+IPS),XK7/,59-#KIIJZ,ZP]V!O>STN]5^D2WF!=7/2= *L\8J@ MI"GXZH:_"3?%&9-:NW93#V/. HHA&)*CXZN2F8S54JBF$CFGYBR2\H(4B9Z$ MCZDY\)B:@")UWH2)P*IO %0K%8250J%KW*Q(C 5V/AP+29FTT. Y*2L6+?[T M**_*G,PB7ABS&:'>7%DLE!*32!]7+G492D@^WW:8L&J&YR>9,+2[;E M8!1=+#P_Y]CFG.,HNCS6M;?"[KVCKNW=._:0UDY@=T+_T=4&MNMV_I'6AU?T MO/#1L?JA'6ZO9EG'.*UQ'(9&59)BIQ6T%@+S!(K\\@J\VX<>G5-WHZ,)C!]? M:J@S[W8GG+/_]\0PNYZ)U47HOG@$4F6$PUCZ0O URPVNV[W MJPB),95KM2SRG8\&\VOS"<-\3-G]"U!+ P04 " !]>Z16MJ=']AH% #( M&0 %@ &EB<"TR,#(S,#,S,7AE>#,R,BYH=&WM66U3XS80_MY?L1>F'#># MW^* $R?'S)%P+3.\'83>]%-'L>18@V+Y;)F0_OJNI(0#V]*N M]ME]=E>*>V\&Q_WA[R=[D*F)@)/SW8/]/C0WE$#&IE21>QYT^G4G8:N+,?>\-33JEJ>D+)B+E6TL=/3;_#* M"-WYJ??&<6 @DWK"<@5)R8AB%.J*YV/X3%EU 8XSG]67Q:SDXTQ!TV^&\%F6 M%_R2V''%E6 ["ST]SS[W/+-(;R3I;*='^25P^K[!:=@)V78G3:,T;(512$@4 M!4T_:;9;[:A)PS\"--+#Z5:F4C/!WC/6TTWVBI4=\JIRN+ ]W]N MF*D[O53F"M6C5+RA2[4@X1?)S'!E+#BBZ&$RED&:_YYM?5(TY*)ES, MXK=#/F$5'+$IG,H)R=]N5A@&IV(E3^W$BO_)T"8TSSQ.K- MWKO*^(@K")MN\[;%-X&3L#U!9[/RR8UO?=/X_:.SX8>#@[T! M[)[O'PSVCWZ!D]/CP7E_>+8)^T=]]]4AZK-2\90G1&<5G+(O-2\Q&T8S.*T% M@R D3M#:&+T#64*P1>W#O2A?"BJ9@LH8G+&D+K%>H.*]JR0C^9C!AT0!#@>= ML 4DIR\>"F+0H5E?"[;];A!N^=KZ?D8*- FV0_TTU)4'@C98V"\>TGG.=<4] M4UAX*ZRQ]'Z3[Z3-,QD\1"XEMQ*E8@I26:H,1DS(*? *;W0#J>K1A"L-C^>0 MR#RWX8,IQ[F:D_MYI8@0.&&WYH)JF9-2TCI1%9:0/''A4TU*#([ %&0%K@$H M_E&6$PA\YY->U>CYN&[C-IL,@'*D+X7N9RBCC%;7]MJ M=U?N8P6A>D5'L%3%X?:BL_%Z#_>[U!+;YX@*K M0\ISK*43VQVP[BN"DJ8)J!OQ)MP4;$QM'=I-/8R9"RB&QF!:XT#!3-YJ*513 M2<&I.9^DU[F/KZDY!)G*@"*UL#21V F, =5*96$E*D0FS(J,L.C.AT>RI*QT MT.&"%!6+%S==RJM"D%G,<^,V(]2=*QM)I>0DUD>82UV,$B+F6Q%#*SL\/]UT M.F[D1_J H_!4H^ABX?G9QS5G'T_1Y;'(W>Y$]X[Z;G#OV$-:6X';WKY?]+%J M0]?WMQZE]>$5@Z#S%"Z(@O9*:CT3-!LXI$95D/Q](VPL!.8)%#>+*PAN'X1T M3MUEAR7&CZ\TYH ]T)EWNQ_.T?]S8)A=SX3JD,R@9;>&_SZL9XW7[NR)@O6L MJ&S;_\^!:D7=REQA:4-\"^N*]<37D!LK^>=IIKX.KZ](I7F/-UN LW4VQ!8 MV/>:$/_/K1?'K=<$ZC&'\F6&>68KO/(?$M_X-_^&S)T/ H6T7T3BD@FB+5WZ M1/ UI\T6W/\J0D:8V+5:%OG.5X7YU7[C,%];=OX"4$L! A0#% @ ?7ND M5L=TEV"P/ ( ;-H: ! ( ! &EB<"TR,#(S,#,S,2YH M=&U02P$"% ,4 " !]>Z162<3JTC87 N%0$ $ @ '> M/ ( :6)P+3(P,C,P,S,Q+GAS9%!+ 0(4 Q0 ( 'U[I%:FK'UQW24 +9V M 0 4 " 4)4 @!I8G M,C R,S S,S%?8V%L+GAM;%!+ 0(4 M Q0 ( 'U[I%:_WRL(S78 '%(!0 4 " 5%Z @!I8G M M,C R,S S,S%?9&5F+GAM;%!+ 0(4 Q0 ( 'U[I%8PQS40"##,Q,2YH=&U02P$"% ,4 " !]>Z16[]S6M$P( !Y+ %@ M @ %I(P4 :6)P+3(P,C,P,S,Q>&5X,S$R+FAT;5!+ 0(4 Q0 M ( 'U[I%8HNVQ8#@4 *<9 6 " >DK!0!I8G M,C R M,S S,S%X97@S,C$N:'1M4$L! A0#% @ ?7ND5K:G1_8:!0 R!D !8 M ( !*S$% &EB<"TR,#(S,#,S,7AE>#,R,BYH=&U02P4& / L "P#8 @ >38% end

-8?20$3; M8T.P6BP^0"X99K>]9!:GN"EFB;J$2Z).4T^?JEY#@9)?)@7Z8" MBB%.:(H>8,+_KTH,W/A=8_ MV>^R4/9TL'9N\W$XM-E:E-S^HS="^3-+;4KN_*%9#>W&")[;M1"N+(;!\7$\ M++E4@\^?]G7=F2$\T$YD3FKE"^N"'U(\V-?S]2';2BL7LI#N\730?"_$@)52 MR5(^B?QT<#Q@=JT?OFDCG[1RO)AE1A?%Z6"T._%#&">S=\6S&G+.%[8I<7QQ MSSW(Z2 ^]A4NI;&NN:*IGWO&K? 7[XXJIR]DX829<">^&EUMI%K5U?B[&(+; M:-IA_[EKQ(_F_S2C7BYE)B8ZJTJAW*X=C2AJ0&77VYO)]&8VG3#_;79[=3DYF_N#+V=7 M9S?G4P8@ P0RZ!'RWP! CA'(<2^0L[G_N)[> ,@0@0Q[A&RU9(1 1GU"C@%D MC$#&?4*& #)!(),^(2, F2*0:9^0,8 \02!/:"%OS8HK^=2<@)'[& O=Q[1, M,[E2TE_+E6-G6:8KY;S6V)TN9":%A9BH88@5^"W+8AY940M M%B-RZ=B5MK;=7IA'1L0BN51;85U]D65R1K^H ?%8//B3L<@&FB8!:$TYG/]>ZR(6Q?['IK\H/S" ;YH: V W3 MV8TP98V)E=*3L[,.8>N8*YNZ==)@_ MQL3^.)0=/X-"3'3.BE@I[22YLQ4QGXR)?;++ECNQ,(.,B0UR(&W>4VCN[)H"3$QPXRI#=.11G?V3,PO8V*_O,NGNPA#3"TA MN5H.);$-*L3$[!)2VP7+9-D'B(EI)B363&8C9 M)R2VSP%,7W->%0(N@(:8?4)B^Z"8[=;$_!,2^^=-4CX1CLNB%8@B3#X1L7S0 MJ?7V\B&^$4Q",;&$ M7C"_JUS:9@Y0/*OHHM /$!.34$PLH4.3',]]%6)B$HJ))81@UJDFQ,0D%!-+ M",5L1?<8DU!,+*T:[9QUB8A**B26$3AFU6Q/=(D8L(1RSM9$-DU#X)9*"&V$(X)PWN"62@AMA".V=JIC&Y5)K90%^9W97;S74]P8)E@%DK( M]Z2];@SJ' (EF'P28OD@JROUDPXP4TP^:7^+0'5XAYB8?-)>%X&.("8FGY1Z M%S.&V0J7*2:?E/H%&103ALL4DT]*+)_N);67K -B8O))^]C%]AK9(28FGY18 M/BAFNV]B\DF)Y7,(*B1'[CJ[>^/.-%=F=8_5'7 M- K"J-ZPOJR*XMR7W:HKS?/]:ZC[5V@__P=02P,$% @ ?7ND5E].Z@JF M @ F#4 !H !X;"]?Y3D]H/( CYK%K.)_*U0VZ+\RHM' MJ.G'EW)HQWUW&G;[\[#X/!Y.PZK:C>/Y5UT/ZUTYML-#=RZGRYU-UQ_;\;+L MM_6Y7;^WVU++GJ\G[EX_3J7_YG8;3;[=?G=K?\00)#,'Q0A*,X? ME" HS1^4(2C/'Z00I/,'&039_$$.03Y_4 -!S?Q!88DR+@F2)E@3:!V0ZT#@ M=4"P X'8 D.!'8'Q#L0Z"VHMQ#H+:BW M$.@MDQ_;!'H+ZBT$>@OJ+01Z"^HM!'H+ZBT$>@OJ+01Z"^HM!'H+ZBT$>D?4 M.Q+H'5'O2*!W1+TC@=YQLEE"H'=$O2.!WA'UC@1Z1]0[$N@=4>](H'=$O2.! MWA'UC@1Z)]0[$>B=4.]$H'="O1.!W@GU3@1ZI\EF-X'>"?5.!'HGU#L1Z)U0 M[T2@=T*]$X'>"?5.!'IGU#L3Z)U1[TR@=T:],X'>&?7.!'IGU#L3Z)TG?U82 MZ)U1[TR@=T:],X'>&?7.!'IGU#L3Z*VHMQ+HK:BW$NBMJ+<2Z*VHMQ+HK:BW M$NBMJ+<2Z*V3PR8$>BOJK01Z*^JM!'HKZJT$>AOJ;01Z&^IM!'H;ZFT$>AOJ M;01Z&^IM!'H;ZFT$>AOJ;01ZV^2P(('>AGH;@=Z&>AN!WHYZ.X'>CGH[@=Z. M>CN!WHYZ.X'>CGH[@=Z.>CN!WHYZ.X'>CGH[@=X^.>Q-H+>CWDZ@=X-Z-P1Z M-ZAW\Y-Z#^/7H0RWGN\U/O\GJ1XOWRVWQU^7WQZ16>S86[3T" #Q,P $P %M#;VYT96YT7U1Y<&5S72YX;6S- MV]]NVC 4Q_%70;FM2(CCV&$JO6EWN_5B+^ EID3DGVRWHV\_$]I*FSJTBDG[ MWA"![?,[\9$^=UQ_>YZL7QSZ;O";9!?"]"G+?+VSO?'I.-DAKFQ'UYL0O[J' M;#+UWCS83*Q6*JO'(=@A+,.Q1G)S?6>WYK$+B\^'^+-OQV&3.-OY9'%[VGC, MVB1FFKJV-B&N9T]#\UO*\B4AC2?G/7[73OXJ;DBR=Q..*W\.>#GW]>BEZ= M3P[QANWI,[\X?RYS+C#NO'?CY./$G/UXW.M(CJ>74RQD76C/O^);8BQ]\?O9 MX[0;V_QE=KS>'Z/;S_/PV?RX_(Y_G?%;_0_V(2!]%) ^)*2/$M*'@O2A(7U4 MD#[6D#[R%:41BJ@YA=2<8FI.036GJ)I36,TIKN846'.*K((BJZ#(*BBR"HJL M@B*KH,@J*+(*BJR"(JN@R%I09"THLA8460N*K 5%UH(B:T&1M:#(6E!D+2BR M2HJLDB*KI,@J*;)*BJR2(JNDR"HILDJ*K)(B:TF1M:3(6E)D+2FREA192XJL M)476DB)K29&UI,BJ*+(JBJR*(JNBR*HHLBJ*K(HBJZ+(JBBR*HJLFB*KILBJ M*;)JBJR:(JNFR*HILFJ*K)HBJZ;(6E%DK2BR5A19*XJL%476BB)K19&UHLA: M462M*+*N*;*N_Z>LW\=Q_X_CYV?:FW9XS<_F?_K<_ 102P$"% ,4 " !] M>Z16!T%-8H$ "Q $ @ $ 9&]C4')O<',O87!P M+GAM;%!+ 0(4 Q0 ( 'U[I%8[.59W[P "L" 1 " M :\ !D;V-0&UL4$L! M A0#% @ ?7ND5E\G@QG:!0 K!\ !@ ("!#@@ 'AL M+W=OZ16NHGF0(@# "H# & @(%6 M%@ >&PO=V]R:W-H965T&UL4$L! A0#% @ ?7ND5ND^ M0[#5!0 \!8 !@ ("!%!H 'AL+W=OZ168T=J*NL) !(6@ & @('^(@ >&PO=V]R:W-H965T M&UL4$L! A0#% @ ?7ND5G,O\G^7 @ [@4 !@ M ("!'RT 'AL+W=OPO !X;"]W;W)K MZ16%65T;WP" #0!0 M& @($9.0 >&PO=V]R:W-H965T&UL4$L! M A0#% @ ?7ND5E5L5=I=! D0D !D ("!RSL 'AL M+W=OZ16(IWDC3P' M M$@ &0 @(%?0 >&PO=V]R:W-H965T&UL4$L! A0#% @ ?7ND M5O0K(UZ16BJ;Z[.@" !9!@ &0 M @($54P >&PO=V]R:W-H965T&UL4$L! A0#% @ ?7ND5MB(A /? P C0@ M !D ("!G%P 'AL+W=OZ16B&*P_AX' @'P &0 @(&R8 M>&PO=V]R:W-H965T&UL4$L! A0#% @ ?7ND5HX8%UVU!P WA, !D M ("!R7 'AL+W=OZ16?U3@4JL) "!&@ &0 @(&U> >&PO=V]R:W-H965T M" !X;"]W;W)K&UL4$L! A0# M% @ ?7ND5GG)V4BB"P C"( !D ("!UX< 'AL+W=O MZ16/4W3S-P" !3 M!@ &0 @(&PDP >&PO=V]R:W-H965T&UL4$L! A0#% @ ?7ND5M): M.Q4M!0 _0L !D ("!5YL 'AL+W=OZ16&0IDX_(* # '0 &0 M @(&[H >&PO=V]R:W-H965T2K !X;"]W;W)K&UL4$L! A0#% @ ?7ND5M:6$O/N P *0@ !D M ("!FJ\ 'AL+W=OZ16O334'!X% !=# &0 @(&_LP >&PO M=V]R:W-H965T&UL4$L! A0#% @ ?7ND5K[$9U!!!0 *0X !D ("! M=[T 'AL+W=OZ16 MP;DRA)T" "Y!0 &0 @('OP@ >&PO=V]R:W-H965T&UL4$L! A0#% M @ ?7ND5J)!VC;Z P .PD !D ("!WLH 'AL+W=O&UL4$L! A0#% @ ?7ND5N'P\:,S M! _@D !D ("!0]H 'AL+W=OZ16,5^D[V<# !*" &0 M@(&MW@ >&PO=V]R:W-H965T&UL4$L! A0#% @ ?7ND5D42''W$!0 21 !D M ("!X^8 'AL+W=OZ16*U9#?)(" #7!0 &0 @('>[ >&PO=V]R M:W-H965T&UL M4$L! A0#% @ ?7ND5L'\_^YP!@ LA !D ("!Z167]Q\ M<7\" #!@ &0 @($7^@ >&PO=V]R:W-H965T&UL4$L! A0#% @ M?7ND5N>0WP;V"0 XE\ !D ("!= ! 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ ?7ND5C0FW1O @ M% < !D ("!<1 ! 'AL+W=OZ16!5CU);8" "X!@ &0 @(%H M$P$ >&PO=V]R:W-H965T&UL4$L! A0#% @ ?7ND5F'R.'%C! 21< !D M ("!L!@! 'AL+W=OZ164'2\N6$$ !G%@ &0 @(%*'0$ >&PO=V]R:W-H M965T(A 0!X;"]W;W)K&UL4$L! M A0#% @ ?7ND5J3ZZ16L'1R9@8% M !2'0 &0 @(';)P$ >&PO=V]R:W-H965T&UL4$L! A0#% @ ?7ND M5C_)X^%3! IQ$ !D ("!RR\! 'AL+W=OZ16GIBZRX,# !##@ &0 M @(%5- $ >&PO=V]R:W-H965TGOM0( $L' 9 " @0\X 0!X;"]W;W)K M&UL4$L! A0#% @ ?7ND5A= <1;R!0 3B8 M !D ("!^SH! 'AL+W=OZ16= )9%=$$ "['0 &0 @($D00$ M>&PO=V]R:W-H965T&UL4$L! A0#% @ ?7ND5N-GNGZN @ RP@ !D M ("!*TD! 'AL+W=OZ16K.JE!9<& "K)P &0 @($03 $ >&PO=V]R:W-H965T M&UL4$L! A0# M% @ ?7ND5D92*ZO4! WA\ !D ("!N%8! 'AL+W=O MZ161^OXP%@# \ M"@ &0 @('#6P$ >&PO=V]R:W-H965T&UL4$L! A0#% @ ?7ND5FN8 MU5A1 P <0L !D ("!+&,! 'AL+W=OZ16PHHV@@8% !;*P &0 M @(&T9@$ >&PO=V]R:W-H965T&UL4$L! A0#% @ ?7ND5H.2,^>C @ N 8 !D M ("!BW(! 'AL+W=OZ16%EBHR%(" _!0 &0 @(%E=0$ >&PO M=V]R:W-H965TYW 0!X;"]W;W)K&UL4$L! A0#% @ ?7ND5O2F!^- ! (Q@ !D ("! M8GT! 'AL+W=OZ16 M1Y"&$T@# Z#@ &0 @('9@0$ >&PO=V]R:W-H965T0, !<. 9 M " @5B% 0!X;"]W;W)K&UL4$L! A0#% M @ ?7ND5CAS'C4? @ F 0 !D ("!"(D! 'AL+W=O7KJ^P( %H+ 9 " @2*. 0!X M;"]W;W)K&UL4$L! A0#% @ ?7ND5LBB?HZ: M @ J@8 !D ("!5)$! 'AL+W=OZ16C'C&PO=V]R:W-H965T&UL4$L! A0#% @ ?7ND5@Z169A9'P14% !.)@ &0 @(&:G0$ >&PO=V]R M:W-H965T:B 0!X;"]W;W)K&UL M4$L! A0#% @ ?7ND5CNH%.7G P C!( !D ("!3:T! M 'AL+W=OZ16Q^A: M;N<" #^!P &0 @(%KL0$ >&PO=V]R:W-H965T&UL4$L! A0#% @ M?7ND5K$;O?7:! #"( !D ("!F[Z16JLM6"T8# #*% #0 M @ &LO $ >&POZ167T[J"J8" "8-0 &@ M @ &-QP$ >&PO7W)E;',O=V]R:V)O;VLN>&UL+G)E;'-02P$"% ,4 M " !]>Z16>S86[3T" #Q,P $P @ %KR@$ 6T-O;G1E C;G1?5'EP97-=+GAM;%!+!08 8P!C "P; #9S $ ! end XML 105 Show.js IDEA: XBRL DOCUMENT // Edgar(tm) Renderer was created by staff of the U.S. Securities and Exchange Commission. Data and content created by government employees within the scope of their employment are not subject to domestic copyright protection. 17 U.S.C. 105. var Show={};Show.LastAR=null,Show.showAR=function(a,r,w){if(Show.LastAR)Show.hideAR();var e=a;while(e&&e.nodeName!='TABLE')e=e.nextSibling;if(!e||e.nodeName!='TABLE'){var ref=((window)?w.document:document).getElementById(r);if(ref){e=ref.cloneNode(!0); e.removeAttribute('id');a.parentNode.appendChild(e)}} if(e)e.style.display='block';Show.LastAR=e};Show.hideAR=function(){Show.LastAR.style.display='none'};Show.toggleNext=function(a){var e=a;while(e.nodeName!='DIV')e=e.nextSibling;if(!e.style){}else if(!e.style.display){}else{var d,p_;if(e.style.display=='none'){d='block';p='-'}else{d='none';p='+'} e.style.display=d;if(a.textContent){a.textContent=p+a.textContent.substring(1)}else{a.innerText=p+a.innerText.substring(1)}}} XML 106 report.css IDEA: XBRL DOCUMENT /* Updated 2009-11-04 */ /* v2.2.0.24 */ /* DefRef Styles */ ..report table.authRefData{ background-color: #def; border: 2px solid #2F4497; font-size: 1em; position: absolute; } ..report table.authRefData a { display: block; font-weight: bold; } ..report table.authRefData p { margin-top: 0px; } ..report table.authRefData .hide { background-color: #2F4497; padding: 1px 3px 0px 0px; text-align: right; } ..report table.authRefData .hide a:hover { background-color: #2F4497; } ..report table.authRefData .body { height: 150px; overflow: auto; width: 400px; } ..report table.authRefData table{ font-size: 1em; } /* Report Styles */ ..pl a, .pl a:visited { color: black; text-decoration: none; } /* table */ ..report { background-color: white; border: 2px solid #acf; clear: both; color: black; font: normal 8pt Helvetica, Arial, san-serif; margin-bottom: 2em; } ..report hr { border: 1px solid #acf; } /* Top labels */ ..report th { background-color: #acf; color: black; font-weight: bold; text-align: center; } ..report th.void { background-color: transparent; color: #000000; font: bold 10pt Helvetica, Arial, san-serif; text-align: left; } ..report .pl { text-align: left; vertical-align: top; white-space: normal; width: 200px; white-space: normal; /* word-wrap: break-word; */ } ..report td.pl a.a { cursor: pointer; display: block; width: 200px; overflow: hidden; } ..report td.pl div.a { width: 200px; } ..report td.pl a:hover { background-color: #ffc; } /* Header rows... */ ..report tr.rh { background-color: #acf; color: black; font-weight: bold; } /* Calendars... */ ..report .rc { background-color: #f0f0f0; } /* Even rows... */ ..report .re, .report .reu { background-color: #def; } ..report .reu td { border-bottom: 1px solid black; } /* Odd rows... */ ..report .ro, .report .rou { background-color: white; } ..report .rou td { border-bottom: 1px solid black; } ..report .rou table td, .report .reu table td { border-bottom: 0px solid black; } /* styles for footnote marker */ ..report .fn { white-space: nowrap; } /* styles for numeric types */ ..report .num, .report .nump { text-align: right; white-space: nowrap; } ..report .nump { padding-left: 2em; } ..report .nump { padding: 0px 0.4em 0px 2em; } /* styles for text types */ ..report .text { text-align: left; white-space: normal; } ..report .text .big { margin-bottom: 1em; width: 17em; } ..report .text .more { display: none; } ..report .text .note { font-style: italic; font-weight: bold; } ..report .text .small { width: 10em; } ..report sup { font-style: italic; } ..report .outerFootnotes { font-size: 1em; } XML 107 FilingSummary.xml IDEA: XBRL DOCUMENT 3.23.1 html 258 387 1 false 89 0 false 11 false false R1.htm 0000001 - Document - Cover Page Sheet http://installedbuildingproducts.com/role/CoverPage Cover Page Cover 1 false false R2.htm 0000002 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS (UNAUDITED) Sheet http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED CONDENSED CONSOLIDATED BALANCE SHEETS (UNAUDITED) Statements 2 false false R3.htm 0000003 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS (UNAUDITED) (Parenthetical) Sheet http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITEDParenthetical CONDENSED CONSOLIDATED BALANCE SHEETS (UNAUDITED) (Parenthetical) Statements 3 false false R4.htm 0000004 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME (UNAUDITED) Sheet http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITED CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME (UNAUDITED) Statements 4 false false R5.htm 0000005 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME (UNAUDITED) (Parenthetical) Sheet http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITEDParenthetical CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME (UNAUDITED) (Parenthetical) Statements 5 false false R6.htm 0000006 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY (UNAUDITED) Sheet http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYUNAUDITED CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY (UNAUDITED) Statements 6 false false R7.htm 0000007 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY (UNAUDITED) (Parenthetical) Sheet http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYUNAUDITEDParenthetical CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY (UNAUDITED) (Parenthetical) Statements 7 false false R8.htm 0000008 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS (UNAUDITED) Sheet http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS (UNAUDITED) Statements 8 false false R9.htm 0000009 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS (UNAUDITED) (Parenthetical) Sheet http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITEDParenthetical CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS (UNAUDITED) (Parenthetical) Statements 9 false false R10.htm 0000010 - Disclosure - Organization Sheet http://installedbuildingproducts.com/role/Organization Organization Notes 10 false false R11.htm 0000011 - Disclosure - Significant Accounting Policies Sheet http://installedbuildingproducts.com/role/SignificantAccountingPolicies Significant Accounting Policies Notes 11 false false R12.htm 0000012 - Disclosure - Revenue Recognition Sheet http://installedbuildingproducts.com/role/RevenueRecognition Revenue Recognition Notes 12 false false R13.htm 0000013 - Disclosure - Credit Losses Sheet http://installedbuildingproducts.com/role/CreditLosses Credit Losses Notes 13 false false R14.htm 0000014 - Disclosure - Investments and Cash and Cash Equivalents Sheet http://installedbuildingproducts.com/role/InvestmentsandCashandCashEquivalents Investments and Cash and Cash Equivalents Notes 14 false false R15.htm 0000015 - Disclosure - Goodwill and Intangibles Sheet http://installedbuildingproducts.com/role/GoodwillandIntangibles Goodwill and Intangibles Notes 15 false false R16.htm 0000016 - Disclosure - Long-Term Debt Sheet http://installedbuildingproducts.com/role/LongTermDebt Long-Term Debt Notes 16 false false R17.htm 0000017 - Disclosure - Leases Sheet http://installedbuildingproducts.com/role/Leases Leases Notes 17 false false R18.htm 0000018 - Disclosure - Fair Value Measurements Sheet http://installedbuildingproducts.com/role/FairValueMeasurements Fair Value Measurements Notes 18 false false R19.htm 0000019 - Disclosure - Information on Segments Sheet http://installedbuildingproducts.com/role/InformationonSegments Information on Segments Notes 19 false false R20.htm 0000020 - Disclosure - Derivatives and Hedging Activities Sheet http://installedbuildingproducts.com/role/DerivativesandHedgingActivities Derivatives and Hedging Activities Notes 20 false false R21.htm 0000021 - Disclosure - Stockholders' Equity Sheet http://installedbuildingproducts.com/role/StockholdersEquity Stockholders' Equity Notes 21 false false R22.htm 0000022 - Disclosure - Employee Benefits Sheet http://installedbuildingproducts.com/role/EmployeeBenefits Employee Benefits Notes 22 false false R23.htm 0000023 - Disclosure - Income Taxes Sheet http://installedbuildingproducts.com/role/IncomeTaxes Income Taxes Notes 23 false false R24.htm 0000024 - Disclosure - Related Party Transactions Sheet http://installedbuildingproducts.com/role/RelatedPartyTransactions Related Party Transactions Notes 24 false false R25.htm 0000025 - Disclosure - Commitments and Contingencies Sheet http://installedbuildingproducts.com/role/CommitmentsandContingencies Commitments and Contingencies Notes 25 false false R26.htm 0000026 - Disclosure - Business Combinations Sheet http://installedbuildingproducts.com/role/BusinessCombinations Business Combinations Notes 26 false false R27.htm 0000027 - Disclosure - Income Per Common Share Sheet http://installedbuildingproducts.com/role/IncomePerCommonShare Income Per Common Share Notes 27 false false R28.htm 0000028 - Disclosure - Subsequent Events Sheet http://installedbuildingproducts.com/role/SubsequentEvents Subsequent Events Notes 28 false false R29.htm 0000029 - Disclosure - Significant Accounting Policies (Policies) Sheet http://installedbuildingproducts.com/role/SignificantAccountingPoliciesPolicies Significant Accounting Policies (Policies) Policies http://installedbuildingproducts.com/role/SignificantAccountingPolicies 29 false false R30.htm 0000030 - Disclosure - Significant Accounting Policies (Tables) Sheet http://installedbuildingproducts.com/role/SignificantAccountingPoliciesTables Significant Accounting Policies (Tables) Tables http://installedbuildingproducts.com/role/SignificantAccountingPolicies 30 false false R31.htm 0000031 - Disclosure - Revenue Recognition (Tables) Sheet http://installedbuildingproducts.com/role/RevenueRecognitionTables Revenue Recognition (Tables) Tables http://installedbuildingproducts.com/role/RevenueRecognition 31 false false R32.htm 0000032 - Disclosure - Credit Losses (Tables) Sheet http://installedbuildingproducts.com/role/CreditLossesTables Credit Losses (Tables) Tables http://installedbuildingproducts.com/role/CreditLosses 32 false false R33.htm 0000033 - Disclosure - Goodwill and Intangibles (Tables) Sheet http://installedbuildingproducts.com/role/GoodwillandIntangiblesTables Goodwill and Intangibles (Tables) Tables http://installedbuildingproducts.com/role/GoodwillandIntangibles 33 false false R34.htm 0000034 - Disclosure - Long-Term Debt (Tables) Sheet http://installedbuildingproducts.com/role/LongTermDebtTables Long-Term Debt (Tables) Tables http://installedbuildingproducts.com/role/LongTermDebt 34 false false R35.htm 0000035 - Disclosure - Leases (Tables) Sheet http://installedbuildingproducts.com/role/LeasesTables Leases (Tables) Tables http://installedbuildingproducts.com/role/Leases 35 false false R36.htm 0000036 - Disclosure - Fair Value Measurements (Tables) Sheet http://installedbuildingproducts.com/role/FairValueMeasurementsTables Fair Value Measurements (Tables) Tables http://installedbuildingproducts.com/role/FairValueMeasurements 36 false false R37.htm 0000037 - Disclosure - Information on Segments (Tables) Sheet http://installedbuildingproducts.com/role/InformationonSegmentsTables Information on Segments (Tables) Tables http://installedbuildingproducts.com/role/InformationonSegments 37 false false R38.htm 0000038 - Disclosure - Derivative and Hedging Activities (Tables) Sheet http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesTables Derivative and Hedging Activities (Tables) Tables 38 false false R39.htm 0000039 - Disclosure - Stockholders' Equity (Tables) Sheet http://installedbuildingproducts.com/role/StockholdersEquityTables Stockholders' Equity (Tables) Tables http://installedbuildingproducts.com/role/StockholdersEquity 39 false false R40.htm 0000040 - Disclosure - Employee Benefits (Tables) Sheet http://installedbuildingproducts.com/role/EmployeeBenefitsTables Employee Benefits (Tables) Tables http://installedbuildingproducts.com/role/EmployeeBenefits 40 false false R41.htm 0000041 - Disclosure - Related Party Transactions (Tables) Sheet http://installedbuildingproducts.com/role/RelatedPartyTransactionsTables Related Party Transactions (Tables) Tables http://installedbuildingproducts.com/role/RelatedPartyTransactions 41 false false R42.htm 0000042 - Disclosure - Commitments and Contingencies (Tables) Sheet http://installedbuildingproducts.com/role/CommitmentsandContingenciesTables Commitments and Contingencies (Tables) Tables http://installedbuildingproducts.com/role/CommitmentsandContingencies 42 false false R43.htm 0000043 - Disclosure - Business Combinations (Tables) Sheet http://installedbuildingproducts.com/role/BusinessCombinationsTables Business Combinations (Tables) Tables http://installedbuildingproducts.com/role/BusinessCombinations 43 false false R44.htm 0000044 - Disclosure - Organization - Additional Information (Details) Sheet http://installedbuildingproducts.com/role/OrganizationAdditionalInformationDetails Organization - Additional Information (Details) Details 44 false false R45.htm 0000045 - Disclosure - Revenue Recognition - Additional Information (Details) Sheet http://installedbuildingproducts.com/role/RevenueRecognitionAdditionalInformationDetails Revenue Recognition - Additional Information (Details) Details 45 false false R46.htm 0000046 - Disclosure - Revenue Recognition - Summary of Revenues Disaggregated by End Market and Product (Details) Sheet http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetails Revenue Recognition - Summary of Revenues Disaggregated by End Market and Product (Details) Details 46 false false R47.htm 0000047 - Disclosure - Revenue Recognition - Summary of Assets and Liabilities Related to Uncompleted Contracts and Customer Deposits (Details) Sheet http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofAssetsandLiabilitiesRelatedtoUncompletedContractsandCustomerDepositsDetails Revenue Recognition - Summary of Assets and Liabilities Related to Uncompleted Contracts and Customer Deposits (Details) Details 47 false false R48.htm 0000048 - Disclosure - Revenue Recognition - Schedule of Cost and Estimated Earnings on Uncompleted Contracts (Details) Sheet http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofCostandEstimatedEarningsonUncompletedContractsDetails Revenue Recognition - Schedule of Cost and Estimated Earnings on Uncompleted Contracts (Details) Details 48 false false R49.htm 0000049 - Disclosure - Revenue Recognition - Schedule of Net Under (Over) Billings (Details) Sheet http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofNetUnderOverBillingsDetails Revenue Recognition - Schedule of Net Under (Over) Billings (Details) Details 49 false false R50.htm 0000050 - Disclosure - Credit Losses (Details) Sheet http://installedbuildingproducts.com/role/CreditLossesDetails Credit Losses (Details) Details http://installedbuildingproducts.com/role/CreditLossesTables 50 false false R51.htm 0000051 - Disclosure - Investments and Cash and Cash Equivalents (Details) Sheet http://installedbuildingproducts.com/role/InvestmentsandCashandCashEquivalentsDetails Investments and Cash and Cash Equivalents (Details) Details http://installedbuildingproducts.com/role/InvestmentsandCashandCashEquivalents 51 false false R52.htm 0000052 - Disclosure - Goodwill and Intangibles - Summary of Change in Carrying Amount of Goodwill (Details) Sheet http://installedbuildingproducts.com/role/GoodwillandIntangiblesSummaryofChangeinCarryingAmountofGoodwillDetails Goodwill and Intangibles - Summary of Change in Carrying Amount of Goodwill (Details) Details 52 false false R53.htm 0000053 - Disclosure - Goodwill and Intangibles - Schedule of Gross Carrying Amount and Accumulated Amortization (Details) Sheet http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofGrossCarryingAmountandAccumulatedAmortizationDetails Goodwill and Intangibles - Schedule of Gross Carrying Amount and Accumulated Amortization (Details) Details 53 false false R54.htm 0000054 - Disclosure - Goodwill and Intangibles - Additional Information (Details) Sheet http://installedbuildingproducts.com/role/GoodwillandIntangiblesAdditionalInformationDetails Goodwill and Intangibles - Additional Information (Details) Details 54 false false R55.htm 0000055 - Disclosure - Goodwill and Intangibles - Schedule of Estimated Aggregate Annual Amortization (Details) Sheet http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofEstimatedAggregateAnnualAmortizationDetails Goodwill and Intangibles - Schedule of Estimated Aggregate Annual Amortization (Details) Details 55 false false R56.htm 0000056 - Disclosure - Long-Term Debt - Schedule of Debt (Details) Sheet http://installedbuildingproducts.com/role/LongTermDebtScheduleofDebtDetails Long-Term Debt - Schedule of Debt (Details) Details 56 false false R57.htm 0000057 - Disclosure - Long-Term Debt - Schedule Of Maturities Of Long Term Debt (Details) Sheet http://installedbuildingproducts.com/role/LongTermDebtScheduleOfMaturitiesOfLongTermDebtDetails Long-Term Debt - Schedule Of Maturities Of Long Term Debt (Details) Details 57 false false R58.htm 0000058 - Disclosure - Leases - Schedule of Supplemental Balance Sheet Information Related To Leases (Details) Sheet http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails Leases - Schedule of Supplemental Balance Sheet Information Related To Leases (Details) Details 58 false false R59.htm 0000059 - Disclosure - Leases - Lease Costs (Details) Sheet http://installedbuildingproducts.com/role/LeasesLeaseCostsDetails Leases - Lease Costs (Details) Details 59 false false R60.htm 0000060 - Disclosure - Leases - Other Information (Details) Sheet http://installedbuildingproducts.com/role/LeasesOtherInformationDetails Leases - Other Information (Details) Details 60 false false R61.htm 0000061 - Disclosure - Leases - Undiscounted Cash Flows (Details) Sheet http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails Leases - Undiscounted Cash Flows (Details) Details 61 false false R62.htm 0000062 - Disclosure - Fair Value Measurements - Schedule of Fair Values of Financial Assets and Liabilities (Details) Sheet http://installedbuildingproducts.com/role/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetails Fair Value Measurements - Schedule of Fair Values of Financial Assets and Liabilities (Details) Details 62 false false R63.htm 0000063 - Disclosure - Fair Value Measurements - Summary of Change in Fair Value of Contingent Consideration (Details) Sheet http://installedbuildingproducts.com/role/FairValueMeasurementsSummaryofChangeinFairValueofContingentConsiderationDetails Fair Value Measurements - Summary of Change in Fair Value of Contingent Consideration (Details) Details 63 false false R64.htm 0000064 - Disclosure - Fair Value Measurements - Summary of Carrying Values and Associated Fair Values of Financial Assets and Liabilities (Details) Sheet http://installedbuildingproducts.com/role/FairValueMeasurementsSummaryofCarryingValuesandAssociatedFairValuesofFinancialAssetsandLiabilitiesDetails Fair Value Measurements - Summary of Carrying Values and Associated Fair Values of Financial Assets and Liabilities (Details) Details 64 false false R65.htm 0000065 - Disclosure - Information on Segments (Details) Sheet http://installedbuildingproducts.com/role/InformationonSegmentsDetails Information on Segments (Details) Details http://installedbuildingproducts.com/role/InformationonSegmentsTables 65 false false R66.htm 0000066 - Disclosure - Derivative and Hedging Activities - Open Interest Swap Contract Summary (Details) Sheet http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesOpenInterestSwapContractSummaryDetails Derivative and Hedging Activities - Open Interest Swap Contract Summary (Details) Details 66 false false R67.htm 0000067 - Disclosure - Derivative and Hedging Activities - Narrative (Details) Sheet http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesNarrativeDetails Derivative and Hedging Activities - Narrative (Details) Details 67 false false R68.htm 0000068 - Disclosure - Derivative and Hedging Activities - Interest Rate Swap Summary (Details) Sheet http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesInterestRateSwapSummaryDetails Derivative and Hedging Activities - Interest Rate Swap Summary (Details) Details 68 false false R69.htm 0000069 - Disclosure - Stockholders' Equity - Change in AOCI (Details) Sheet http://installedbuildingproducts.com/role/StockholdersEquityChangeinAOCIDetails Stockholders' Equity - Change in AOCI (Details) Details 69 false false R70.htm 0000070 - Disclosure - Stockholders' Equity - Additional Information (Details) Sheet http://installedbuildingproducts.com/role/StockholdersEquityAdditionalInformationDetails Stockholders' Equity - Additional Information (Details) Details 70 false false R71.htm 0000071 - Disclosure - Stockholders' Equity - Cash Dividends (Details) Sheet http://installedbuildingproducts.com/role/StockholdersEquityCashDividendsDetails Stockholders' Equity - Cash Dividends (Details) Details 71 false false R72.htm 0000072 - Disclosure - Employee Benefits - Additional Information (Details) Sheet http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetails Employee Benefits - Additional Information (Details) Details 72 false false R73.htm 0000073 - Disclosure - Employee Benefits - Summary of Workers' Compensation Known Claims and IBNR Reserves (Details) Sheet http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofWorkersCompensationKnownClaimsandIBNRReservesDetails Employee Benefits - Summary of Workers' Compensation Known Claims and IBNR Reserves (Details) Details 73 false false R74.htm 0000074 - Disclosure - Employee Benefits - Schedule of Insurance Receivable for Claims (Details) Sheet http://installedbuildingproducts.com/role/EmployeeBenefitsScheduleofInsuranceReceivableforClaimsDetails Employee Benefits - Schedule of Insurance Receivable for Claims (Details) Details 74 false false R75.htm 0000075 - Disclosure - Employee Benefits - Summary of Equity-Based Awards for Employees (Details) Sheet http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetails Employee Benefits - Summary of Equity-Based Awards for Employees (Details) Details 75 false false R76.htm 0000076 - Disclosure - Employee Benefits - Summary of Share-Based Compensation Expense Under the 2014 Omnibus Incentive Plan (Details) Sheet http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofShareBasedCompensationExpenseUnderthe2014OmnibusIncentivePlanDetails Employee Benefits - Summary of Share-Based Compensation Expense Under the 2014 Omnibus Incentive Plan (Details) Details 76 false false R77.htm 0000077 - Disclosure - Employee Benefits - Summary of Stock Compensation Expense (Details) Sheet http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofStockCompensationExpenseDetails Employee Benefits - Summary of Stock Compensation Expense (Details) Details 77 false false R78.htm 0000078 - Disclosure - Employee Benefits - Unrecognized Share-Based Compensation Expense Related to Unvested Awards (Details) Sheet http://installedbuildingproducts.com/role/EmployeeBenefitsUnrecognizedShareBasedCompensationExpenseRelatedtoUnvestedAwardsDetails Employee Benefits - Unrecognized Share-Based Compensation Expense Related to Unvested Awards (Details) Details 78 false false R79.htm 0000079 - Disclosure - Income Taxes (Details) Sheet http://installedbuildingproducts.com/role/IncomeTaxesDetails Income Taxes (Details) Details http://installedbuildingproducts.com/role/IncomeTaxes 79 false false R80.htm 0000080 - Disclosure - Related Party Transactions - Schedule of Related Party Transactions (Details) Sheet http://installedbuildingproducts.com/role/RelatedPartyTransactionsScheduleofRelatedPartyTransactionsDetails Related Party Transactions - Schedule of Related Party Transactions (Details) Details 80 false false R81.htm 0000081 - Disclosure - Related Party Transactions - Additional Information (Details) Sheet http://installedbuildingproducts.com/role/RelatedPartyTransactionsAdditionalInformationDetails Related Party Transactions - Additional Information (Details) Details 81 false false R82.htm 0000082 - Disclosure - Commitments and Contingencies - Schedule of Accrued General Insurance Reserves (Details) Sheet http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofAccruedGeneralInsuranceReservesDetails Commitments and Contingencies - Schedule of Accrued General Insurance Reserves (Details) Details 82 false false R83.htm 0000083 - Disclosure - Commitments and Contingencies - Schedule of Insurance Receivable for Claims (Details) Sheet http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofInsuranceReceivableforClaimsDetails Commitments and Contingencies - Schedule of Insurance Receivable for Claims (Details) Details 83 false false R84.htm 0000084 - Disclosure - Commitments and Contingencies - Additional Information (Details) Sheet http://installedbuildingproducts.com/role/CommitmentsandContingenciesAdditionalInformationDetails Commitments and Contingencies - Additional Information (Details) Details 84 false false R85.htm 0000085 - Disclosure - Business Combinations - Additional Information (Details) Sheet http://installedbuildingproducts.com/role/BusinessCombinationsAdditionalInformationDetails Business Combinations - Additional Information (Details) Details 85 false false R86.htm 0000086 - Disclosure - Business Combinations - Summary of Business Acquisitions (Details) Sheet http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofBusinessAcquisitionsDetails Business Combinations - Summary of Business Acquisitions (Details) Details 86 false false R87.htm 0000087 - Disclosure - Business Combinations - Summary of Estimated Fair Value of Assets Acquired and Liabilities Assumed (Details) Sheet http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetails Business Combinations - Summary of Estimated Fair Value of Assets Acquired and Liabilities Assumed (Details) Details 87 false false R88.htm 0000088 - Disclosure - Business Combinations - Estimates of Acquired Intangible Assets (Details) Sheet http://installedbuildingproducts.com/role/BusinessCombinationsEstimatesofAcquiredIntangibleAssetsDetails Business Combinations - Estimates of Acquired Intangible Assets (Details) Details 88 false false R89.htm 0000089 - Disclosure - Business Combinations - Pro Forma Results of Operations (Details) Sheet http://installedbuildingproducts.com/role/BusinessCombinationsProFormaResultsofOperationsDetails Business Combinations - Pro Forma Results of Operations (Details) Details 89 false false R90.htm 0000090 - Disclosure - Income Per Common Share - Additional Information (Details) Sheet http://installedbuildingproducts.com/role/IncomePerCommonShareAdditionalInformationDetails Income Per Common Share - Additional Information (Details) Details 90 false false R91.htm 0000091 - Disclosure - Subsequent Events (Details) Sheet http://installedbuildingproducts.com/role/SubsequentEventsDetails Subsequent Events (Details) Details http://installedbuildingproducts.com/role/SubsequentEvents 91 false false All Reports Book All Reports [dq-0542-Deprecated-Concept] Concept RevenueFromRelatedParties in us-gaap/2022 used in 2 facts was deprecated in us-gaap/2023 as of 2023 and should not be used. ibp-20230331.htm 4 [dq-0542-Deprecated-Concept] Concept RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty in us-gaap/2022 used in 2 facts was deprecated in us-gaap/2023 as of 2023 and should not be used. ibp-20230331.htm 4 [dq-0542-Deprecated-Concept] Concept AccountsReceivableRelatedPartiesCurrent in us-gaap/2022 used in 4 facts was deprecated in us-gaap/2023 as of 2023 and should not be used. ibp-20230331.htm 4 [ix-0514-Hidden-Fact-Eligible-For-Transform] WARN: 2 fact(s) appearing in ix:hidden were eligible for transformation: us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod - ibp-20230331.htm 4 ibp-20230331.htm ibp-20230331.xsd ibp-20230331_cal.xml ibp-20230331_def.xml ibp-20230331_lab.xml ibp-20230331_pre.xml ibp-20230331xex101.htm ibp-20230331xex311.htm ibp-20230331xex312.htm ibp-20230331xex321.htm ibp-20230331xex322.htm http://fasb.org/us-gaap/2022 http://xbrl.sec.gov/dei/2022 true true JSON 110 MetaLinks.json IDEA: XBRL DOCUMENT { "instance": { "ibp-20230331.htm": { "axisCustom": 1, "axisStandard": 32, "baseTaxonomies": { "http://fasb.org/us-gaap/2022": 921, "http://xbrl.sec.gov/dei/2022": 30 }, "contextCount": 258, "dts": { "calculationLink": { "local": [ "ibp-20230331_cal.xml" ] }, "definitionLink": { "local": [ "ibp-20230331_def.xml" ] }, "inline": { "local": [ "ibp-20230331.htm" ] }, "labelLink": { "local": [ "ibp-20230331_lab.xml" ] }, "presentationLink": { "local": [ "ibp-20230331_pre.xml" ] }, "schema": { "local": [ "ibp-20230331.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": 654, "entityCount": 1, "hidden": { "http://fasb.org/us-gaap/2022": 8, "http://xbrl.sec.gov/dei/2022": 5, "total": 13 }, "keyCustom": 37, "keyStandard": 350, "memberCustom": 44, "memberStandard": 45, "nsprefix": "ibp", "nsuri": "http://installedbuildingproducts.com/20230331", "report": { "R1": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "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-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "dei:DocumentType", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R10": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000010 - Disclosure - Organization", "menuCat": "Notes", "order": "10", "role": "http://installedbuildingproducts.com/role/Organization", "shortName": "Organization", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R11": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SignificantAccountingPoliciesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000011 - Disclosure - Significant Accounting Policies", "menuCat": "Notes", "order": "11", "role": "http://installedbuildingproducts.com/role/SignificantAccountingPolicies", "shortName": "Significant Accounting Policies", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SignificantAccountingPoliciesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R12": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000012 - Disclosure - Revenue Recognition", "menuCat": "Notes", "order": "12", "role": "http://installedbuildingproducts.com/role/RevenueRecognition", "shortName": "Revenue Recognition", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R13": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:AllowanceForCreditLossesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000013 - Disclosure - Credit Losses", "menuCat": "Notes", "order": "13", "role": "http://installedbuildingproducts.com/role/CreditLosses", "shortName": "Credit Losses", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:AllowanceForCreditLossesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R14": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:InvestmentTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000014 - Disclosure - Investments and Cash and Cash Equivalents", "menuCat": "Notes", "order": "14", "role": "http://installedbuildingproducts.com/role/InvestmentsandCashandCashEquivalents", "shortName": "Investments and Cash and Cash Equivalents", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:InvestmentTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R15": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000015 - Disclosure - Goodwill and Intangibles", "menuCat": "Notes", "order": "15", "role": "http://installedbuildingproducts.com/role/GoodwillandIntangibles", "shortName": "Goodwill and Intangibles", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R16": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LongTermDebtTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000016 - Disclosure - Long-Term Debt", "menuCat": "Notes", "order": "16", "role": "http://installedbuildingproducts.com/role/LongTermDebt", "shortName": "Long-Term Debt", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LongTermDebtTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R17": { "firstAnchor": { "ancestors": [ "us-gaap:LesseeFinanceLeasesTextBlock", "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LesseeOperatingLeasesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000017 - Disclosure - Leases", "menuCat": "Notes", "order": "17", "role": "http://installedbuildingproducts.com/role/Leases", "shortName": "Leases", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "us-gaap:LesseeFinanceLeasesTextBlock", "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LesseeOperatingLeasesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R18": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FairValueDisclosuresTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000018 - Disclosure - Fair Value Measurements", "menuCat": "Notes", "order": "18", "role": "http://installedbuildingproducts.com/role/FairValueMeasurements", "shortName": "Fair Value Measurements", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FairValueDisclosuresTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R19": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000019 - Disclosure - Information on Segments", "menuCat": "Notes", "order": "19", "role": "http://installedbuildingproducts.com/role/InformationonSegments", "shortName": "Information on Segments", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R2": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "if49538193b454f9c8f32ff377b3cb357_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "0000002 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS (UNAUDITED)", "menuCat": "Statements", "order": "2", "role": "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED", "shortName": "CONDENSED CONSOLIDATED BALANCE SHEETS (UNAUDITED)", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "if49538193b454f9c8f32ff377b3cb357_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R20": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000020 - Disclosure - Derivatives and Hedging Activities", "menuCat": "Notes", "order": "20", "role": "http://installedbuildingproducts.com/role/DerivativesandHedgingActivities", "shortName": "Derivatives and Hedging Activities", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R21": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000021 - Disclosure - Stockholders' Equity", "menuCat": "Notes", "order": "21", "role": "http://installedbuildingproducts.com/role/StockholdersEquity", "shortName": "Stockholders' Equity", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R22": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CompensationAndEmployeeBenefitPlansTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000022 - Disclosure - Employee Benefits", "menuCat": "Notes", "order": "22", "role": "http://installedbuildingproducts.com/role/EmployeeBenefits", "shortName": "Employee Benefits", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CompensationAndEmployeeBenefitPlansTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R23": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000023 - Disclosure - Income Taxes", "menuCat": "Notes", "order": "23", "role": "http://installedbuildingproducts.com/role/IncomeTaxes", "shortName": "Income Taxes", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R24": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000024 - Disclosure - Related Party Transactions", "menuCat": "Notes", "order": "24", "role": "http://installedbuildingproducts.com/role/RelatedPartyTransactions", "shortName": "Related Party Transactions", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R25": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000025 - Disclosure - Commitments and Contingencies", "menuCat": "Notes", "order": "25", "role": "http://installedbuildingproducts.com/role/CommitmentsandContingencies", "shortName": "Commitments and Contingencies", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R26": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:BusinessCombinationDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000026 - Disclosure - Business Combinations", "menuCat": "Notes", "order": "26", "role": "http://installedbuildingproducts.com/role/BusinessCombinations", "shortName": "Business Combinations", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:BusinessCombinationDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R27": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:EarningsPerShareTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000027 - Disclosure - Income Per Common Share", "menuCat": "Notes", "order": "27", "role": "http://installedbuildingproducts.com/role/IncomePerCommonShare", "shortName": "Income Per Common Share", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:EarningsPerShareTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R28": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SubsequentEventsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000028 - Disclosure - Subsequent Events", "menuCat": "Notes", "order": "28", "role": "http://installedbuildingproducts.com/role/SubsequentEvents", "shortName": "Subsequent Events", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SubsequentEventsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R29": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ConsolidationPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000029 - Disclosure - Significant Accounting Policies (Policies)", "menuCat": "Policies", "order": "29", "role": "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesPolicies", "shortName": "Significant Accounting Policies (Policies)", "subGroupType": "policies", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ConsolidationPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R3": { "firstAnchor": { "ancestors": [ "span", "div", "td", "tr", "table", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "if49538193b454f9c8f32ff377b3cb357_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "0000003 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS (UNAUDITED) (Parenthetical)", "menuCat": "Statements", "order": "3", "role": "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITEDParenthetical", "shortName": "CONDENSED CONSOLIDATED BALANCE SHEETS (UNAUDITED) (Parenthetical)", "subGroupType": "parenthetical", "uniqueAnchor": { "ancestors": [ "span", "div", "td", "tr", "table", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "if49538193b454f9c8f32ff377b3cb357_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R30": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000030 - Disclosure - Significant Accounting Policies (Tables)", "menuCat": "Tables", "order": "30", "role": "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesTables", "shortName": "Significant Accounting Policies (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R31": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000031 - Disclosure - Revenue Recognition (Tables)", "menuCat": "Tables", "order": "31", "role": "http://installedbuildingproducts.com/role/RevenueRecognitionTables", "shortName": "Revenue Recognition (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R32": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000032 - Disclosure - Credit Losses (Tables)", "menuCat": "Tables", "order": "32", "role": "http://installedbuildingproducts.com/role/CreditLossesTables", "shortName": "Credit Losses (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R33": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfGoodwillTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000033 - Disclosure - Goodwill and Intangibles (Tables)", "menuCat": "Tables", "order": "33", "role": "http://installedbuildingproducts.com/role/GoodwillandIntangiblesTables", "shortName": "Goodwill and Intangibles (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfGoodwillTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R34": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfDebtTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000034 - Disclosure - Long-Term Debt (Tables)", "menuCat": "Tables", "order": "34", "role": "http://installedbuildingproducts.com/role/LongTermDebtTables", "shortName": "Long-Term Debt (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfDebtTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R35": { "firstAnchor": { "ancestors": [ "ix:continuation", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "ibp:AssetsAndLiabilitiesLesseeTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000035 - Disclosure - Leases (Tables)", "menuCat": "Tables", "order": "35", "role": "http://installedbuildingproducts.com/role/LeasesTables", "shortName": "Leases (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "ibp:AssetsAndLiabilitiesLesseeTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R36": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000036 - Disclosure - Fair Value Measurements (Tables)", "menuCat": "Tables", "order": "36", "role": "http://installedbuildingproducts.com/role/FairValueMeasurementsTables", "shortName": "Fair Value Measurements (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R37": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000037 - Disclosure - Information on Segments (Tables)", "menuCat": "Tables", "order": "37", "role": "http://installedbuildingproducts.com/role/InformationonSegmentsTables", "shortName": "Information on Segments (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R38": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfNotionalAmountsOfOutstandingDerivativePositionsTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000038 - Disclosure - Derivative and Hedging Activities (Tables)", "menuCat": "Tables", "order": "38", "role": "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesTables", "shortName": "Derivative and Hedging Activities (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfNotionalAmountsOfOutstandingDerivativePositionsTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R39": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DividendsDeclaredTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000039 - Disclosure - Stockholders' Equity (Tables)", "menuCat": "Tables", "order": "39", "role": "http://installedbuildingproducts.com/role/StockholdersEquityTables", "shortName": "Stockholders' Equity (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DividendsDeclaredTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R4": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "0000004 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME (UNAUDITED)", "menuCat": "Statements", "order": "4", "role": "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITED", "shortName": "CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME (UNAUDITED)", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": "-3", "lang": "en-US", "name": "us-gaap:CostOfGoodsAndServicesSold", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R40": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "ibp:ScheduleOfEmployeeRelatedLiabilitiesTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000040 - Disclosure - Employee Benefits (Tables)", "menuCat": "Tables", "order": "40", "role": "http://installedbuildingproducts.com/role/EmployeeBenefitsTables", "shortName": "Employee Benefits (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "ibp:ScheduleOfEmployeeRelatedLiabilitiesTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R41": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfRelatedPartyTransactionsTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000041 - Disclosure - Related Party Transactions (Tables)", "menuCat": "Tables", "order": "41", "role": "http://installedbuildingproducts.com/role/RelatedPartyTransactionsTables", "shortName": "Related Party Transactions (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfRelatedPartyTransactionsTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R42": { "firstAnchor": { "ancestors": [ "div", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "ibp:ScheduleOfAccruedInsuranceReservesTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000042 - Disclosure - Commitments and Contingencies (Tables)", "menuCat": "Tables", "order": "42", "role": "http://installedbuildingproducts.com/role/CommitmentsandContingenciesTables", "shortName": "Commitments and Contingencies (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "div", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "ibp:ScheduleOfAccruedInsuranceReservesTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R43": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000043 - Disclosure - Business Combinations (Tables)", "menuCat": "Tables", "order": "43", "role": "http://installedbuildingproducts.com/role/BusinessCombinationsTables", "shortName": "Business Combinations (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R44": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "if49538193b454f9c8f32ff377b3cb357_I20230331", "decimals": "0", "first": true, "lang": "en-US", "name": "ibp:NumberOfLocationsInOperation", "reportCount": 1, "unique": true, "unitRef": "location", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000044 - Disclosure - Organization - Additional Information (Details)", "menuCat": "Details", "order": "44", "role": "http://installedbuildingproducts.com/role/OrganizationAdditionalInformationDetails", "shortName": "Organization - Additional Information (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "if49538193b454f9c8f32ff377b3cb357_I20230331", "decimals": "0", "first": true, "lang": "en-US", "name": "ibp:NumberOfLocationsInOperation", "reportCount": 1, "unique": true, "unitRef": "location", "xsiNil": "false" } }, "R45": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": "-5", "first": true, "lang": "en-US", "name": "us-gaap:ContractWithCustomerLiabilityRevenueRecognized", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000045 - Disclosure - Revenue Recognition - Additional Information (Details)", "menuCat": "Details", "order": "45", "role": "http://installedbuildingproducts.com/role/RevenueRecognitionAdditionalInformationDetails", "shortName": "Revenue Recognition - Additional Information (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": "-5", "first": true, "lang": "en-US", "name": "us-gaap:ContractWithCustomerLiabilityRevenueRecognized", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R46": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000046 - Disclosure - Revenue Recognition - Summary of Revenues Disaggregated by End Market and Product (Details)", "menuCat": "Details", "order": "46", "role": "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetails", "shortName": "Revenue Recognition - Summary of Revenues Disaggregated by End Market and Product (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i1293cfc164fc41f3898672ec575f781d_D20230101-20230331", "decimals": "2", "lang": "en-US", "name": "us-gaap:ConcentrationRiskPercentage1", "reportCount": 1, "unique": true, "unitRef": "number", "xsiNil": "false" } }, "R47": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "if49538193b454f9c8f32ff377b3cb357_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:ContractWithCustomerAssetNet", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000047 - Disclosure - Revenue Recognition - Summary of Assets and Liabilities Related to Uncompleted Contracts and Customer Deposits (Details)", "menuCat": "Details", "order": "47", "role": "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofAssetsandLiabilitiesRelatedtoUncompletedContractsandCustomerDepositsDetails", "shortName": "Revenue Recognition - Summary of Assets and Liabilities Related to Uncompleted Contracts and Customer Deposits (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "if49538193b454f9c8f32ff377b3cb357_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:ContractWithCustomerAssetNet", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R48": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "ibp:CostsAndEstimatedEarningsOnUncompletedContractsTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "if49538193b454f9c8f32ff377b3cb357_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "ibp:CostsIncurredOnUncompletedContracts", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000048 - Disclosure - Revenue Recognition - Schedule of Cost and Estimated Earnings on Uncompleted Contracts (Details)", "menuCat": "Details", "order": "48", "role": "http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofCostandEstimatedEarningsonUncompletedContractsDetails", "shortName": "Revenue Recognition - Schedule of Cost and Estimated Earnings on Uncompleted Contracts (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "ibp:CostsAndEstimatedEarningsOnUncompletedContractsTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "if49538193b454f9c8f32ff377b3cb357_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "ibp:CostsIncurredOnUncompletedContracts", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R49": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:CostsInExcessOfBillingsAndBillingsInExcessOfCostsTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "if49538193b454f9c8f32ff377b3cb357_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "ibp:CostsAndEstimatedEarningsInExcessOfBillingOnUncompletedContracts", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000049 - Disclosure - Revenue Recognition - Schedule of Net Under (Over) Billings (Details)", "menuCat": "Details", "order": "49", "role": "http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofNetUnderOverBillingsDetails", "shortName": "Revenue Recognition - Schedule of Net Under (Over) Billings (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:CostsInExcessOfBillingsAndBillingsInExcessOfCostsTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "if49538193b454f9c8f32ff377b3cb357_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "ibp:CostsAndEstimatedEarningsInExcessOfBillingOnUncompletedContracts", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R5": { "firstAnchor": { "ancestors": [ "span", "div", "td", "tr", "table", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "0000005 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME (UNAUDITED) (Parenthetical)", "menuCat": "Statements", "order": "5", "role": "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITEDParenthetical", "shortName": "CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME (UNAUDITED) (Parenthetical)", "subGroupType": "parenthetical", "uniqueAnchor": { "ancestors": [ "span", "div", "td", "tr", "table", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R50": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "ie994fee171144c028efdeac1cf9e8422_I20221231", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:AllowanceForDoubtfulAccountsReceivable", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000050 - Disclosure - Credit Losses (Details)", "menuCat": "Details", "order": "50", "role": "http://installedbuildingproducts.com/role/CreditLossesDetails", "shortName": "Credit Losses (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "ie994fee171144c028efdeac1cf9e8422_I20221231", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:AllowanceForDoubtfulAccountsReceivable", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R51": { "firstAnchor": { "ancestors": [ "ix:continuation", "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "if49538193b454f9c8f32ff377b3cb357_I20230331", "decimals": "-5", "first": true, "lang": "en-US", "name": "us-gaap:MoneyMarketFundsAtCarryingValue", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000051 - Disclosure - Investments and Cash and Cash Equivalents (Details)", "menuCat": "Details", "order": "51", "role": "http://installedbuildingproducts.com/role/InvestmentsandCashandCashEquivalentsDetails", "shortName": "Investments and Cash and Cash Equivalents (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "ix:continuation", "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "if49538193b454f9c8f32ff377b3cb357_I20230331", "decimals": "-5", "first": true, "lang": "en-US", "name": "us-gaap:MoneyMarketFundsAtCarryingValue", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R52": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfGoodwillTextBlock", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "ie994fee171144c028efdeac1cf9e8422_I20221231", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:GoodwillGross", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000052 - Disclosure - Goodwill and Intangibles - Summary of Change in Carrying Amount of Goodwill (Details)", "menuCat": "Details", "order": "52", "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-20230331.htm", "contextRef": "ie994fee171144c028efdeac1cf9e8422_I20221231", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:GoodwillGross", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R53": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "if49538193b454f9c8f32ff377b3cb357_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000053 - Disclosure - Goodwill and Intangibles - Schedule of Gross Carrying Amount and Accumulated Amortization (Details)", "menuCat": "Details", "order": "53", "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-20230331.htm", "contextRef": "if49538193b454f9c8f32ff377b3cb357_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R54": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": "-5", "first": true, "lang": "en-US", "name": "us-gaap:FiniteLivedIntangibleAssetsPeriodIncreaseDecrease", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000054 - Disclosure - Goodwill and Intangibles - Additional Information (Details)", "menuCat": "Details", "order": "54", "role": "http://installedbuildingproducts.com/role/GoodwillandIntangiblesAdditionalInformationDetails", "shortName": "Goodwill and Intangibles - Additional Information (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": "-5", "first": true, "lang": "en-US", "name": "us-gaap:FiniteLivedIntangibleAssetsPeriodIncreaseDecrease", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R55": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "if49538193b454f9c8f32ff377b3cb357_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000055 - Disclosure - Goodwill and Intangibles - Schedule of Estimated Aggregate Annual Amortization (Details)", "menuCat": "Details", "order": "55", "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", "div", "us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "if49538193b454f9c8f32ff377b3cb357_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R56": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfDebtTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "if49538193b454f9c8f32ff377b3cb357_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:LongTermDebt", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000056 - Disclosure - Long-Term Debt - Schedule of Debt (Details)", "menuCat": "Details", "order": "56", "role": "http://installedbuildingproducts.com/role/LongTermDebtScheduleofDebtDetails", "shortName": "Long-Term Debt - Schedule of Debt (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfDebtTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "if49538193b454f9c8f32ff377b3cb357_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:LongTermDebt", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R57": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "if49538193b454f9c8f32ff377b3cb357_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000057 - Disclosure - Long-Term Debt - Schedule Of Maturities Of Long Term Debt (Details)", "menuCat": "Details", "order": "57", "role": "http://installedbuildingproducts.com/role/LongTermDebtScheduleOfMaturitiesOfLongTermDebtDetails", "shortName": "Long-Term Debt - Schedule Of Maturities Of Long Term Debt (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "if49538193b454f9c8f32ff377b3cb357_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R58": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "ibp:AssetsAndLiabilitiesLesseeTableTextBlock", "ix:continuation", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "if49538193b454f9c8f32ff377b3cb357_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:OperatingLeaseRightOfUseAsset", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000058 - Disclosure - Leases - Schedule of Supplemental Balance Sheet Information Related To Leases (Details)", "menuCat": "Details", "order": "58", "role": "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails", "shortName": "Leases - Schedule of Supplemental Balance Sheet Information Related To Leases (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "ibp:AssetsAndLiabilitiesLesseeTableTextBlock", "ix:continuation", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "if49538193b454f9c8f32ff377b3cb357_I20230331", "decimals": "-3", "lang": "en-US", "name": "us-gaap:FinanceLeaseRightOfUseAsset", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R59": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:LeaseCostTableTextBlock", "ix:continuation", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:OperatingLeaseCost", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000059 - Disclosure - Leases - Lease Costs (Details)", "menuCat": "Details", "order": "59", "role": "http://installedbuildingproducts.com/role/LeasesLeaseCostsDetails", "shortName": "Leases - Lease Costs (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:LeaseCostTableTextBlock", "ix:continuation", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:OperatingLeaseCost", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R6": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i3795b492a3ff4b7090bef02da3140d38_I20211231", "decimals": "INF", "first": true, "lang": "en-US", "name": "us-gaap:CommonStockSharesIssued", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "0000006 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY (UNAUDITED)", "menuCat": "Statements", "order": "6", "role": "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYUNAUDITED", "shortName": "CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY (UNAUDITED)", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i3795b492a3ff4b7090bef02da3140d38_I20211231", "decimals": "INF", "first": true, "lang": "en-US", "name": "us-gaap:CommonStockSharesIssued", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" } }, "R60": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:OperatingLeasePayments", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000060 - Disclosure - Leases - Other Information (Details)", "menuCat": "Details", "order": "60", "role": "http://installedbuildingproducts.com/role/LeasesOtherInformationDetails", "shortName": "Leases - Other Information (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:OperatingLeasePayments", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R61": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "us-gaap:FinanceLeaseLiabilityMaturityTableTextBlock", "ix:continuation", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "if49538193b454f9c8f32ff377b3cb357_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:FinanceLeaseLiabilityPaymentsRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000061 - Disclosure - Leases - Undiscounted Cash Flows (Details)", "menuCat": "Details", "order": "61", "role": "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails", "shortName": "Leases - Undiscounted Cash Flows (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "us-gaap:FinanceLeaseLiabilityMaturityTableTextBlock", "ix:continuation", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "if49538193b454f9c8f32ff377b3cb357_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:FinanceLeaseLiabilityPaymentsRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R62": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "if49538193b454f9c8f32ff377b3cb357_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:CashAndCashEquivalentsFairValueDisclosure", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000062 - Disclosure - Fair Value Measurements - Schedule of Fair Values of Financial Assets and Liabilities (Details)", "menuCat": "Details", "order": "62", "role": "http://installedbuildingproducts.com/role/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetails", "shortName": "Fair Value Measurements - Schedule of Fair Values of Financial Assets and Liabilities (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "if49538193b454f9c8f32ff377b3cb357_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:CashAndCashEquivalentsFairValueDisclosure", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R63": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "ie994fee171144c028efdeac1cf9e8422_I20221231", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000063 - Disclosure - Fair Value Measurements - Summary of Change in Fair Value of Contingent Consideration (Details)", "menuCat": "Details", "order": "63", "role": "http://installedbuildingproducts.com/role/FairValueMeasurementsSummaryofChangeinFairValueofContingentConsiderationDetails", "shortName": "Fair Value Measurements - Summary of Change in Fair Value of Contingent Consideration (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "ie994fee171144c028efdeac1cf9e8422_I20221231", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R64": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i411710e25a85449b888c4215134c977d_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:LongTermDebtFairValue", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000064 - Disclosure - Fair Value Measurements - Summary of Carrying Values and Associated Fair Values of Financial Assets and Liabilities (Details)", "menuCat": "Details", "order": "64", "role": "http://installedbuildingproducts.com/role/FairValueMeasurementsSummaryofCarryingValuesandAssociatedFairValuesofFinancialAssetsandLiabilitiesDetails", "shortName": "Fair Value Measurements - Summary of Carrying Values and Associated Fair Values of Financial Assets and Liabilities (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i411710e25a85449b888c4215134c977d_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:LongTermDebtFairValue", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R65": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": "INF", "first": true, "lang": "en-US", "name": "us-gaap:NumberOfOperatingSegments", "reportCount": 1, "unitRef": "segment", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000065 - Disclosure - Information on Segments (Details)", "menuCat": "Details", "order": "65", "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-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": "-3", "lang": "en-US", "name": "us-gaap:CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R66": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfNotionalAmountsOfOutstandingDerivativePositionsTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i7ea7d689f2f048f89004f73eca45cfa2_I20230331", "decimals": "-5", "first": true, "lang": "en-US", "name": "us-gaap:DerivativeNotionalAmount", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000066 - Disclosure - Derivative and Hedging Activities - Open Interest Swap Contract Summary (Details)", "menuCat": "Details", "order": "66", "role": "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesOpenInterestSwapContractSummaryDetails", "shortName": "Derivative and Hedging Activities - Open Interest Swap Contract Summary (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfNotionalAmountsOfOutstandingDerivativePositionsTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i7ea7d689f2f048f89004f73eca45cfa2_I20230331", "decimals": "-5", "first": true, "lang": "en-US", "name": "us-gaap:DerivativeNotionalAmount", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R67": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i25cf54b4ffb2492ba6c3f5d7d464b7af_I20200831", "decimals": "INF", "first": true, "lang": "en-US", "name": "ibp:NumberOfSwaps", "reportCount": 1, "unique": true, "unitRef": "swap", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000067 - Disclosure - Derivative and Hedging Activities - Narrative (Details)", "menuCat": "Details", "order": "67", "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-20230331.htm", "contextRef": "i25cf54b4ffb2492ba6c3f5d7d464b7af_I20200831", "decimals": "INF", "first": true, "lang": "en-US", "name": "ibp:NumberOfSwaps", "reportCount": 1, "unique": true, "unitRef": "swap", "xsiNil": "false" } }, "R68": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i77f31c2eb3844e9a89ceecbb83fd38e9_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "ibp:OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForSettlementBeforeTax", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000068 - Disclosure - Derivative and Hedging Activities - Interest Rate Swap Summary (Details)", "menuCat": "Details", "order": "68", "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-20230331.htm", "contextRef": "i77f31c2eb3844e9a89ceecbb83fd38e9_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "ibp:OtherComprehensiveIncomeLossCashFlowHedgeReclassificationForSettlementBeforeTax", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R69": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "ie994fee171144c028efdeac1cf9e8422_I20221231", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:StockholdersEquity", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000069 - Disclosure - Stockholders' Equity - Change in AOCI (Details)", "menuCat": "Details", "order": "69", "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-20230331.htm", "contextRef": "i73b0e2b356f84a13b1c86611553b14e2_I20221231", "decimals": "-3", "lang": "en-US", "name": "us-gaap:StockholdersEquity", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R7": { "firstAnchor": { "ancestors": [ "span", "div", "td", "tr", "table", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": "INF", "first": true, "lang": "en-US", "name": "us-gaap:CommonStockDividendsPerShareDeclared", "reportCount": 1, "unitRef": "usdPerShare", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "0000007 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY (UNAUDITED) (Parenthetical)", "menuCat": "Statements", "order": "7", "role": "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYUNAUDITEDParenthetical", "shortName": "CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY (UNAUDITED) (Parenthetical)", "subGroupType": "parenthetical", "uniqueAnchor": null }, "R70": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:TreasuryStockSharesAcquired", "reportCount": 1, "unitRef": "shares", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000070 - Disclosure - Stockholders' Equity - Additional Information (Details)", "menuCat": "Details", "order": "70", "role": "http://installedbuildingproducts.com/role/StockholdersEquityAdditionalInformationDetails", "shortName": "Stockholders' Equity - Additional Information (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": "2", "lang": "en-US", "name": "us-gaap:TreasuryStockAcquiredAverageCostPerShare", "reportCount": 1, "unique": true, "unitRef": "usdPerShare", "xsiNil": "false" } }, "R71": { "firstAnchor": { "ancestors": [ "span", "div", "td", "tr", "table", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": "INF", "first": true, "lang": "en-US", "name": "us-gaap:CommonStockDividendsPerShareDeclared", "reportCount": 1, "unitRef": "usdPerShare", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000071 - Disclosure - Stockholders' Equity - Cash Dividends (Details)", "menuCat": "Details", "order": "71", "role": "http://installedbuildingproducts.com/role/StockholdersEquityCashDividendsDetails", "shortName": "Stockholders' Equity - Cash Dividends (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:DividendsDeclaredTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i820bba7c09924bf9ae0464081aef5470_D20230222-20230222", "decimals": "2", "lang": "en-US", "name": "us-gaap:CommonStockDividendsPerShareDeclared", "reportCount": 1, "unique": true, "unitRef": "usdPerShare", "xsiNil": "false" } }, "R72": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": "-5", "first": true, "lang": "en-US", "name": "ibp:HealthInsuranceExpense", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000072 - Disclosure - Employee Benefits - Additional Information (Details)", "menuCat": "Details", "order": "72", "role": "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetails", "shortName": "Employee Benefits - Additional Information (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": "-5", "first": true, "lang": "en-US", "name": "ibp:HealthInsuranceExpense", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R73": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "if49538193b454f9c8f32ff377b3cb357_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:WorkersCompensationLiabilityCurrent", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000073 - Disclosure - Employee Benefits - Summary of Workers' Compensation Known Claims and IBNR Reserves (Details)", "menuCat": "Details", "order": "73", "role": "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofWorkersCompensationKnownClaimsandIBNRReservesDetails", "shortName": "Employee Benefits - Summary of Workers' Compensation Known Claims and IBNR Reserves (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "if49538193b454f9c8f32ff377b3cb357_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:WorkersCompensationLiabilityCurrent", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R74": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "if49538193b454f9c8f32ff377b3cb357_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:InsuranceSettlementsReceivableNoncurrent", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000074 - Disclosure - Employee Benefits - Schedule of Insurance Receivable for Claims (Details)", "menuCat": "Details", "order": "74", "role": "http://installedbuildingproducts.com/role/EmployeeBenefitsScheduleofInsuranceReceivableforClaimsDetails", "shortName": "Employee Benefits - Schedule of Insurance Receivable for Claims (Details)", "subGroupType": "details", "uniqueAnchor": null }, "R75": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfNonvestedShareActivityTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i045524f26f024036b4fa91193df288d3_I20221231", "decimals": "INF", "first": true, "lang": "en-US", "name": "us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000075 - Disclosure - Employee Benefits - Summary of Equity-Based Awards for Employees (Details)", "menuCat": "Details", "order": "75", "role": "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetails", "shortName": "Employee Benefits - Summary of Equity-Based Awards for Employees (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfNonvestedShareActivityTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i045524f26f024036b4fa91193df288d3_I20221231", "decimals": "INF", "first": true, "lang": "en-US", "name": "us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfShares", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" } }, "R76": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:AllocatedShareBasedCompensationExpense", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000076 - Disclosure - Employee Benefits - Summary of Share-Based Compensation Expense Under the 2014 Omnibus Incentive Plan (Details)", "menuCat": "Details", "order": "76", "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-20230331.htm", "contextRef": "i5036535093e54d1dbce9707f2667b4c6_D20230101-20230331", "decimals": "-3", "lang": "en-US", "name": "us-gaap:AllocatedShareBasedCompensationExpense", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R77": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:AllocatedShareBasedCompensationExpense", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000077 - Disclosure - Employee Benefits - Summary of Stock Compensation Expense (Details)", "menuCat": "Details", "order": "77", "role": "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofStockCompensationExpenseDetails", "shortName": "Employee Benefits - Summary of Stock Compensation Expense (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i7d48151268a344fb900bc7933b0d9acb_D20230101-20230331", "decimals": "-3", "lang": "en-US", "name": "us-gaap:AllocatedShareBasedCompensationExpense", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R78": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "if49538193b454f9c8f32ff377b3cb357_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000078 - Disclosure - Employee Benefits - Unrecognized Share-Based Compensation Expense Related to Unvested Awards (Details)", "menuCat": "Details", "order": "78", "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-20230331.htm", "contextRef": "if49538193b454f9c8f32ff377b3cb357_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R79": { "firstAnchor": { "ancestors": [ "ix:continuation", "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i9e4d845521094abeaf8642a893cef986_D20220101-20220331", "decimals": "3", "first": true, "lang": "en-US", "name": "us-gaap:EffectiveIncomeTaxRateContinuingOperations", "reportCount": 1, "unique": true, "unitRef": "number", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000079 - Disclosure - Income Taxes (Details)", "menuCat": "Details", "order": "79", "role": "http://installedbuildingproducts.com/role/IncomeTaxesDetails", "shortName": "Income Taxes (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "ix:continuation", "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i9e4d845521094abeaf8642a893cef986_D20220101-20220331", "decimals": "3", "first": true, "lang": "en-US", "name": "us-gaap:EffectiveIncomeTaxRateContinuingOperations", "reportCount": 1, "unique": true, "unitRef": "number", "xsiNil": "false" } }, "R8": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:ProfitLoss", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "0000008 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS (UNAUDITED)", "menuCat": "Statements", "order": "8", "role": "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED", "shortName": "CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS (UNAUDITED)", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:ProfitLoss", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R80": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfRelatedPartyTransactionsTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromRelatedParties", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000080 - Disclosure - Related Party Transactions - Schedule of Related Party Transactions (Details)", "menuCat": "Details", "order": "80", "role": "http://installedbuildingproducts.com/role/RelatedPartyTransactionsScheduleofRelatedPartyTransactionsDetails", "shortName": "Related Party Transactions - Schedule of Related Party Transactions (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfRelatedPartyTransactionsTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": "-3", "lang": "en-US", "name": "us-gaap:RelatedPartyTransactionPurchasesFromRelatedParty", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R81": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "if49538193b454f9c8f32ff377b3cb357_I20230331", "decimals": "-5", "first": true, "lang": "en-US", "name": "us-gaap:AccountsReceivableRelatedPartiesCurrent", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000081 - Disclosure - Related Party Transactions - Additional Information (Details)", "menuCat": "Details", "order": "81", "role": "http://installedbuildingproducts.com/role/RelatedPartyTransactionsAdditionalInformationDetails", "shortName": "Related Party Transactions - Additional Information (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "if49538193b454f9c8f32ff377b3cb357_I20230331", "decimals": "-5", "first": true, "lang": "en-US", "name": "us-gaap:AccountsReceivableRelatedPartiesCurrent", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R82": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "ibp:ScheduleOfAccruedInsuranceReservesTableTextBlock", "div", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "if49538193b454f9c8f32ff377b3cb357_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:AccruedInsuranceCurrent", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000082 - Disclosure - Commitments and Contingencies - Schedule of Accrued General Insurance Reserves (Details)", "menuCat": "Details", "order": "82", "role": "http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofAccruedGeneralInsuranceReservesDetails", "shortName": "Commitments and Contingencies - Schedule of Accrued General Insurance Reserves (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "ibp:ScheduleOfAccruedInsuranceReservesTableTextBlock", "div", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "if49538193b454f9c8f32ff377b3cb357_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:AccruedInsuranceCurrent", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R83": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "if49538193b454f9c8f32ff377b3cb357_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:InsuranceSettlementsReceivableNoncurrent", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000083 - Disclosure - Commitments and Contingencies - Schedule of Insurance Receivable for Claims (Details)", "menuCat": "Details", "order": "83", "role": "http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofInsuranceReceivableforClaimsDetails", "shortName": "Commitments and Contingencies - Schedule of Insurance Receivable for Claims (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "ibp:InsuranceReceivableClaimsTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "ic0bf4a5b6cb04a6ba2c9df7818a714d9_I20230331", "decimals": "-3", "lang": "en-US", "name": "ibp:InsuranceReceivableAndIndemnificationAssetForClaimsUnderFullyInsuredPolicy", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R84": { "firstAnchor": { "ancestors": [ "ix:continuation", "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "if49538193b454f9c8f32ff377b3cb357_I20230331", "decimals": "-5", "first": true, "lang": "en-US", "name": "ibp:PurchaseObligationPoundsToBePurchasedRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "aluminumpound", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000084 - Disclosure - Commitments and Contingencies - Additional Information (Details)", "menuCat": "Details", "order": "84", "role": "http://installedbuildingproducts.com/role/CommitmentsandContingenciesAdditionalInformationDetails", "shortName": "Commitments and Contingencies - Additional Information (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "ix:continuation", "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "if49538193b454f9c8f32ff377b3cb357_I20230331", "decimals": "-5", "first": true, "lang": "en-US", "name": "ibp:PurchaseObligationPoundsToBePurchasedRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "aluminumpound", "xsiNil": "false" } }, "R85": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": "INF", "first": true, "lang": "en-US", "name": "us-gaap:NumberOfBusinessesAcquired", "reportCount": 1, "unique": true, "unitRef": "acquistion", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000085 - Disclosure - Business Combinations - Additional Information (Details)", "menuCat": "Details", "order": "85", "role": "http://installedbuildingproducts.com/role/BusinessCombinationsAdditionalInformationDetails", "shortName": "Business Combinations - Additional Information (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": "INF", "first": true, "lang": "en-US", "name": "us-gaap:NumberOfBusinessesAcquired", "reportCount": 1, "unique": true, "unitRef": "acquistion", "xsiNil": "false" } }, "R86": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:PaymentsToAcquireBusinessesGross", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000086 - Disclosure - Business Combinations - Summary of Business Acquisitions (Details)", "menuCat": "Details", "order": "86", "role": "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofBusinessAcquisitionsDetails", "shortName": "Business Combinations - Summary of Business Acquisitions (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": "-3", "lang": "en-US", "name": "us-gaap:BusinessCombinationConsiderationTransferred1", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R87": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfGoodwillTextBlock", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "if49538193b454f9c8f32ff377b3cb357_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:Goodwill", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000087 - Disclosure - Business Combinations - Summary of Estimated Fair Value of Assets Acquired and Liabilities Assumed (Details)", "menuCat": "Details", "order": "87", "role": "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetails", "shortName": "Business Combinations - Summary of Estimated Fair Value of Assets Acquired and Liabilities Assumed (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "ibb34a59424694134b740198120baf85f_I20230331", "decimals": "-3", "lang": "en-US", "name": "us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R88": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:FiniteLivedAndIndefiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i84f95aa8ba1d4cbc822d19bef8ae78a7_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:FinitelivedIntangibleAssetsAcquired1", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000088 - Disclosure - Business Combinations - Estimates of Acquired Intangible Assets (Details)", "menuCat": "Details", "order": "88", "role": "http://installedbuildingproducts.com/role/BusinessCombinationsEstimatesofAcquiredIntangibleAssetsDetails", "shortName": "Business Combinations - Estimates of Acquired Intangible Assets (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:FiniteLivedAndIndefiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i84f95aa8ba1d4cbc822d19bef8ae78a7_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:FinitelivedIntangibleAssetsAcquired1", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R89": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:BusinessAcquisitionsProFormaRevenue", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000089 - Disclosure - Business Combinations - Pro Forma Results of Operations (Details)", "menuCat": "Details", "order": "89", "role": "http://installedbuildingproducts.com/role/BusinessCombinationsProFormaResultsofOperationsDetails", "shortName": "Business Combinations - Pro Forma Results of Operations (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:BusinessAcquisitionsProFormaRevenue", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R9": { "firstAnchor": { "ancestors": [ "span", "div", "td", "tr", "table", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:CashAcquiredFromAcquisition", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "0000009 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS (UNAUDITED) (Parenthetical)", "menuCat": "Statements", "order": "9", "role": "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITEDParenthetical", "shortName": "CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS (UNAUDITED) (Parenthetical)", "subGroupType": "parenthetical", "uniqueAnchor": { "ancestors": [ "span", "div", "td", "tr", "table", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:CashAcquiredFromAcquisition", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R90": { "firstAnchor": { "ancestors": [ "ix:continuation", "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000090 - Disclosure - Income Per Common Share - Additional Information (Details)", "menuCat": "Details", "order": "90", "role": "http://installedbuildingproducts.com/role/IncomePerCommonShareAdditionalInformationDetails", "shortName": "Income Per Common Share - Additional Information (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "ix:continuation", "span", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" } }, "R91": { "firstAnchor": { "ancestors": [ "span", "div", "td", "tr", "table", "div", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i4b70011b451c4e4cbd6c1ad320c4688b_D20230101-20230331", "decimals": "INF", "first": true, "lang": "en-US", "name": "us-gaap:CommonStockDividendsPerShareDeclared", "reportCount": 1, "unitRef": "usdPerShare", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000091 - Disclosure - Subsequent Events (Details)", "menuCat": "Details", "order": "91", "role": "http://installedbuildingproducts.com/role/SubsequentEventsDetails", "shortName": "Subsequent Events (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "ibp-20230331.htm", "contextRef": "i2a490033a8894168864535d53f653207_D20230504-20230504", "decimals": "INF", "lang": "en-US", "name": "us-gaap:CommonStockDividendsPerShareDeclared", "reportCount": 1, "unique": true, "unitRef": "usdPerShare", "xsiNil": "false" } } }, "segmentCount": 89, "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_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_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_DocumentQuarterlyReport": { "auth_ref": [ "r688" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true only for a form used as an quarterly report.", "label": "Document Quarterly Report", "terseLabel": "Document Quarterly Report" } } }, "localname": "DocumentQuarterlyReport", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://installedbuildingproducts.com/role/CoverPage" ], "xbrltype": "booleanItemType" }, "dei_DocumentTransitionReport": { "auth_ref": [ "r689" ], "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_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": [ "r686" ], "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": [ "r686" ], "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": [ "r686" ], "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": [ "r690" ], "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_EntityRegistrantName": { "auth_ref": [ "r686" ], "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": [ "r686" ], "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": [ "r686" ], "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": [ "r686" ], "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_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": [ "r685" ], "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": [ "r687" ], "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_A2023AcquisitionsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "2023 Acquisitions", "label": "2023 Acquisitions [Member]", "terseLabel": "2023 Acquisitions" } } }, "localname": "A2023AcquisitionsMember", "nsuri": "http://installedbuildingproducts.com/20230331", "presentation": [ "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetails" ], "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/SubsequentEventsDetails" ], "xbrltype": "domainItemType" }, "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/InformationonSegmentsDetails" ], "xbrltype": "percentItemType" }, "ibp_AnchorMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Anchor", "label": "Anchor [Member]", "terseLabel": "Anchor" } } }, "localname": "AnchorMember", "nsuri": "http://installedbuildingproducts.com/20230331", "presentation": [ "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofBusinessAcquisitionsDetails", "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetails" ], "xbrltype": "domainItemType" }, "ibp_AssetsAndLiabilitiesLesseeTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Assets And Liabilities, Lessee", "label": "Assets And Liabilities, Lessee [Table Text Block]", "terseLabel": "Schedule of Lease-Related Assets and Liabilities" } } }, "localname": "AssetsAndLiabilitiesLesseeTableTextBlock", "nsuri": "http://installedbuildingproducts.com/20230331", "presentation": [ "http://installedbuildingproducts.com/role/LeasesTables" ], "xbrltype": "textBlockItemType" }, "ibp_BillingsInExcessOfCostOnUncompletedContracts": { "auth_ref": [], "calculation": { "http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofNetUnderOverBillingsDetails": { "order": 1.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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofNetUnderOverBillingsDetails" ], "xbrltype": "monetaryItemType" }, "ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccountsPayableAndOtherCurrentLiabilities": { "auth_ref": [], "calculation": { "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetails": { "order": 8.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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetails" ], "xbrltype": "monetaryItemType" }, "ibp_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset": { "auth_ref": [], "calculation": { "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetails": { "order": 11.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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetails" ], "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/LeasesOtherInformationDetails" ], "xbrltype": "stringItemType" }, "ibp_CommercialMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Commercial.", "label": "Commercial [Member]", "terseLabel": "Commercial" } } }, "localname": "CommercialMember", "nsuri": "http://installedbuildingproducts.com/20230331", "presentation": [ "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetails" ], "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofInsuranceReceivableforClaimsDetails" ], "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofInsuranceReceivableforClaimsDetails" ], "xbrltype": "stringItemType" }, "ibp_CommonStockAwardsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Common stock awards.", "label": "Common Stock Awards [Member]", "terseLabel": "Common\u00a0Stock\u00a0Awards" } } }, "localname": "CommonStockAwardsMember", "nsuri": "http://installedbuildingproducts.com/20230331", "presentation": [ "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetails", "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetails", "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofShareBasedCompensationExpenseUnderthe2014OmnibusIncentivePlanDetails", "http://installedbuildingproducts.com/role/EmployeeBenefitsUnrecognizedShareBasedCompensationExpenseRelatedtoUnvestedAwardsDetails" ], "xbrltype": "domainItemType" }, "ibp_CostAndEstimatedEarningsUnderOverBillingsNet": { "auth_ref": [], "calculation": { "http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofNetUnderOverBillingsDetails": { "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofCostandEstimatedEarningsonUncompletedContractsDetails", "http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofNetUnderOverBillingsDetails" ], "xbrltype": "monetaryItemType" }, "ibp_CostsAndEstimatedEarningsInExcessOfBillingOnUncompletedContracts": { "auth_ref": [], "calculation": { "http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofNetUnderOverBillingsDetails": { "order": 2.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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofNetUnderOverBillingsDetails" ], "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/RevenueRecognitionTables" ], "xbrltype": "textBlockItemType" }, "ibp_CostsIncurredOnUncompletedContracts": { "auth_ref": [], "calculation": { "http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofCostandEstimatedEarningsonUncompletedContractsDetails": { "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofCostandEstimatedEarningsonUncompletedContractsDetails" ], "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/20230331", "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetails" ], "xbrltype": "domainItemType" }, "ibp_DividendOneMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Dividend One", "label": "Dividend One [Member]", "terseLabel": "Dividend One" } } }, "localname": "DividendOneMember", "nsuri": "http://installedbuildingproducts.com/20230331", "presentation": [ "http://installedbuildingproducts.com/role/StockholdersEquityCashDividendsDetails" ], "xbrltype": "domainItemType" }, "ibp_DividendTwoMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Dividend Two", "label": "Dividend Two [Member]", "terseLabel": "Dividend Two" } } }, "localname": "DividendTwoMember", "nsuri": "http://installedbuildingproducts.com/20230331", "presentation": [ "http://installedbuildingproducts.com/role/StockholdersEquityCashDividendsDetails" ], "xbrltype": "domainItemType" }, "ibp_EstimatedEarningsOnLongTermContracts": { "auth_ref": [], "calculation": { "http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofCostandEstimatedEarningsonUncompletedContractsDetails": { "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofCostandEstimatedEarningsonUncompletedContractsDetails" ], "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/FairValueMeasurementsSummaryofChangeinFairValueofContingentConsiderationDetails" ], "xbrltype": "monetaryItemType" }, "ibp_FinanceLeaseExecutoryCosts": { "auth_ref": [], "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails" ], "xbrltype": "monetaryItemType" }, "ibp_FinanceLeaseLiabilityToBePaidAfterYearFour": { "auth_ref": [], "calculation": { "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails": { "order": 5.0, "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Finance Lease, Liability, to be Paid, After Year Four", "label": "Finance Lease, Liability, to be Paid, After Year Four", "terseLabel": "Thereafter" } } }, "localname": "FinanceLeaseLiabilityToBePaidAfterYearFour", "nsuri": "http://installedbuildingproducts.com/20230331", "presentation": [ "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails" ], "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/LeasesLeaseCostsDetails" ], "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "ibp_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFour": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Finite lived intangible assets amortization expense after year four.", "label": "Finite Lived Intangible Assets Amortization Expense After Year Four", "terseLabel": "Thereafter" } } }, "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFour", "nsuri": "http://installedbuildingproducts.com/20230331", "presentation": [ "http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofEstimatedAggregateAnnualAmortizationDetails" ], "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetails" ], "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/FairValueMeasurementsSummaryofCarryingValuesandAssociatedFairValuesofFinancialAssetsandLiabilitiesDetails", "http://installedbuildingproducts.com/role/LongTermDebtScheduleofDebtDetails" ], "xbrltype": "domainItemType" }, "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails" ], "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails" ], "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetails" ], "xbrltype": "domainItemType" }, "ibp_GrossProfitExcludingDepreciationAmortizationAndDepletion": { "auth_ref": [], "calculation": { "http://installedbuildingproducts.com/role/InformationonSegmentsDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "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/20230331", "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetails" ], "xbrltype": "monetaryItemType" }, "ibp_InstallationSegmentMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Installation Segment", "label": "Installation Segment [Member]", "terseLabel": "Installation" } } }, "localname": "InstallationSegmentMember", "nsuri": "http://installedbuildingproducts.com/20230331", "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetails" ], "xbrltype": "domainItemType" }, "ibp_InsuranceReceivableAndIndemnificationAssetForClaimsUnderFullyInsuredPolicy": { "auth_ref": [], "calculation": { "http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofInsuranceReceivableforClaimsDetails": { "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofInsuranceReceivableforClaimsDetails" ], "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/CommitmentsandContingenciesTables" ], "xbrltype": "textBlockItemType" }, "ibp_InsuranceReceivableForClaimsExceedingStopLossLimit": { "auth_ref": [], "calculation": { "http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofInsuranceReceivableforClaimsDetails": { "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofInsuranceReceivableforClaimsDetails" ], "xbrltype": "monetaryItemType" }, "ibp_InterestPeriodAxis": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Interest Period", "label": "Interest Period [Axis]", "terseLabel": "Interest Period [Axis]" } } }, "localname": "InterestPeriodAxis", "nsuri": "http://installedbuildingproducts.com/20230331", "presentation": [ "http://installedbuildingproducts.com/role/SubsequentEventsDetails" ], "xbrltype": "stringItemType" }, "ibp_InterestPeriodDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Interest Period [Domain]", "label": "Interest Period [Domain]", "terseLabel": "Interest Period [Domain]" } } }, "localname": "InterestPeriodDomain", "nsuri": "http://installedbuildingproducts.com/20230331", "presentation": [ "http://installedbuildingproducts.com/role/SubsequentEventsDetails" ], "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/20230331", "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/20230331", "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/20230331", "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/20230331", "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/20230331", "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/20230331", "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/20230331", "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/20230331", "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails" ], "xbrltype": "stringItemType" }, "ibp_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour": { "auth_ref": [], "calculation": { "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails": { "order": 2.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Lessee, Operating Lease, Liability, to be Paid, After Year Four", "label": "Lessee, Operating Lease, Liability, to be Paid, After Year Four", "terseLabel": "Thereafter" } } }, "localname": "LesseeOperatingLeaseLiabilityToBePaidAfterYearFour", "nsuri": "http://installedbuildingproducts.com/20230331", "presentation": [ "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails" ], "xbrltype": "monetaryItemType" }, "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetails", "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofShareBasedCompensationExpenseUnderthe2014OmnibusIncentivePlanDetails" ], "xbrltype": "domainItemType" }, "ibp_LongTermDebtMaturityAfterYearFour": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Long-Term Debt, Maturity, After Year Four", "label": "Long-Term Debt, Maturity, After Year Four", "terseLabel": "Thereafter" } } }, "localname": "LongTermDebtMaturityAfterYearFour", "nsuri": "http://installedbuildingproducts.com/20230331", "presentation": [ "http://installedbuildingproducts.com/role/LongTermDebtScheduleOfMaturitiesOfLongTermDebtDetails" ], "xbrltype": "monetaryItemType" }, "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails" ], "xbrltype": "stringItemType" }, "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails" ], "xbrltype": "stringItemType" }, "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/OrganizationAdditionalInformationDetails" ], "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesNarrativeDetails" ], "xbrltype": "integerItemType" }, "ibp_OneMonthMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "One Month", "label": "One Month [Member]", "terseLabel": "One Month" } } }, "localname": "OneMonthMember", "nsuri": "http://installedbuildingproducts.com/20230331", "presentation": [ "http://installedbuildingproducts.com/role/SubsequentEventsDetails" ], "xbrltype": "domainItemType" }, "ibp_OperatingLeaseExecutoryCost": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Operating Lease Executory Cost", "label": "Operating Lease Executory Cost", "negatedTerseLabel": "Operating Lease Executory Cost" } } }, "localname": "OperatingLeaseExecutoryCost", "nsuri": "http://installedbuildingproducts.com/20230331", "presentation": [ "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails" ], "xbrltype": "monetaryItemType" }, "ibp_OperatingLeaseMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Operating Lease", "label": "Operating Lease [Member]", "terseLabel": "Operating Lease" } } }, "localname": "OperatingLeaseMember", "nsuri": "http://installedbuildingproducts.com/20230331", "presentation": [ "http://installedbuildingproducts.com/role/LeasesLeaseCostsDetails" ], "xbrltype": "domainItemType" }, "ibp_OtherAcquisitionsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Other Acquisitions", "label": "Other Acquisitions [Member]", "terseLabel": "Other" } } }, "localname": "OtherAcquisitionsMember", "nsuri": "http://installedbuildingproducts.com/20230331", "presentation": [ "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofBusinessAcquisitionsDetails", "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetails" ], "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetails" ], "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/20230331", "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetails" ], "xbrltype": "domainItemType" }, "ibp_OtherPartyOperatingLeasesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Other Party Operating Leases [Member]", "terseLabel": "Other" } } }, "localname": "OtherPartyOperatingLeasesMember", "nsuri": "http://installedbuildingproducts.com/20230331", "presentation": [ "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails" ], "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/GoodwillandIntangiblesAdditionalInformationDetails", "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetails" ], "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetails" ], "xbrltype": "stringItemType" }, "ibp_PerformanceBasedAwardsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Performance based awards.", "label": "Performance Based Awards [Member]", "terseLabel": "Performance-Based\u00a0Stock\u00a0Awards" } } }, "localname": "PerformanceBasedAwardsMember", "nsuri": "http://installedbuildingproducts.com/20230331", "presentation": [ "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetails", "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetails", "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" } } }, "localname": "PerformanceBasedRestrictedStockUnitsMember", "nsuri": "http://installedbuildingproducts.com/20230331", "presentation": [ "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\u00a0Restricted\u00a0Stock Units" } } }, "localname": "PerformanceBasedStockUnitsMember", "nsuri": "http://installedbuildingproducts.com/20230331", "presentation": [ "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetails" ], "xbrltype": "domainItemType" }, "ibp_ProductInstallationMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Product Installation", "label": "Product Installation [Member]", "terseLabel": "Net revenue, Installation" } } }, "localname": "ProductInstallationMember", "nsuri": "http://installedbuildingproducts.com/20230331", "presentation": [ "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetails" ], "xbrltype": "domainItemType" }, "ibp_PurchaseObligationPoundsToBePurchasedRemainderOfFiscalYear": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Purchase Obligation, Pounds To Be Purchased, Remainder Of Fiscal Year", "label": "Purchase Obligation, Pounds To Be Purchased, Remainder Of Fiscal Year", "terseLabel": "2023 (in pounds)" } } }, "localname": "PurchaseObligationPoundsToBePurchasedRemainderOfFiscalYear", "nsuri": "http://installedbuildingproducts.com/20230331", "presentation": [ "http://installedbuildingproducts.com/role/CommitmentsandContingenciesAdditionalInformationDetails" ], "xbrltype": "integerItemType" }, "ibp_PurchaseObligationPoundsToBePurchasedYearOne": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Purchase Obligation, Pounds To Be Purchased, Year One", "label": "Purchase Obligation, Pounds To Be Purchased, Year One", "terseLabel": "2024 (in pounds)" } } }, "localname": "PurchaseObligationPoundsToBePurchasedYearOne", "nsuri": "http://installedbuildingproducts.com/20230331", "presentation": [ "http://installedbuildingproducts.com/role/CommitmentsandContingenciesAdditionalInformationDetails" ], "xbrltype": "integerItemType" }, "ibp_PurchaseObligationPoundsToBePurchasedYearTwo": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Purchase Obligation, Pounds To Be Purchased, Year Two", "label": "Purchase Obligation, Pounds To Be Purchased, Year Two", "terseLabel": "2025 (in pounds)" } } }, "localname": "PurchaseObligationPoundsToBePurchasedYearTwo", "nsuri": "http://installedbuildingproducts.com/20230331", "presentation": [ "http://installedbuildingproducts.com/role/CommitmentsandContingenciesAdditionalInformationDetails" ], "xbrltype": "integerItemType" }, "ibp_RainGuttersMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Rain gutters.", "label": "Rain Gutters [Member]", "terseLabel": "Rain gutters" } } }, "localname": "RainGuttersMember", "nsuri": "http://installedbuildingproducts.com/20230331", "presentation": [ "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetails" ], "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails" ], "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetails" ], "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetails" ], "xbrltype": "domainItemType" }, "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/20230331", "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/20230331", "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/EmployeeBenefitsTables" ], "xbrltype": "textBlockItemType" }, "ibp_SellerObligationsInConnectionWithAcquisitionOfBusiness": { "auth_ref": [], "calculation": { "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofBusinessAcquisitionsDetails": { "order": 2.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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofBusinessAcquisitionsDetails", "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetails" ], "xbrltype": "monetaryItemType" }, "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 for common stock" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfEqualInstallmentsForVestingOfStockAwards", "nsuri": "http://installedbuildingproducts.com/20230331", "presentation": [ "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetails" ], "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetails" ], "xbrltype": "domainItemType" }, "ibp_SixMonthsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Six Months", "label": "Six Months [Member]", "terseLabel": "Six Months" } } }, "localname": "SixMonthsMember", "nsuri": "http://installedbuildingproducts.com/20230331", "presentation": [ "http://installedbuildingproducts.com/role/SubsequentEventsDetails" ], "xbrltype": "domainItemType" }, "ibp_StatementOfShareholdersEquityLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Statement Of Shareholders Equity [Line Items]", "label": "Statement Of Shareholders Equity [Line Items]", "terseLabel": "Statement Of Shareholders Equity [Line Items]" } } }, "localname": "StatementOfShareholdersEquityLineItems", "nsuri": "http://installedbuildingproducts.com/20230331", "presentation": [ "http://installedbuildingproducts.com/role/StockholdersEquityAdditionalInformationDetails" ], "xbrltype": "stringItemType" }, "ibp_StatementOfShareholdersEquityTable": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Statement Of Shareholders Equity [Table]", "label": "Statement Of Shareholders Equity [Table]", "terseLabel": "Statement Of Shareholders Equity [Table]" } } }, "localname": "StatementOfShareholdersEquityTable", "nsuri": "http://installedbuildingproducts.com/20230331", "presentation": [ "http://installedbuildingproducts.com/role/StockholdersEquityAdditionalInformationDetails" ], "xbrltype": "stringItemType" }, "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/LongTermDebtScheduleofDebtDetails" ], "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/SubsequentEventsDetails" ], "xbrltype": "domainItemType" }, "ibp_ThreeMonthsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Three Months", "label": "Three Months [Member]", "terseLabel": "Three Months" } } }, "localname": "ThreeMonthsMember", "nsuri": "http://installedbuildingproducts.com/20230331", "presentation": [ "http://installedbuildingproducts.com/role/SubsequentEventsDetails" ], "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetails", "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofShareBasedCompensationExpenseUnderthe2014OmnibusIncentivePlanDetails" ], "xbrltype": "domainItemType" }, "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/LongTermDebtScheduleofDebtDetails" ], "xbrltype": "domainItemType" }, "ibp_WaterproofingMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Waterproofing.", "label": "Waterproofing [Member]", "terseLabel": "Waterproofing" } } }, "localname": "WaterproofingMember", "nsuri": "http://installedbuildingproducts.com/20230331", "presentation": [ "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetails" ], "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/20230331", "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/20230331", "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetails" ], "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/20230331", "presentation": [ "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetails" ], "xbrltype": "monetaryItemType" }, "srt_AffiliatedEntityMember": { "auth_ref": [ "r639", "r752", "r790", "r791", "r793" ], "lang": { "en-us": { "role": { "label": "Affiliated Entity [Member]", "terseLabel": "Affiliated Entity" } } }, "localname": "AffiliatedEntityMember", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://installedbuildingproducts.com/role/RelatedPartyTransactionsAdditionalInformationDetails" ], "xbrltype": "domainItemType" }, "srt_ConsolidationItemsAxis": { "auth_ref": [ "r227", "r264", "r276", "r277", "r278", "r279", "r280", "r282", "r286", "r336", "r337", "r338", "r339", "r341", "r342", "r344", "r346", "r347", "r745", "r746" ], "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": [ "r227", "r264", "r276", "r277", "r278", "r279", "r280", "r282", "r286", "r336", "r337", "r338", "r339", "r341", "r342", "r344", "r346", "r347", "r745", "r746" ], "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_MajorCustomersAxis": { "auth_ref": [ "r291", "r661", "r750", "r803" ], "lang": { "en-us": { "role": { "label": "Customer [Axis]", "terseLabel": "Customer [Axis]" } } }, "localname": "MajorCustomersAxis", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetails" ], "xbrltype": "stringItemType" }, "srt_MaximumMember": { "auth_ref": [ "r332", "r333", "r334", "r335", "r470", "r600", "r625", "r641", "r642", "r658", "r676", "r684", "r747", "r796", "r797", "r798", "r799", "r800", "r801" ], "lang": { "en-us": { "role": { "label": "Maximum [Member]", "terseLabel": "Maximum" } } }, "localname": "MaximumMember", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://installedbuildingproducts.com/role/LongTermDebtScheduleofDebtDetails", "http://installedbuildingproducts.com/role/RevenueRecognitionAdditionalInformationDetails", "http://installedbuildingproducts.com/role/StockholdersEquityAdditionalInformationDetails", "http://installedbuildingproducts.com/role/SubsequentEventsDetails" ], "xbrltype": "domainItemType" }, "srt_MinimumMember": { "auth_ref": [ "r332", "r333", "r334", "r335", "r470", "r600", "r625", "r641", "r642", "r658", "r676", "r684", "r747", "r796", "r797", "r798", "r799", "r800", "r801" ], "lang": { "en-us": { "role": { "label": "Minimum [Member]", "terseLabel": "Minimum" } } }, "localname": "MinimumMember", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://installedbuildingproducts.com/role/LongTermDebtScheduleofDebtDetails", "http://installedbuildingproducts.com/role/RevenueRecognitionAdditionalInformationDetails", "http://installedbuildingproducts.com/role/SubsequentEventsDetails" ], "xbrltype": "domainItemType" }, "srt_NameOfMajorCustomerDomain": { "auth_ref": [ "r291", "r661", "r750", "r803" ], "lang": { "en-us": { "role": { "label": "Customer [Domain]", "terseLabel": "Customer [Domain]" } } }, "localname": "NameOfMajorCustomerDomain", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetails" ], "xbrltype": "domainItemType" }, "srt_OfficerMember": { "auth_ref": [ "r293" ], "lang": { "en-us": { "role": { "label": "Officer [Member]", "terseLabel": "Officer" } } }, "localname": "OfficerMember", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetails" ], "xbrltype": "domainItemType" }, "srt_ProductOrServiceAxis": { "auth_ref": [ "r288", "r602", "r659", "r683", "r742", "r743", "r750", "r802" ], "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/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetails" ], "xbrltype": "stringItemType" }, "srt_ProductsAndServicesDomain": { "auth_ref": [ "r288", "r602", "r659", "r683", "r742", "r743", "r750", "r802" ], "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/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetails" ], "xbrltype": "domainItemType" }, "srt_RangeAxis": { "auth_ref": [ "r332", "r333", "r334", "r335", "r430", "r470", "r498", "r499", "r500", "r599", "r600", "r625", "r641", "r642", "r658", "r676", "r684", "r741", "r747", "r797", "r798", "r799", "r800", "r801" ], "lang": { "en-us": { "role": { "label": "Statistical Measurement [Axis]", "terseLabel": "Statistical Measurement [Axis]" } } }, "localname": "RangeAxis", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://installedbuildingproducts.com/role/LongTermDebtScheduleofDebtDetails", "http://installedbuildingproducts.com/role/RevenueRecognitionAdditionalInformationDetails", "http://installedbuildingproducts.com/role/StockholdersEquityAdditionalInformationDetails", "http://installedbuildingproducts.com/role/SubsequentEventsDetails" ], "xbrltype": "stringItemType" }, "srt_RangeMember": { "auth_ref": [ "r332", "r333", "r334", "r335", "r430", "r470", "r498", "r499", "r500", "r599", "r600", "r625", "r641", "r642", "r658", "r676", "r684", "r741", "r747", "r797", "r798", "r799", "r800", "r801" ], "lang": { "en-us": { "role": { "label": "Statistical Measurement [Domain]", "terseLabel": "Statistical Measurement [Domain]" } } }, "localname": "RangeMember", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://installedbuildingproducts.com/role/LongTermDebtScheduleofDebtDetails", "http://installedbuildingproducts.com/role/RevenueRecognitionAdditionalInformationDetails", "http://installedbuildingproducts.com/role/StockholdersEquityAdditionalInformationDetails", "http://installedbuildingproducts.com/role/SubsequentEventsDetails" ], "xbrltype": "domainItemType" }, "srt_RealEstateAndAccumulatedDepreciationDescriptionOfPropertyAxis": { "auth_ref": [ "r640", "r805", "r806", "r807", "r808", "r809", "r810", "r811", "r812" ], "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/LeasesUndiscountedCashFlowsDetails" ], "xbrltype": "stringItemType" }, "srt_RealEstateAndAccumulatedDepreciationNameOfPropertyDomain": { "auth_ref": [ "r640", "r805", "r806", "r807", "r808", "r809", "r810", "r811", "r812" ], "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/LeasesUndiscountedCashFlowsDetails" ], "xbrltype": "domainItemType" }, "srt_RestatementAdjustmentMember": { "auth_ref": [ "r228", "r229", "r230", "r238", "r239", "r257", "r545", "r546", "r710", "r711", "r712", "r713", "r714", "r715", "r716" ], "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/InformationonSegmentsDetails" ], "xbrltype": "domainItemType" }, "srt_RestatementAxis": { "auth_ref": [ "r184", "r228", "r229", "r230", "r231", "r232", "r233", "r234", "r235", "r236", "r238", "r239", "r240", "r241", "r242", "r243", "r257", "r299", "r300", "r515", "r544", "r545", "r546", "r547", "r565", "r585", "r586", "r626", "r627", "r628", "r629", "r630", "r631", "r632", "r633", "r634", "r635" ], "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/InformationonSegmentsDetails" ], "xbrltype": "stringItemType" }, "srt_RestatementDomain": { "auth_ref": [ "r184", "r228", "r229", "r230", "r231", "r232", "r233", "r234", "r235", "r236", "r238", "r239", "r240", "r241", "r242", "r243", "r257", "r299", "r300", "r515", "r544", "r545", "r546", "r547", "r565", "r585", "r586", "r626", "r627", "r628", "r629", "r630", "r631", "r632", "r633", "r634", "r635" ], "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/InformationonSegmentsDetails" ], "xbrltype": "domainItemType" }, "srt_TitleOfIndividualAxis": { "auth_ref": [ "r720", "r792" ], "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/EmployeeBenefitsAdditionalInformationDetails" ], "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/EmployeeBenefitsAdditionalInformationDetails" ], "xbrltype": "domainItemType" }, "srt_WeightedAverageMember": { "auth_ref": [ "r641", "r642", "r796", "r798", "r801" ], "lang": { "en-us": { "role": { "label": "Weighted Average [Member]", "terseLabel": "Weighted Average" } } }, "localname": "WeightedAverageMember", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://installedbuildingproducts.com/role/SubsequentEventsDetails" ], "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_AccountsPayableCurrent": { "auth_ref": [ "r12", "r682" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED": { "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/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock": { "auth_ref": [ "r726" ], "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_AccountsReceivableNetCurrent": { "auth_ref": [ "r294", "r295" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED": { "order": 3.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 $10,059 and $9,549 at March\u00a031, 2023 and December\u00a031, 2022, respectively)" } } }, "localname": "AccountsReceivableNetCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccountsReceivableRelatedPartiesCurrent": { "auth_ref": [ "r158", "r160", "r195", "r705" ], "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/RelatedPartyTransactionsAdditionalInformationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccruedInsuranceCurrent": { "auth_ref": [ "r15" ], "calculation": { "http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofAccruedGeneralInsuranceReservesDetails": { "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/CommitmentsandContingenciesScheduleofAccruedGeneralInsuranceReservesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccruedInsuranceCurrentAndNoncurrent": { "auth_ref": [ "r2", "r4", "r164", "r174" ], "calculation": { "http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofAccruedGeneralInsuranceReservesDetails": { "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/CommitmentsandContingenciesScheduleofAccruedGeneralInsuranceReservesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccruedInsuranceNoncurrent": { "auth_ref": [ "r19" ], "calculation": { "http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofAccruedGeneralInsuranceReservesDetails": { "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/CommitmentsandContingenciesScheduleofAccruedGeneralInsuranceReservesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember": { "auth_ref": [ "r205", "r211", "r212", "r535", "r646", "r694" ], "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": [ "r24", "r26", "r27", "r196", "r621", "r631", "r635" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED": { "order": 6.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), Net of Tax" } } }, "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccumulatedOtherComprehensiveIncomeLossTable": { "auth_ref": [ "r210", "r211", "r555", "r556", "r557", "r558", "r559", "r560" ], "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": [ "r23", "r27", "r131", "r586", "r626", "r627", "r694", "r695", "r696", "r707", "r708", "r709" ], "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 \u00a0Other Comprehensive (Loss) Income" } } }, "localname": "AccumulatedOtherComprehensiveIncomeMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYUNAUDITED" ], "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/BusinessCombinationsEstimatesofAcquiredIntangibleAssetsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife": { "auth_ref": [ "r76" ], "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 (in years)" } } }, "localname": "AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/BusinessCombinationsEstimatesofAcquiredIntangibleAssetsDetails" ], "xbrltype": "durationItemType" }, "us-gaap_AdditionalPaidInCapitalCommonStock": { "auth_ref": [ "r7" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED": { "order": 3.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/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_AdditionalPaidInCapitalMember": { "auth_ref": [ "r504", "r505", "r506", "r707", "r708", "r709", "r784" ], "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYUNAUDITED" ], "xbrltype": "domainItemType" }, "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": { "auth_ref": [ "r107", "r108", "r473" ], "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYUNAUDITED" ], "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "xbrltype": "stringItemType" }, "us-gaap_AllOtherSegmentsMember": { "auth_ref": [ "r260", "r276", "r277", "r278", "r279", "r280" ], "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": [ "r502" ], "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/EmployeeBenefitsSummaryofStockCompensationExpenseDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AllowanceForCreditLossesTextBlock": { "auth_ref": [ "r72" ], "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": [ "r197", "r296", "r301", "r302", "r306" ], "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/CreditLossesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": { "auth_ref": [ "r197", "r296", "r301" ], "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 credit losses" } } }, "localname": "AllowanceForDoubtfulAccountsReceivableCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITEDParenthetical" ], "xbrltype": "monetaryItemType" }, "us-gaap_AllowanceForDoubtfulAccountsReceivablePeriodIncreaseDecrease": { "auth_ref": [ "r726" ], "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in allowance for credit loss on accounts receivable.", "label": "Accounts Receivable, Allowance for Credit Loss, Period Increase (Decrease)", "terseLabel": "Current period provision" } } }, "localname": "AllowanceForDoubtfulAccountsReceivablePeriodIncreaseDecrease", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CreditLossesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries": { "auth_ref": [ "r305" ], "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/CreditLossesDetails" ], "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/CreditLossesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs": { "auth_ref": [ "r304" ], "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/CreditLossesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AmortizationOfFinancingCostsAndDiscounts": { "auth_ref": [ "r364", "r563", "r656", "r657", "r702" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": { "order": 9.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/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_AmortizationOfIntangibleAssets": { "auth_ref": [ "r51", "r74", "r79" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": { "order": 5.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 }, "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITED": { "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/BusinessCombinationsAdditionalInformationDetails", "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED", "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": { "auth_ref": [ "r254" ], "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 (in shares)" } } }, "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/IncomePerCommonShareAdditionalInformationDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_Assets": { "auth_ref": [ "r162", "r173", "r193", "r224", "r272", "r278", "r284", "r297", "r336", "r337", "r339", "r340", "r341", "r343", "r345", "r347", "r348", "r531", "r536", "r554", "r682", "r745", "r746", "r794" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED": { "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/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED" ], "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/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED", "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITEDParenthetical" ], "xbrltype": "stringItemType" }, "us-gaap_AssetsCurrent": { "auth_ref": [ "r187", "r199", "r224", "r297", "r336", "r337", "r339", "r340", "r341", "r343", "r345", "r347", "r348", "r531", "r536", "r554", "r682", "r745", "r746", "r794" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED": { "order": 5.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/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED" ], "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/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED", "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITEDParenthetical" ], "xbrltype": "stringItemType" }, "us-gaap_AssetsFairValueDisclosure": { "auth_ref": [ "r143" ], "calculation": { "http://installedbuildingproducts.com/role/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetails": { "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/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetails" ], "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/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetails", "http://installedbuildingproducts.com/role/FairValueMeasurementsSummaryofCarryingValuesandAssociatedFairValuesofFinancialAssetsandLiabilitiesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_AwardTypeAxis": { "auth_ref": [ "r476", "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" ], "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/EmployeeBenefitsAdditionalInformationDetails", "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetails", "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofShareBasedCompensationExpenseUnderthe2014OmnibusIncentivePlanDetails", "http://installedbuildingproducts.com/role/EmployeeBenefitsUnrecognizedShareBasedCompensationExpenseRelatedtoUnvestedAwardsDetails" ], "xbrltype": "stringItemType" }, "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": [ "r601" ], "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/RevenueRecognitionScheduleofCostandEstimatedEarningsonUncompletedContractsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessAcquisitionAcquireeDomain": { "auth_ref": [ "r525", "r670", "r673" ], "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/BusinessCombinationsAdditionalInformationDetails", "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofBusinessAcquisitionsDetails", "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetails" ], "xbrltype": "domainItemType" }, "us-gaap_BusinessAcquisitionAxis": { "auth_ref": [ "r113", "r114", "r525", "r670", "r673" ], "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/BusinessCombinationsAdditionalInformationDetails", "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofBusinessAcquisitionsDetails", "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetails" ], "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/BusinessCombinationsAdditionalInformationDetails", "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofBusinessAcquisitionsDetails", "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetails" ], "xbrltype": "stringItemType" }, "us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic": { "auth_ref": [ "r779", "r780" ], "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 (in USD per share)" } } }, "localname": "BusinessAcquisitionProFormaEarningsPerShareBasic", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/BusinessCombinationsProFormaResultsofOperationsDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted": { "auth_ref": [ "r779", "r780" ], "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 (in USD per share)" } } }, "localname": "BusinessAcquisitionProFormaEarningsPerShareDiluted", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/BusinessCombinationsProFormaResultsofOperationsDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_BusinessAcquisitionProFormaInformationAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Business Acquisition, Pro Forma Information [Abstract]", "terseLabel": "Business Acquisition, Pro Forma Information [Abstract]" } } }, "localname": "BusinessAcquisitionProFormaInformationAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/BusinessCombinationsProFormaResultsofOperationsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_BusinessAcquisitionProFormaInformationTextBlock": { "auth_ref": [ "r779", "r780" ], "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": [ "r128" ], "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 deduction for tax purposes" } } }, "localname": "BusinessAcquisitionPurchasePriceAllocationGoodwillExpectedTaxDeductibleAmount", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/BusinessCombinationsAdditionalInformationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss": { "auth_ref": [ "r523", "r524" ], "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/BusinessCombinationsProFormaResultsofOperationsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessAcquisitionsProFormaRevenue": { "auth_ref": [ "r523", "r524" ], "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/BusinessCombinationsProFormaResultsofOperationsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationAcquisitionRelatedCosts": { "auth_ref": [ "r111" ], "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", "negatedTerseLabel": "Acquisition-related costs" } } }, "localname": "BusinessCombinationAcquisitionRelatedCosts", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/BusinessCombinationsAdditionalInformationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationAndAssetAcquisitionAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Business Combination and Asset Acquisition [Abstract]" } } }, "localname": "BusinessCombinationAndAssetAcquisitionAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_BusinessCombinationConsiderationTransferred1": { "auth_ref": [ "r124", "r125", "r127" ], "calculation": { "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofBusinessAcquisitionsDetails": { "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/BusinessCombinationsSummaryofBusinessAcquisitionsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred": { "auth_ref": [ "r122", "r124", "r125", "r528" ], "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationContingentConsiderationLiability": { "auth_ref": [ "r123", "r126", "r529" ], "calculation": { "http://installedbuildingproducts.com/role/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetails": { "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/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationDisclosureTextBlock": { "auth_ref": [ "r129", "r526" ], "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": [ "r112" ], "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\u00a0Income" } } }, "localname": "BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofBusinessAcquisitionsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual": { "auth_ref": [ "r112" ], "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/BusinessCombinationsSummaryofBusinessAcquisitionsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents": { "auth_ref": [ "r116" ], "calculation": { "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetails": { "order": 6.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/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther": { "auth_ref": [ "r116" ], "calculation": { "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetails": { "order": 1.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/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables": { "auth_ref": [ "r116" ], "calculation": { "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetails": { "order": 2.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/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill": { "auth_ref": [ "r116" ], "calculation": { "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetails": { "order": 5.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", "terseLabel": "Intangibles" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory": { "auth_ref": [ "r115", "r116" ], "calculation": { "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetails": { "order": 9.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/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther": { "auth_ref": [ "r116" ], "calculation": { "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetails": { "order": 4.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/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets": { "auth_ref": [ "r116" ], "calculation": { "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetails": { "order": 3.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/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment": { "auth_ref": [ "r115", "r116" ], "calculation": { "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetails": { "order": 7.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/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet": { "auth_ref": [ "r116" ], "calculation": { "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetails": { "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/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CapitalExpendituresIncurredButNotYetPaid": { "auth_ref": [ "r55", "r56", "r57" ], "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_CapitalizedContractCostImpairmentLoss": { "auth_ref": [ "r307" ], "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 contract assets" } } }, "localname": "CapitalizedContractCostImpairmentLoss", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/RevenueRecognitionAdditionalInformationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CarryingReportedAmountFairValueDisclosureMember": { "auth_ref": [ "r148", "r149" ], "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/FairValueMeasurementsSummaryofCarryingValuesandAssociatedFairValuesofFinancialAssetsandLiabilitiesDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CashAcquiredFromAcquisition": { "auth_ref": [ "r38" ], "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITEDParenthetical" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashAndCashEquivalentsAtCarryingValue": { "auth_ref": [ "r53", "r189", "r643" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED": { "order": 4.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/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashAndCashEquivalentsFairValueDisclosure": { "auth_ref": [], "calculation": { "http://installedbuildingproducts.com/role/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetails": { "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/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "auth_ref": [ "r48", "r53", "r58" ], "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": { "auth_ref": [ "r48", "r152" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": { "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashFlowHedgingMember": { "auth_ref": [ "r135" ], "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/DerivativeandHedgingActivitiesNarrativeDetails", "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesOpenInterestSwapContractSummaryDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CommitmentsAndContingencies": { "auth_ref": [ "r20", "r167", "r178" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED": { "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", "terseLabel": "Commitments and contingencies" } } }, "localname": "CommitmentsAndContingencies", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED" ], "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": [ "r83", "r330", "r331", "r638", "r744" ], "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": [ "r92" ], "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)", "verboseLabel": "Dividends declared (in USD per share)" } } }, "localname": "CommonStockDividendsPerShareDeclared", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITED", "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYUNAUDITEDParenthetical", "http://installedbuildingproducts.com/role/StockholdersEquityCashDividendsDetails", "http://installedbuildingproducts.com/role/SubsequentEventsDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_CommonStockMember": { "auth_ref": [ "r707", "r708", "r784" ], "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYUNAUDITED", "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CommonStockParOrStatedValuePerShare": { "auth_ref": [ "r6" ], "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/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITEDParenthetical" ], "xbrltype": "perShareItemType" }, "us-gaap_CommonStockSharesAuthorized": { "auth_ref": [ "r6" ], "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/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITEDParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockSharesIssued": { "auth_ref": [ "r6" ], "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": "ENDING BALANCE (in shares)", "periodStartLabel": "BEGINNING BALANCE (in shares)", "terseLabel": "Common stock, shares issued (in shares)" } } }, "localname": "CommonStockSharesIssued", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITEDParenthetical", "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYUNAUDITED" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockSharesOutstanding": { "auth_ref": [ "r6", "r87" ], "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/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITEDParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockValue": { "auth_ref": [ "r6", "r682" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED": { "order": 2.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", "terseLabel": "Common stock; $0.01 par value: 100,000,000 authorized, 33,498,693 and 33,429,557 issued and 28,375,037 and 28,306,482 shares outstanding at March\u00a031, 2023 and December\u00a031, 2022, respectively" } } }, "localname": "CommonStockValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_CompensationAndEmployeeBenefitPlansTextBlock": { "auth_ref": [ "r96", "r99", "r100", "r109" ], "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": [ "r28", "r207", "r209", "r214", "r618", "r622" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITED": { "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_ComprehensiveIncomeNetOfTaxAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent [Abstract]", "verboseLabel": "Other comprehensive (loss) income, net of tax:" } } }, "localname": "ComprehensiveIncomeNetOfTaxAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITED" ], "xbrltype": "stringItemType" }, "us-gaap_ConcentrationRiskBenchmarkDomain": { "auth_ref": [ "r66", "r67", "r150", "r151", "r291", "r637" ], "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/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ConcentrationRiskByBenchmarkAxis": { "auth_ref": [ "r66", "r67", "r150", "r151", "r291", "r636", "r637" ], "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/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ConcentrationRiskByTypeAxis": { "auth_ref": [ "r66", "r67", "r150", "r151", "r291", "r637", "r804" ], "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/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ConcentrationRiskPercentage1": { "auth_ref": [ "r66", "r67", "r150", "r151", "r291" ], "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": "Concentration risk (percent)" } } }, "localname": "ConcentrationRiskPercentage1", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetails" ], "xbrltype": "percentItemType" }, "us-gaap_ConcentrationRiskTypeDomain": { "auth_ref": [ "r66", "r67", "r150", "r151", "r291", "r637" ], "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/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ConsolidationPolicyTextBlock": { "auth_ref": [ "r130", "r647" ], "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_ContractWithCustomerAssetAndLiabilityTableTextBlock": { "auth_ref": [ "r749" ], "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": [ "r381", "r383", "r404" ], "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/RevenueRecognitionSummaryofAssetsandLiabilitiesRelatedtoUncompletedContractsandCustomerDepositsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerLiability": { "auth_ref": [ "r381", "r382", "r404" ], "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/RevenueRecognitionSummaryofAssetsandLiabilitiesRelatedtoUncompletedContractsandCustomerDepositsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerLiabilityRevenueRecognized": { "auth_ref": [ "r405" ], "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/RevenueRecognitionAdditionalInformationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization": { "auth_ref": [ "r697", "r698" ], "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 (1)" } } }, "localname": "CostOfGoodsAndServiceExcludingDepreciationDepletionAndAmortization", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/InformationonSegmentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CostOfGoodsAndServicesSold": { "auth_ref": [ "r35", "r602" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITED": { "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITED" ], "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/EmployeeBenefitsAdditionalInformationDetails", "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofStockCompensationExpenseDetails" ], "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_CreditLossAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Credit Loss [Abstract]", "terseLabel": "Credit Loss [Abstract]" } } }, "localname": "CreditLossAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_CustomerConcentrationRiskMember": { "auth_ref": [ "r64", "r291" ], "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/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CustomerRelationshipsMember": { "auth_ref": [ "r121" ], "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/BusinessCombinationsEstimatesofAcquiredIntangibleAssetsDetails", "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED", "http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofGrossCarryingAmountandAccumulatedAmortizationDetails" ], "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", "r163", "r165", "r172", "r227", "r349", "r350", "r351", "r352", "r353", "r354", "r355", "r356", "r357", "r358", "r359", "r360", "r361", "r362", "r363", "r364", "r564", "r653", "r654", "r655", "r656", "r657", "r703" ], "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/FairValueMeasurementsSummaryofCarryingValuesandAssociatedFairValuesofFinancialAssetsandLiabilitiesDetails", "http://installedbuildingproducts.com/role/LongTermDebtScheduleofDebtDetails", "http://installedbuildingproducts.com/role/SubsequentEventsDetails" ], "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 (as percent)" } } }, "localname": "DebtInstrumentBasisSpreadOnVariableRate1", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/SubsequentEventsDetails" ], "xbrltype": "percentItemType" }, "us-gaap_DebtInstrumentFaceAmount": { "auth_ref": [ "r154", "r156", "r349", "r564", "r654", "r655" ], "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/SubsequentEventsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DebtInstrumentInterestRateStatedPercentage": { "auth_ref": [ "r17", "r350" ], "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 (as a percent)" } } }, "localname": "DebtInstrumentInterestRateStatedPercentage", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/LongTermDebtScheduleofDebtDetails" ], "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/LongTermDebtScheduleofDebtDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DebtInstrumentNameDomain": { "auth_ref": [ "r18", "r227", "r349", "r350", "r351", "r352", "r353", "r354", "r355", "r356", "r357", "r358", "r359", "r360", "r361", "r362", "r363", "r364", "r564", "r653", "r654", "r655", "r656", "r657", "r703" ], "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/FairValueMeasurementsSummaryofCarryingValuesandAssociatedFairValuesofFinancialAssetsandLiabilitiesDetails", "http://installedbuildingproducts.com/role/LongTermDebtScheduleofDebtDetails", "http://installedbuildingproducts.com/role/SubsequentEventsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_DebtInstrumentTable": { "auth_ref": [ "r18", "r88", "r89", "r90", "r91", "r153", "r154", "r156", "r171", "r227", "r349", "r350", "r351", "r352", "r353", "r354", "r355", "r356", "r357", "r358", "r359", "r360", "r361", "r362", "r363", "r364", "r365", "r564", "r653", "r654", "r655", "r656", "r657", "r703" ], "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/LongTermDebtScheduleofDebtDetails" ], "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/SubsequentEventsDetails" ], "xbrltype": "durationItemType" }, "us-gaap_DebtInstrumentUnamortizedDiscount": { "auth_ref": [ "r153", "r156", "r748" ], "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/LongTermDebtScheduleofDebtDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredIncomeTaxLiabilitiesNet": { "auth_ref": [ "r507", "r508" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED": { "order": 2.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/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED" ], "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" } } }, "localname": "DefinedBenefitPostretirementHealthCoverageMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetails" ], "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/EmployeeBenefitsAdditionalInformationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DepreciationAndAmortization": { "auth_ref": [ "r51", "r82" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": { "order": 14.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 of property and equipment" } } }, "localname": "DepreciationAndAmortization", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_DepreciationDepletionAndAmortization": { "auth_ref": [ "r51", "r267" ], "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 (1)" } } }, "localname": "DepreciationDepletionAndAmortization", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/InformationonSegmentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DerivativeAssets": { "auth_ref": [ "r200", "r201", "r553", "r645" ], "calculation": { "http://installedbuildingproducts.com/role/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetails": { "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/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetails" ], "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 (as a percent)" } } }, "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": [ "r137", "r138", "r140", "r141", "r645" ], "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": [ "r142", "r542" ], "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": [ "r136", "r137", "r140" ], "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/DerivativeandHedgingActivitiesNarrativeDetails", "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesOpenInterestSwapContractSummaryDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DerivativeInstrumentsGainLossReclassificationFromAccumulatedOCIToIncomeEstimatedNetAmountToBeTransferred": { "auth_ref": [ "r541" ], "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": [ "r200", "r201", "r553", "r645" ], "calculation": { "http://installedbuildingproducts.com/role/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetails": { "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/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DerivativeNotionalAmount": { "auth_ref": [ "r781", "r782" ], "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": [ "r133", "r134" ], "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_DesignatedAsHedgingInstrumentMember": { "auth_ref": [ "r136" ], "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/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DisaggregationOfRevenueTable": { "auth_ref": [ "r403", "r659", "r660", "r661", "r662", "r663", "r664", "r665" ], "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/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DisaggregationOfRevenueTableTextBlock": { "auth_ref": [ "r750" ], "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/StockholdersEquityCashDividendsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DividendsCommonStockCash": { "auth_ref": [ "r92" ], "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", "terseLabel": "Amount Declared" } } }, "localname": "DividendsCommonStockCash", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYUNAUDITED", "http://installedbuildingproducts.com/role/StockholdersEquityCashDividendsDetails" ], "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": "Dividends Declared and Paid" } } }, "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/StockholdersEquityCashDividendsDetails" ], "xbrltype": "domainItemType" }, "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/StockholdersEquityCashDividendsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DividendsPayableTable": { "auth_ref": [ "r55" ], "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/StockholdersEquityCashDividendsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_EarningsPerShareAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Earnings Per Share [Abstract]", "terseLabel": "Earnings Per Share [Abstract]" } } }, "localname": "EarningsPerShareAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_EarningsPerShareBasic": { "auth_ref": [ "r215", "r233", "r234", "r236", "r237", "r238", "r244", "r246", "r251", "r252", "r253", "r257", "r546", "r547", "r619", "r623", "r649" ], "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", "verboseLabel": "Basic (in USD per share)" } } }, "localname": "EarningsPerShareBasic", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITED" ], "xbrltype": "perShareItemType" }, "us-gaap_EarningsPerShareBasicAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Earnings Per Share, Basic [Abstract]", "terseLabel": "Earnings Per Share:" } } }, "localname": "EarningsPerShareBasicAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITED" ], "xbrltype": "stringItemType" }, "us-gaap_EarningsPerShareDiluted": { "auth_ref": [ "r215", "r233", "r234", "r236", "r237", "r238", "r246", "r251", "r252", "r253", "r257", "r546", "r547", "r619", "r623", "r649" ], "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", "verboseLabel": "Diluted (in USD per share)" } } }, "localname": "EarningsPerShareDiluted", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITED" ], "xbrltype": "perShareItemType" }, "us-gaap_EarningsPerShareTextBlock": { "auth_ref": [ "r254", "r255", "r256", "r258" ], "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": [ "r510" ], "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", "verboseLabel": "Effective tax rate (as percent)" } } }, "localname": "EffectiveIncomeTaxRateContinuingOperations", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/IncomeTaxesDetails" ], "xbrltype": "percentItemType" }, "us-gaap_EmployeeRelatedLiabilitiesCurrent": { "auth_ref": [ "r15" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED": { "order": 4.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/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED", "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": { "auth_ref": [ "r503" ], "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": [ "r503" ], "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 (in years)" } } }, "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/EmployeeBenefitsUnrecognizedShareBasedCompensationExpenseRelatedtoUnvestedAwardsDetails" ], "xbrltype": "durationItemType" }, "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": [ "r87", "r183", "r210", "r211", "r212", "r228", "r229", "r230", "r232", "r239", "r242", "r259", "r298", "r380", "r504", "r505", "r506", "r514", "r515", "r545", "r555", "r556", "r557", "r558", "r559", "r560", "r586", "r626", "r627", "r628" ], "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYUNAUDITED", "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetails", "http://installedbuildingproducts.com/role/StockholdersEquityChangeinAOCIDetails" ], "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/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable": { "auth_ref": [ "r548", "r549", "r551" ], "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/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetails" ], "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/FairValueMeasurementsSummaryofChangeinFairValueofContingentConsiderationDetails" ], "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/FairValueMeasurementsSummaryofCarryingValuesandAssociatedFairValuesofFinancialAssetsandLiabilitiesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FairValueByBalanceSheetGroupingTable": { "auth_ref": [ "r143", "r148", "r149" ], "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/FairValueMeasurementsSummaryofCarryingValuesandAssociatedFairValuesofFinancialAssetsandLiabilitiesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FairValueByBalanceSheetGroupingTextBlock": { "auth_ref": [ "r143", "r148" ], "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": [ "r357", "r432", "r433", "r434", "r435", "r436", "r437", "r549", "r596", "r597", "r598", "r654", "r655", "r666", "r667", "r668" ], "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/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetails", "http://installedbuildingproducts.com/role/FairValueMeasurementsSummaryofCarryingValuesandAssociatedFairValuesofFinancialAssetsandLiabilitiesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FairValueByMeasurementBasisAxis": { "auth_ref": [ "r143", "r147", "r357", "r654", "r655" ], "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/FairValueMeasurementsSummaryofCarryingValuesandAssociatedFairValuesofFinancialAssetsandLiabilitiesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FairValueDisclosureItemAmountsDomain": { "auth_ref": [ "r357", "r654", "r655" ], "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/FairValueMeasurementsSummaryofCarryingValuesandAssociatedFairValuesofFinancialAssetsandLiabilitiesDetails" ], "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": [ "r550" ], "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": [ "r357", "r432", "r437", "r549", "r596", "r666", "r667", "r668" ], "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/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueInputsLevel2Member": { "auth_ref": [ "r357", "r432", "r437", "r549", "r597", "r654", "r655", "r666", "r667", "r668" ], "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/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetails", "http://installedbuildingproducts.com/role/FairValueMeasurementsSummaryofCarryingValuesandAssociatedFairValuesofFinancialAssetsandLiabilitiesDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueInputsLevel3Member": { "auth_ref": [ "r357", "r432", "r433", "r434", "r435", "r436", "r437", "r549", "r598", "r654", "r655", "r666", "r667", "r668" ], "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/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock": { "auth_ref": [ "r144", "r146" ], "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": "Summary of Change in Fair Value of Contingent Consideration" } } }, "localname": "FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/FairValueMeasurementsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements": { "auth_ref": [ "r145" ], "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": "Amounts paid to sellers" } } }, "localname": "FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/FairValueMeasurementsSummaryofChangeinFairValueofContingentConsiderationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue": { "auth_ref": [ "r144" ], "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/FairValueMeasurementsSummaryofChangeinFairValueofContingentConsiderationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FairValueMeasurementsFairValueHierarchyDomain": { "auth_ref": [ "r357", "r432", "r433", "r434", "r435", "r436", "r437", "r596", "r597", "r598", "r654", "r655", "r666", "r667", "r668" ], "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/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetails", "http://installedbuildingproducts.com/role/FairValueMeasurementsSummaryofCarryingValuesandAssociatedFairValuesofFinancialAssetsandLiabilitiesDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FinanceLeaseInterestExpense": { "auth_ref": [ "r569", "r574", "r681" ], "calculation": { "http://installedbuildingproducts.com/role/LeasesLeaseCostsDetails": { "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/LeasesLeaseCostsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseInterestPaymentOnLiability": { "auth_ref": [ "r571", "r578" ], "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/LeasesOtherInformationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseLiability": { "auth_ref": [ "r567", "r583" ], "calculation": { "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails": { "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 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/LeasesUndiscountedCashFlowsDetails" ], "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/LeasesUndiscountedCashFlowsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FinanceLeaseLiabilityCurrent": { "auth_ref": [ "r567" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED": { "order": 2.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 }, "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails": { "order": 4.0, "parentTag": "ibp_LeaseLiabilities", "weight": 1.0 }, "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails": { "order": 1.0, "parentTag": "us-gaap_FinanceLeaseLiability", "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/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED", "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails", "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock": { "auth_ref": [ "r789" ], "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": [ "r567" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED": { "order": 5.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 }, "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails": { "order": 2.0, "parentTag": "ibp_LeaseLiabilities", "weight": 1.0 }, "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails": { "order": 2.0, "parentTag": "us-gaap_FinanceLeaseLiability", "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": "Financing" } } }, "localname": "FinanceLeaseLiabilityNoncurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED", "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails", "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseLiabilityPaymentsDue": { "auth_ref": [ "r583" ], "calculation": { "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails": { "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/LeasesUndiscountedCashFlowsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths": { "auth_ref": [ "r583" ], "calculation": { "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails": { "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 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": "2024" } } }, "localname": "FinanceLeaseLiabilityPaymentsDueNextTwelveMonths", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour": { "auth_ref": [ "r583" ], "calculation": { "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails": { "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 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": "2027" } } }, "localname": "FinanceLeaseLiabilityPaymentsDueYearFour", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree": { "auth_ref": [ "r583" ], "calculation": { "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails": { "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 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": "2026" } } }, "localname": "FinanceLeaseLiabilityPaymentsDueYearThree", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo": { "auth_ref": [ "r583" ], "calculation": { "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails": { "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": "2025" } } }, "localname": "FinanceLeaseLiabilityPaymentsDueYearTwo", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseLiabilityPaymentsRemainderOfFiscalYear": { "auth_ref": [ "r789" ], "calculation": { "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails": { "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 remainder of current fiscal year.", "label": "Finance Lease, Liability, to be Paid, Remainder of Fiscal Year", "terseLabel": "Remainder of 2022" } } }, "localname": "FinanceLeaseLiabilityPaymentsRemainderOfFiscalYear", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount": { "auth_ref": [ "r583" ], "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/LeasesUndiscountedCashFlowsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeasePrincipalPayments": { "auth_ref": [ "r570", "r578" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": { "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED", "http://installedbuildingproducts.com/role/LeasesOtherInformationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseRightOfUseAsset": { "auth_ref": [ "r566" ], "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": [ "r569", "r574", "r681" ], "calculation": { "http://installedbuildingproducts.com/role/LeasesLeaseCostsDetails": { "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/LeasesLeaseCostsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList": { "auth_ref": [ "r568" ], "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": [ "r581", "r681" ], "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": [ "r580", "r681" ], "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_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_FiniteLivedIntangibleAssetsAccumulatedAmortization": { "auth_ref": [ "r191", "r323" ], "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": [ "r75" ], "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/BusinessCombinationsEstimatesofAcquiredIntangibleAssetsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths": { "auth_ref": [ "r80" ], "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": "2024" } } }, "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofEstimatedAggregateAnnualAmortizationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear": { "auth_ref": [], "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 remainder of current fiscal year.", "label": "Finite-Lived Intangible Asset, Expected Amortization, Remainder of Fiscal Year", "terseLabel": "Remainder of 2022" } } }, "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofEstimatedAggregateAnnualAmortizationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour": { "auth_ref": [ "r80" ], "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": "2027" } } }, "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFour", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofEstimatedAggregateAnnualAmortizationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree": { "auth_ref": [ "r80" ], "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": "2026" } } }, "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearThree", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofEstimatedAggregateAnnualAmortizationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo": { "auth_ref": [ "r80" ], "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": "2025" } } }, "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofEstimatedAggregateAnnualAmortizationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": { "auth_ref": [ "r320", "r322", "r323", "r324", "r603", "r604" ], "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/BusinessCombinationsEstimatesofAcquiredIntangibleAssetsDetails", "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED", "http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofGrossCarryingAmountandAccumulatedAmortizationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FiniteLivedIntangibleAssetsGross": { "auth_ref": [ "r78", "r604" ], "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": [ "r75", "r77" ], "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/BusinessCombinationsEstimatesofAcquiredIntangibleAssetsDetails", "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED", "http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofGrossCarryingAmountandAccumulatedAmortizationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FiniteLivedIntangibleAssetsNet": { "auth_ref": [ "r78", "r603" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED": { "order": 3.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": "Intangibles, net", "totalLabel": "Net Book Value" } } }, "localname": "FiniteLivedIntangibleAssetsNet", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED", "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/GoodwillandIntangiblesAdditionalInformationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinitelivedIntangibleAssetsAcquired1": { "auth_ref": [ "r321" ], "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\u00a0Value" } } }, "localname": "FinitelivedIntangibleAssetsAcquired1", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/BusinessCombinationsEstimatesofAcquiredIntangibleAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_GainLossOnDispositionOfAssets": { "auth_ref": [ "r702", "r738", "r740" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": { "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_GeneralAndAdministrativeExpense": { "auth_ref": [ "r36" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITED": { "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_GeneralAndAdministrativeExpenseMember": { "auth_ref": [ "r32" ], "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/EmployeeBenefitsSummaryofStockCompensationExpenseDetails" ], "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/CommitmentsandContingenciesScheduleofInsuranceReceivableforClaimsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_Goodwill": { "auth_ref": [ "r190", "r308", "r617", "r652", "r682", "r727", "r734" ], "calculation": { "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetails": { "order": 10.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet", "weight": 1.0 }, "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED": { "order": 4.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)" } } }, "localname": "Goodwill", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetails", "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED", "http://installedbuildingproducts.com/role/GoodwillandIntangiblesSummaryofChangeinCarryingAmountofGoodwillDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_GoodwillAcquiredDuringPeriod": { "auth_ref": [ "r310", "r652" ], "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": [ "r81" ], "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_GoodwillGross": { "auth_ref": [ "r309", "r316", "r652" ], "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": [ "r309", "r316", "r652" ], "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_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/GoodwillandIntangiblesAdditionalInformationDetails", "http://installedbuildingproducts.com/role/GoodwillandIntangiblesSummaryofChangeinCarryingAmountofGoodwillDetails" ], "xbrltype": "stringItemType" }, "us-gaap_GoodwillOtherIncreaseDecrease": { "auth_ref": [ "r315" ], "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" } } }, "localname": "GoodwillOtherIncreaseDecrease", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/GoodwillandIntangiblesSummaryofChangeinCarryingAmountofGoodwillDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_GoodwillPurchaseAccountingAdjustments": { "auth_ref": [ "r110", "r733" ], "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": "Change in goodwill due to tax election" } } }, "localname": "GoodwillPurchaseAccountingAdjustments", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/GoodwillandIntangiblesAdditionalInformationDetails" ], "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": [ "r472", "r474", "r476", "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" ], "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/EmployeeBenefitsAdditionalInformationDetails", "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofShareBasedCompensationExpenseUnderthe2014OmnibusIncentivePlanDetails" ], "xbrltype": "stringItemType" }, "us-gaap_GranteeStatusDomain": { "auth_ref": [ "r472", "r474", "r476", "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" ], "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/EmployeeBenefitsAdditionalInformationDetails", "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofShareBasedCompensationExpenseUnderthe2014OmnibusIncentivePlanDetails" ], "xbrltype": "domainItemType" }, "us-gaap_GrossProfit": { "auth_ref": [ "r34", "r224", "r272", "r277", "r283", "r286", "r297", "r336", "r337", "r339", "r340", "r341", "r343", "r345", "r347", "r348", "r554", "r651", "r745" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITED": { "order": 1.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", "terseLabel": "Gross profit", "totalLabel": "Gross profit" } } }, "localname": "GrossProfit", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITED", "http://installedbuildingproducts.com/role/InformationonSegmentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_HedgingDesignationAxis": { "auth_ref": [ "r136", "r540" ], "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": [ "r136" ], "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": [ "r136" ], "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/DerivativeandHedgingActivitiesNarrativeDetails", "http://installedbuildingproducts.com/role/DerivativeandHedgingActivitiesOpenInterestSwapContractSummaryDetails" ], "xbrltype": "domainItemType" }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": { "auth_ref": [ "r30", "r161", "r168", "r180", "r272", "r277", "r283", "r286", "r620", "r651" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITED": { "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", "terseLabel": "Income before income taxes", "totalLabel": "Income before income taxes" } } }, "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITED", "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": [ "r325", "r327" ], "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/EmployeeBenefitsAdditionalInformationDetails", "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofStockCompensationExpenseDetails" ], "xbrltype": "stringItemType" }, "us-gaap_IncomeStatementLocationDomain": { "auth_ref": [ "r327" ], "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/EmployeeBenefitsAdditionalInformationDetails", "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofStockCompensationExpenseDetails" ], "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": [ "r225", "r511", "r512", "r513", "r516", "r518", "r520", "r521", "r522" ], "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": [ "r226", "r241", "r242", "r270", "r509", "r517", "r519", "r624" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITED": { "order": 2.0, "parentTag": "us-gaap_NetIncomeLoss", "weight": -1.0 } }, "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", "verboseLabel": "Income tax provision" } } }, "localname": "IncomeTaxExpenseBenefit", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/BusinessCombinationsAdditionalInformationDetails", "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeTaxesPaidNet": { "auth_ref": [ "r54" ], "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccountsPayable": { "auth_ref": [ "r50" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": { "order": 6.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/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccountsReceivable": { "auth_ref": [ "r50" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": { "order": 11.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/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInIncomeTaxes": { "auth_ref": [ "r701" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": { "order": 13.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/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInInventories": { "auth_ref": [ "r50" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": { "order": 7.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/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "xbrltype": "stringItemType" }, "us-gaap_IncreaseDecreaseInOtherOperatingAssets": { "auth_ref": [ "r50" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": { "order": 1.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/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInOtherOperatingLiabilities": { "auth_ref": [ "r50" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": { "order": 15.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/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInStockholdersEquityRollForward": { "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": "Increase (Decrease) in Stockholders' Equity [Roll Forward]", "terseLabel": "Increase (Decrease) in Stockholders' Equity [Roll Forward]" } } }, "localname": "IncreaseDecreaseInStockholdersEquityRollForward", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYUNAUDITED" ], "xbrltype": "stringItemType" }, "us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements": { "auth_ref": [ "r247", "r248", "r249", "r253", "r475" ], "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 after application of the Treasury Stock Method (in shares)" } } }, "localname": "IncrementalCommonSharesAttributableToShareBasedPaymentArrangements", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/IncomePerCommonShareAdditionalInformationDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_InsuranceSettlementsReceivableNoncurrent": { "auth_ref": [ "r691" ], "calculation": { "http://installedbuildingproducts.com/role/CommitmentsandContingenciesScheduleofInsuranceReceivableforClaimsDetails": { "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/CommitmentsandContingenciesScheduleofInsuranceReceivableforClaimsDetails", "http://installedbuildingproducts.com/role/EmployeeBenefitsScheduleofInsuranceReceivableforClaimsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_InterestExpense": { "auth_ref": [ "r155", "r170", "r213", "r266", "r562" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITED": { "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": "Interest expense", "verboseLabel": "Interest expense, net" } } }, "localname": "InterestExpense", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/BusinessCombinationsAdditionalInformationDetails", "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_InterestPaidNet": { "auth_ref": [ "r217", "r220", "r221" ], "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_InterestRateSwapMember": { "auth_ref": [ "r680" ], "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": [ "r264", "r276", "r277", "r278", "r279", "r280", "r282", "r286" ], "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": [ "r198", "r644", "r682" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED": { "order": 2.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/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_InvestmentTextBlock": { "auth_ref": [ "r721", "r722", "r724", "r725" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for investment.", "label": "Investment [Text Block]", "terseLabel": "Investments and Cash and Cash Equivalents" } } }, "localname": "InvestmentTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/InvestmentsandCashandCashEquivalents" ], "xbrltype": "textBlockItemType" }, "us-gaap_InvestmentsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Investments [Abstract]" } } }, "localname": "InvestmentsAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_LeaseContractualTermAxis": { "auth_ref": [ "r786" ], "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/LeasesLeaseCostsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LeaseContractualTermDomain": { "auth_ref": [ "r786" ], "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/LeasesLeaseCostsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_LeaseCost": { "auth_ref": [ "r582", "r681" ], "calculation": { "http://installedbuildingproducts.com/role/LeasesLeaseCostsDetails": { "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/LeasesLeaseCostsDetails" ], "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/LeasesLeaseCostsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LeaseCostTableTextBlock": { "auth_ref": [ "r788" ], "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_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": [ "r584" ], "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/LeasesLeaseCostsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LesseeLeaseDescriptionTable": { "auth_ref": [ "r573" ], "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/LeasesLeaseCostsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": { "auth_ref": [ "r789" ], "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": [ "r583" ], "calculation": { "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails": { "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/LeasesUndiscountedCashFlowsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": { "auth_ref": [ "r583" ], "calculation": { "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails": { "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 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": "2024" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": { "auth_ref": [ "r583" ], "calculation": { "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails": { "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 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": "2027" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": { "auth_ref": [ "r583" ], "calculation": { "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails": { "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 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": "2026" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": { "auth_ref": [ "r583" ], "calculation": { "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails": { "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 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": "2025" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear": { "auth_ref": [ "r789" ], "calculation": { "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails": { "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 having initial or remaining lease term in excess of one year to be paid in remainder of current fiscal year.", "label": "Lessee, Operating Lease, Liability, to be Paid, Remainder of Fiscal Year", "terseLabel": "Remainder of 2022" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": { "auth_ref": [ "r583" ], "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/LeasesUndiscountedCashFlowsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeasesTextBlock": { "auth_ref": [ "r584" ], "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_Liabilities": { "auth_ref": [ "r14", "r224", "r297", "r336", "r337", "r339", "r340", "r341", "r343", "r345", "r347", "r348", "r532", "r536", "r537", "r554", "r650", "r745", "r794", "r795" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED": { "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/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesAndStockholdersEquity": { "auth_ref": [ "r11", "r166", "r177", "r682", "r704", "r723", "r785" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED": { "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/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesAndStockholdersEquityAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Liabilities and Equity [Abstract]", "terseLabel": "LIABILITIES AND STOCKHOLDERS' EQUITY" } } }, "localname": "LiabilitiesAndStockholdersEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED" ], "xbrltype": "stringItemType" }, "us-gaap_LiabilitiesCurrent": { "auth_ref": [ "r16", "r188", "r224", "r297", "r336", "r337", "r339", "r340", "r341", "r343", "r345", "r347", "r348", "r532", "r536", "r537", "r554", "r682", "r745", "r794", "r795" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED": { "order": 1.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/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED" ], "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/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED" ], "xbrltype": "stringItemType" }, "us-gaap_LiabilitiesFairValueDisclosure": { "auth_ref": [ "r143" ], "calculation": { "http://installedbuildingproducts.com/role/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetails": { "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/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetails" ], "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/FairValueMeasurementsScheduleofFairValuesofFinancialAssetsandLiabilitiesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LongTermDebt": { "auth_ref": [ "r3", "r165", "r175", "r356", "r366", "r654", "r655" ], "calculation": { "http://installedbuildingproducts.com/role/LongTermDebtScheduleofDebtDetails": { "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/LongTermDebtScheduleofDebtDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtCurrent": { "auth_ref": [ "r13" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED": { "order": 1.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 }, "http://installedbuildingproducts.com/role/LongTermDebtScheduleofDebtDetails": { "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/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED", "http://installedbuildingproducts.com/role/LongTermDebtScheduleofDebtDetails" ], "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/FairValueMeasurementsSummaryofCarryingValuesandAssociatedFairValuesofFinancialAssetsandLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths": { "auth_ref": [ "r84", "r227", "r360" ], "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": "2024" } } }, "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/LongTermDebtScheduleOfMaturitiesOfLongTermDebtDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour": { "auth_ref": [ "r84", "r227", "r360" ], "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": "2027" } } }, "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/LongTermDebtScheduleOfMaturitiesOfLongTermDebtDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree": { "auth_ref": [ "r84", "r227", "r360" ], "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": "2026" } } }, "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/LongTermDebtScheduleOfMaturitiesOfLongTermDebtDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo": { "auth_ref": [ "r84", "r227", "r360" ], "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": "2025" } } }, "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/LongTermDebtScheduleOfMaturitiesOfLongTermDebtDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear": { "auth_ref": [ "r706" ], "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 remainder of current fiscal year.", "label": "Long-Term Debt, Maturity, Remainder of Fiscal Year", "terseLabel": "Remainder of 2022" } } }, "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/LongTermDebtScheduleOfMaturitiesOfLongTermDebtDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtNoncurrent": { "auth_ref": [ "r194" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED": { "order": 6.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 }, "http://installedbuildingproducts.com/role/LongTermDebtScheduleofDebtDetails": { "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/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED", "http://installedbuildingproducts.com/role/LongTermDebtScheduleofDebtDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtTextBlock": { "auth_ref": [ "r86" ], "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": [ "r18" ], "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/LongTermDebtScheduleofDebtDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LongtermDebtTypeDomain": { "auth_ref": [ "r18", "r85" ], "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/LongTermDebtScheduleofDebtDetails" ], "xbrltype": "domainItemType" }, "us-gaap_MaturitiesOfLongTermDebtAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Maturities of Long-Term Debt [Abstract]", "terseLabel": "Maturities of Long-term Debt [Abstract]" } } }, "localname": "MaturitiesOfLongTermDebtAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/LongTermDebtScheduleOfMaturitiesOfLongTermDebtDetails" ], "xbrltype": "stringItemType" }, "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/LongTermDebtScheduleofDebtDetails" ], "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/InvestmentsandCashandCashEquivalentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInFinancingActivities": { "auth_ref": [ "r219" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": { "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 financing activities" } } }, "localname": "NetCashProvidedByUsedInFinancingActivities", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "xbrltype": "stringItemType" }, "us-gaap_NetCashProvidedByUsedInInvestingActivities": { "auth_ref": [ "r219" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": { "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED", "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITEDParenthetical" ], "xbrltype": "stringItemType" }, "us-gaap_NetCashProvidedByUsedInOperatingActivities": { "auth_ref": [ "r48", "r49", "r52" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": { "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "xbrltype": "stringItemType" }, "us-gaap_NetIncomeLoss": { "auth_ref": [ "r31", "r52", "r169", "r179", "r186", "r206", "r208", "r212", "r224", "r231", "r233", "r234", "r236", "r237", "r241", "r242", "r250", "r272", "r277", "r283", "r286", "r297", "r336", "r337", "r339", "r340", "r341", "r343", "r345", "r347", "r348", "r547", "r554", "r651", "r745" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITED": { "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITED", "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems": { "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": "New Accounting Pronouncements or Change in Accounting Principle [Line Items]", "terseLabel": "New Accounting Pronouncements or Change in Accounting Principle [Line Items]" } } }, "localname": "NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/RevenueRecognitionAdditionalInformationDetails" ], "xbrltype": "stringItemType" }, "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "xbrltype": "stringItemType" }, "us-gaap_NoncompeteAgreementsMember": { "auth_ref": [ "r119" ], "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" } } }, "localname": "NoncompeteAgreementsMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/BusinessCombinationsEstimatesofAcquiredIntangibleAssetsDetails", "http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofGrossCarryingAmountandAccumulatedAmortizationDetails" ], "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/LongTermDebtScheduleofDebtDetails" ], "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/BusinessCombinationsAdditionalInformationDetails" ], "xbrltype": "integerItemType" }, "us-gaap_NumberOfOperatingSegments": { "auth_ref": [ "r719" ], "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/InformationonSegmentsDetails", "http://installedbuildingproducts.com/role/OrganizationAdditionalInformationDetails" ], "xbrltype": "integerItemType" }, "us-gaap_NumberOfReportableSegments": { "auth_ref": [ "r719" ], "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/OrganizationAdditionalInformationDetails" ], "xbrltype": "integerItemType" }, "us-gaap_OciCashFlowHedgeReclassificationForDiscontinuanceStatementOfIncomeOrComprehensiveIncomeExtensibleEnumeration": { "auth_ref": [ "r538", "r539" ], "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": [], "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": "Selling" } } }, "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITED" ], "xbrltype": "stringItemType" }, "us-gaap_OperatingIncomeLoss": { "auth_ref": [ "r272", "r277", "r283", "r286", "r651" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITED": { "order": 1.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The net result for the period of deducting operating expenses from operating revenues.", "label": "Operating Income (Loss)", "terseLabel": "Operating income", "totalLabel": "Operating income" } } }, "localname": "OperatingIncomeLoss", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITED", "http://installedbuildingproducts.com/role/InformationonSegmentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseCost": { "auth_ref": [ "r575", "r681" ], "calculation": { "http://installedbuildingproducts.com/role/LeasesLeaseCostsDetails": { "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 costs" } } }, "localname": "OperatingLeaseCost", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/LeasesLeaseCostsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseLiability": { "auth_ref": [ "r567" ], "calculation": { "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails": { "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/LeasesUndiscountedCashFlowsDetails" ], "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/LeasesUndiscountedCashFlowsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_OperatingLeaseLiabilityCurrent": { "auth_ref": [ "r567" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED": { "order": 6.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 }, "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails": { "order": 3.0, "parentTag": "ibp_LeaseLiabilities", "weight": 1.0 }, "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails": { "order": 2.0, "parentTag": "us-gaap_OperatingLeaseLiability", "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/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED", "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails", "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseLiabilityNoncurrent": { "auth_ref": [ "r567" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED": { "order": 4.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 }, "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails": { "order": 1.0, "parentTag": "ibp_LeaseLiabilities", "weight": 1.0 }, "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails": { "order": 1.0, "parentTag": "us-gaap_OperatingLeaseLiability", "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": "Operating", "verboseLabel": "Operating lease obligations" } } }, "localname": "OperatingLeaseLiabilityNoncurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED", "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails", "http://installedbuildingproducts.com/role/LeasesUndiscountedCashFlowsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeasePayments": { "auth_ref": [ "r572", "r578" ], "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/LeasesOtherInformationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseRightOfUseAsset": { "auth_ref": [ "r566" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED": { "order": 1.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/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED", "http://installedbuildingproducts.com/role/LeasesScheduleofSupplementalBalanceSheetInformationRelatedToLeasesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense": { "auth_ref": [ "r702" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": { "order": 8.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", "terseLabel": "Amortization of operating lease right-of-use assets" } } }, "localname": "OperatingLeaseRightOfUseAssetAmortizationExpense", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": { "auth_ref": [ "r581", "r681" ], "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": [ "r580", "r681" ], "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": [ "r276", "r277", "r278", "r279", "r280", "r286" ], "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": [ "r120" ], "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/BusinessCombinationsEstimatesofAcquiredIntangibleAssetsDetails", "http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofGrossCarryingAmountandAccumulatedAmortizationDetails" ], "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", "r132" ], "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": [ "r192" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED": { "order": 2.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", "terseLabel": "Other non-current assets" } } }, "localname": "OtherAssetsNoncurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherAssetsNoncurrentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Other Assets, Noncurrent [Abstract]", "terseLabel": "Non-current assets" } } }, "localname": "OtherAssetsNoncurrentAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED" ], "xbrltype": "stringItemType" }, "us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax": { "auth_ref": [ "r27", "r29", "r211", "r555", "r557", "r560", "r694" ], "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 (losses) gains in fair value" } } }, "localname": "OtherComprehensiveIncomeLossBeforeReclassificationsNetOfTax", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/StockholdersEquityChangeinAOCIDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossBeforeReclassificationsTax": { "auth_ref": [ "r25", "r210" ], "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": [ "r202", "r203" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITED": { "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 on cash flow hedges, net of tax benefit (provision) of $2,252 and $(6,430) for the three months ended March\u00a031, 2023 and 2022, respectively.", "verboseLabel": "Other comprehensive (loss), net of tax" } } }, "localname": "OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITED", "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax": { "auth_ref": [ "r204" ], "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, tax benefit" } } }, "localname": "OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITEDParenthetical" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationTax": { "auth_ref": [ "r204" ], "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": [ "r538" ], "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": "Amortization of unrealized loss", "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_OtherIntangibleAssetsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Intangible assets classified as other.", "label": "Other Intangible Assets [Member]", "terseLabel": "Other intangibles, net" } } }, "localname": "OtherIntangibleAssetsMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED" ], "xbrltype": "domainItemType" }, "us-gaap_OtherLiabilitiesCurrent": { "auth_ref": [ "r15", "r682" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED": { "order": 5.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", "terseLabel": "Other current liabilities" } } }, "localname": "OtherLiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherLiabilitiesNoncurrent": { "auth_ref": [ "r19" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED": { "order": 3.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/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherNoncashIncomeExpense": { "auth_ref": [ "r52" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": { "order": 4.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/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherNonoperatingIncomeExpense": { "auth_ref": [ "r37" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITED": { "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 (income) expense" } } }, "localname": "OtherNonoperatingIncomeExpense", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherNonoperatingIncomeExpenseAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Other Nonoperating Income (Expense) [Abstract]", "terseLabel": "Other expense, net" } } }, "localname": "OtherNonoperatingIncomeExpenseAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITED" ], "xbrltype": "stringItemType" }, "us-gaap_OtherOperatingIncomeExpenseNet": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The net amount of other operating income and expenses, the components of which are not separately disclosed on the income statement, from items that are associated with the entity's normal revenue producing operations.", "label": "Other Operating Income (Expense), Net", "terseLabel": "Other expense, net" } } }, "localname": "OtherOperatingIncomeExpenseNet", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/InformationonSegmentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_PayablesAndAccrualsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Payables and Accruals [Abstract]" } } }, "localname": "PayablesAndAccrualsAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_PaymentsForProceedsFromOtherInvestingActivities": { "auth_ref": [ "r699", "r700" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": { "order": 5.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/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsForRepurchaseOfCommonStock": { "auth_ref": [ "r44" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": { "order": 1.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", "negatedTerseLabel": "Repurchase of common stock" } } }, "localname": "PaymentsForRepurchaseOfCommonStock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsForRepurchaseOfOtherEquity": { "auth_ref": [ "r44" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": { "order": 9.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of cash outflow to reacquire equity classified as other.", "label": "Payments for Repurchase of Other Equity", "negatedTerseLabel": "Surrender of common stock awards by employees" } } }, "localname": "PaymentsForRepurchaseOfOtherEquity", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsOfDebtIssuanceCosts": { "auth_ref": [ "r46" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": { "order": 3.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/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsOfDividends": { "auth_ref": [ "r44" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": { "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", "negatedLabel": "Dividends paid", "terseLabel": "Amount Paid" } } }, "localname": "PaymentsOfDividends", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED", "http://installedbuildingproducts.com/role/StockholdersEquityAdditionalInformationDetails", "http://installedbuildingproducts.com/role/StockholdersEquityCashDividendsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsOfMergerRelatedCostsFinancingActivities": { "auth_ref": [ "r47" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": { "order": 2.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/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsToAcquireBusinessesGross": { "auth_ref": [ "r40", "r527" ], "calculation": { "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofBusinessAcquisitionsDetails": { "order": 1.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/BusinessCombinationsSummaryofBusinessAcquisitionsDetails", "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired": { "auth_ref": [ "r40" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": { "order": 4.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", "negatedLabel": "Acquisitions of businesses, net of cash acquired of $10 and $0 in 2023 and 2022, respectively" } } }, "localname": "PaymentsToAcquireBusinessesNetOfCashAcquired", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsToAcquireInvestments": { "auth_ref": [ "r42" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": { "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", "negatedTerseLabel": "Purchases of investments" } } }, "localname": "PaymentsToAcquireInvestments", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": { "auth_ref": [ "r41" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": { "order": 3.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/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_PlanNameAxis": { "auth_ref": [ "r753", "r754", "r755", "r756", "r757", "r758", "r759", "r760", "r761", "r762", "r763", "r764", "r765", "r766", "r767", "r768", "r769", "r770", "r771", "r772", "r773", "r774", "r775", "r776", "r777", "r778" ], "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/EmployeeBenefitsAdditionalInformationDetails", "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofShareBasedCompensationExpenseUnderthe2014OmnibusIncentivePlanDetails" ], "xbrltype": "stringItemType" }, "us-gaap_PlanNameDomain": { "auth_ref": [ "r753", "r754", "r755", "r756", "r757", "r758", "r759", "r760", "r761", "r762", "r763", "r764", "r765", "r766", "r767", "r768", "r769", "r770", "r771", "r772", "r773", "r774", "r775", "r776", "r777", "r778" ], "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/EmployeeBenefitsAdditionalInformationDetails", "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofShareBasedCompensationExpenseUnderthe2014OmnibusIncentivePlanDetails" ], "xbrltype": "domainItemType" }, "us-gaap_PortionAtFairValueFairValueDisclosureMember": { "auth_ref": [ "r552" ], "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/FairValueMeasurementsSummaryofCarryingValuesandAssociatedFairValuesofFinancialAssetsandLiabilitiesDetails" ], "xbrltype": "domainItemType" }, "us-gaap_PostemploymentBenefitsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Postemployment Benefits [Abstract]", "terseLabel": "Postemployment Benefits [Abstract]" } } }, "localname": "PostemploymentBenefitsAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_PreferredStockParOrStatedValuePerShare": { "auth_ref": [ "r5", "r367" ], "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/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITEDParenthetical" ], "xbrltype": "perShareItemType" }, "us-gaap_PreferredStockSharesAuthorized": { "auth_ref": [ "r5" ], "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/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITEDParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_PreferredStockSharesIssued": { "auth_ref": [ "r5", "r367" ], "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/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITEDParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_PreferredStockSharesOutstanding": { "auth_ref": [ "r5" ], "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/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITEDParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_PreferredStockValue": { "auth_ref": [ "r5", "r682" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED": { "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 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", "terseLabel": "Preferred Stock; $0.01 par value: 5,000,000 authorized and 0 shares issued and outstanding at March\u00a031, 2023 and December\u00a031, 2022, respectively" } } }, "localname": "PreferredStockValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": { "auth_ref": [ "r693" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED": { "order": 1.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", "terseLabel": "Prepaid expenses and other current assets" } } }, "localname": "PrepaidExpenseAndOtherAssetsCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromNotesPayable": { "auth_ref": [ "r43" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": { "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment": { "auth_ref": [ "r39" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": { "order": 1.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/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProductAndServiceOtherMember": { "auth_ref": [ "r751" ], "lang": { "en-us": { "role": { "documentation": "Article or substance produced by nature, labor or machinery and act of providing assistance, classified as other.", "label": "Product and Service, Other [Member]", "terseLabel": "Other" } } }, "localname": "ProductAndServiceOtherMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ProductConcentrationRiskMember": { "auth_ref": [ "r65" ], "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/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ProfitLoss": { "auth_ref": [ "r186", "r206", "r208", "r218", "r224", "r231", "r241", "r242", "r272", "r277", "r283", "r286", "r297", "r336", "r337", "r339", "r340", "r341", "r343", "r345", "r347", "r348", "r530", "r533", "r534", "r547", "r554", "r620", "r651", "r678", "r679", "r696", "r745" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": { "order": 12.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/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization": { "auth_ref": [ "r739", "r787" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED": { "order": 6.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "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" } } }, "localname": "PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProvisionForDoubtfulAccounts": { "auth_ref": [ "r216", "r303" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": { "order": 10.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)", "verboseLabel": "Provision for credit losses" } } }, "localname": "ProvisionForDoubtfulAccounts", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_ReceivablesLongTermContractsOrPrograms": { "auth_ref": [ "r692" ], "calculation": { "http://installedbuildingproducts.com/role/RevenueRecognitionScheduleofCostandEstimatedEarningsonUncompletedContractsDetails": { "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/RevenueRecognitionScheduleofCostandEstimatedEarningsonUncompletedContractsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ReclassificationFromAccumulatedOtherComprehensiveIncomeCurrentPeriodNetOfTax": { "auth_ref": [ "r27", "r29", "r211", "r555", "r559", "r560", "r694" ], "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": "Reclassifications 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_RelatedPartyDomain": { "auth_ref": [ "r454", "r589", "r590" ], "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/RelatedPartyTransactionsAdditionalInformationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty": { "auth_ref": [ "r157" ], "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/RelatedPartyTransactionsScheduleofRelatedPartyTransactionsDetails" ], "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/RelatedPartyTransactionsAdditionalInformationDetails" ], "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/RelatedPartyTransactionsScheduleofRelatedPartyTransactionsDetails" ], "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": [ "r454", "r589", "r605", "r606", "r607", "r608", "r609", "r610", "r611", "r612", "r613", "r614", "r615", "r616", "r793" ], "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/RelatedPartyTransactionsAdditionalInformationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_RelatedPartyTransactionsDisclosureTextBlock": { "auth_ref": [ "r587", "r588", "r590", "r591", "r592" ], "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": [ "r45" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": { "order": 8.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", "negatedTerseLabel": "Payments on Term Loan" } } }, "localname": "RepaymentsOfMediumTermNotes", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_RepaymentsOfOtherLongTermDebt": { "auth_ref": [ "r45" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": { "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", "negatedTerseLabel": "Principal payments on long-term debt" } } }, "localname": "RepaymentsOfOtherLongTermDebt", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_RetainedEarningsAccumulatedDeficit": { "auth_ref": [ "r8", "r92", "r176", "r630", "r635", "r682" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED": { "order": 4.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/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_RetainedEarningsMember": { "auth_ref": [ "r183", "r228", "r229", "r230", "r232", "r239", "r242", "r298", "r504", "r505", "r506", "r514", "r515", "r545", "r626", "r628" ], "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYUNAUDITED" ], "xbrltype": "domainItemType" }, "us-gaap_RetirementPlanTypeAxis": { "auth_ref": [ "r97", "r98", "r408", "r409", "r410", "r411", "r412", "r413", "r414", "r415", "r416", "r417", "r418", "r419", "r420", "r421", "r422", "r423", "r424", "r425", "r426", "r427", "r428", "r429", "r430", "r431", "r432", "r433", "r434", "r435", "r436", "r437", "r438", "r439", "r440", "r441", "r442", "r443", "r444", "r445", "r446", "r447", "r448", "r449", "r450", "r451", "r452", "r453", "r454", "r455", "r456", "r457", "r458", "r459", "r460", "r461", "r462", "r463", "r464", "r465", "r466", "r467", "r468", "r469", "r471", "r668", "r669", "r670", "r671", "r672", "r673", "r674", "r675" ], "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/EmployeeBenefitsAdditionalInformationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_RetirementPlanTypeDomain": { "auth_ref": [ "r97", "r98", "r408", "r409", "r410", "r411", "r412", "r413", "r414", "r415", "r416", "r417", "r418", "r419", "r420", "r421", "r422", "r423", "r424", "r425", "r426", "r427", "r428", "r429", "r430", "r431", "r432", "r433", "r434", "r435", "r436", "r437", "r438", "r439", "r440", "r441", "r442", "r443", "r444", "r445", "r446", "r447", "r448", "r449", "r450", "r451", "r452", "r453", "r454", "r455", "r456", "r457", "r458", "r459", "r460", "r461", "r462", "r463", "r464", "r465", "r466", "r467", "r468", "r469", "r471", "r668", "r669", "r670", "r671", "r672", "r673", "r674", "r675" ], "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/EmployeeBenefitsAdditionalInformationDetails" ], "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": [ "r263", "r264", "r276", "r281", "r282", "r288", "r289", "r291", "r402", "r403", "r602" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITED": { "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": "Net revenue" } } }, "localname": "RevenueFromContractWithCustomerExcludingAssessedTax", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITED", "http://installedbuildingproducts.com/role/InformationonSegmentsDetails", "http://installedbuildingproducts.com/role/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_RevenueFromContractWithCustomerMember": { "auth_ref": [ "r291", "r718" ], "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/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetails" ], "xbrltype": "domainItemType" }, "us-gaap_RevenueFromContractWithCustomerPolicyTextBlock": { "auth_ref": [ "r394", "r395", "r396", "r397", "r398", "r399", "r400", "r401", "r407", "r648" ], "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 from Contract with Customer" } } }, "localname": "RevenueFromContractWithCustomerPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_RevenueFromContractWithCustomerProductAndServiceBenchmarkMember": { "auth_ref": [ "r717" ], "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/RevenueRecognitionSummaryofRevenuesDisaggregatedbyEndMarketandProductDetails" ], "xbrltype": "domainItemType" }, "us-gaap_RevenueFromContractWithCustomerTextBlock": { "auth_ref": [ "r384", "r385", "r386", "r387", "r388", "r389", "r392", "r393", "r406", "r407" ], "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": [ "r33", "r181", "r338", "r339", "r340", "r346", "r347", "r348" ], "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", "verboseLabel": "Related party sales" } } }, "localname": "RevenueFromRelatedParties", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/RelatedPartyTransactionsAdditionalInformationDetails", "http://installedbuildingproducts.com/role/RelatedPartyTransactionsScheduleofRelatedPartyTransactionsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_RevenueRemainingPerformanceObligation": { "auth_ref": [ "r390" ], "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/RevenueRecognitionAdditionalInformationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionExplanation": { "auth_ref": [ "r392" ], "lang": { "en-us": { "role": { "documentation": "Description of when remaining performance obligation is expected to be recognized as revenue.", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Explanation", "terseLabel": "Expected time of revenue recognition (in months)" } } }, "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionExplanation", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/RevenueRecognitionAdditionalInformationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis": { "auth_ref": [ "r391" ], "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/RevenueRecognitionAdditionalInformationDetails" ], "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/RevenueRecognitionAdditionalInformationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability": { "auth_ref": [ "r579", "r681" ], "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable": { "auth_ref": [ "r113", "r114", "r525" ], "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/BusinessCombinationsAdditionalInformationDetails", "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofBusinessAcquisitionsDetails", "http://installedbuildingproducts.com/role/BusinessCombinationsSummaryofEstimatedFairValueofAssetsAcquiredandLiabilitiesAssumedDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock": { "auth_ref": [ "r113", "r114" ], "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": [ "r139" ], "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_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_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock": { "auth_ref": [ "r137", "r140", "r540" ], "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/DerivativeandHedgingActivitiesTables", "http://installedbuildingproducts.com/role/StockholdersEquityTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock": { "auth_ref": [ "r103" ], "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": [ "r548", "r549" ], "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_ScheduleOfFiniteLivedIntangibleAssetsTable": { "auth_ref": [ "r75", "r77", "r603" ], "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": [ "r75", "r77" ], "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": [ "r309", "r310", "r311", "r312", "r313", "r314", "r315", "r316", "r317", "r318", "r319", "r652" ], "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/GoodwillandIntangiblesAdditionalInformationDetails", "http://installedbuildingproducts.com/role/GoodwillandIntangiblesSummaryofChangeinCarryingAmountofGoodwillDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfGoodwillTextBlock": { "auth_ref": [ "r652", "r727", "r728", "r729", "r730", "r731", "r732", "r733", "r734", "r735", "r736", "r737" ], "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": [ "r182" ], "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/CommitmentsandContingenciesScheduleofInsuranceReceivableforClaimsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock": { "auth_ref": [ "r84" ], "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_ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock": { "auth_ref": [ "r60", "r61", "r62", "r63" ], "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 Accounting Pronouncements" } } }, "localname": "ScheduleOfNewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/SignificantAccountingPoliciesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock": { "auth_ref": [ "r101" ], "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": [ "r133" ], "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/DerivativeandHedgingActivitiesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock": { "auth_ref": [ "r117" ], "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": [ "r159", "r160" ], "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/RelatedPartyTransactionsAdditionalInformationDetails" ], "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": [ "r68", "r69", "r70", "r73" ], "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": [ "r68", "r69", "r70", "r73" ], "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": [ "r472", "r474", "r476", "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" ], "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/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetails", "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofShareBasedCompensationExpenseUnderthe2014OmnibusIncentivePlanDetails", "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofStockCompensationExpenseDetails", "http://installedbuildingproducts.com/role/EmployeeBenefitsUnrecognizedShareBasedCompensationExpenseRelatedtoUnvestedAwardsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock": { "auth_ref": [ "r104" ], "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_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock": { "auth_ref": [ "r77" ], "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_SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember": { "auth_ref": [ "r783" ], "lang": { "en-us": { "role": { "documentation": "Fixed rate on U.S. dollar, constant-notional interest rate swap that has its variable-rate leg referenced to Secured Overnight Financing Rate (SOFR) with no additional spread over SOFR on variable-rate leg.", "label": "Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member]", "terseLabel": "Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate" } } }, "localname": "SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/SubsequentEventsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_SegmentDomain": { "auth_ref": [ "r260", "r263", "r264", "r265", "r266", "r267", "r268", "r269", "r270", "r271", "r272", "r273", "r274", "r276", "r277", "r278", "r279", "r280", "r281", "r282", "r283", "r284", "r286", "r291", "r309", "r310", "r311", "r312", "r313", "r314", "r315", "r316", "r317", "r328", "r329", "r652", "r802" ], "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/GoodwillandIntangiblesAdditionalInformationDetails", "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": [ "r260", "r261", "r262", "r272", "r275", "r280", "r284", "r285", "r286", "r287", "r288", "r290", "r291", "r292" ], "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": [ "r32" ], "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/EmployeeBenefitsSummaryofStockCompensationExpenseDetails" ], "xbrltype": "domainItemType" }, "us-gaap_SellingExpense": { "auth_ref": [ "r36" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITED": { "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITED" ], "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/LongTermDebtScheduleofDebtDetails" ], "xbrltype": "domainItemType" }, "us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember": { "auth_ref": [ "r114" ], "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/BusinessCombinationsAdditionalInformationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ShareBasedCompensation": { "auth_ref": [ "r50" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED": { "order": 3.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/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod": { "auth_ref": [ "r492" ], "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/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue": { "auth_ref": [ "r492" ], "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/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": { "auth_ref": [ "r490" ], "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)", "verboseLabel": "Granted (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetails", "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": { "auth_ref": [ "r490" ], "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/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber": { "auth_ref": [ "r487", "r488" ], "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/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetails" ], "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/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue": { "auth_ref": [ "r487", "r488" ], "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/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetails" ], "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\u00a0Fair\u00a0Value Per Share" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod": { "auth_ref": [ "r491" ], "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", "negatedTerseLabel": "Vested (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue": { "auth_ref": [ "r491" ], "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", "terseLabel": "Vested (in USD per share)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetails" ], "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/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetails", "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofShareBasedCompensationExpenseUnderthe2014OmnibusIncentivePlanDetails", "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofStockCompensationExpenseDetails", "http://installedbuildingproducts.com/role/EmployeeBenefitsUnrecognizedShareBasedCompensationExpenseRelatedtoUnvestedAwardsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized": { "auth_ref": [ "r677" ], "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/EmployeeBenefitsAdditionalInformationDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant": { "auth_ref": [ "r106" ], "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/EmployeeBenefitsAdditionalInformationDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross": { "auth_ref": [ "r483" ], "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/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": { "auth_ref": [ "r493" ], "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/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": { "auth_ref": [ "r476", "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" ], "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/EmployeeBenefitsAdditionalInformationDetails", "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetails", "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofShareBasedCompensationExpenseUnderthe2014OmnibusIncentivePlanDetails", "http://installedbuildingproducts.com/role/EmployeeBenefitsUnrecognizedShareBasedCompensationExpenseRelatedtoUnvestedAwardsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ShareBasedPaymentArrangementNonemployeeMember": { "auth_ref": [ "r472", "r476", "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" ], "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/EmployeeBenefitsAdditionalInformationDetails", "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofShareBasedCompensationExpenseUnderthe2014OmnibusIncentivePlanDetails" ], "xbrltype": "domainItemType" }, "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/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetails" ], "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/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetails" ], "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/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetails" ], "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/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetails" ], "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 performance-based stock awards, Ending balance (in USD per share)", "periodStartLabel": "Nonvested performance-based stock awards, Beginning balance (in USD per share)" } } }, "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetails" ], "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\u00a0Fair\u00a0Value Per Share" } } }, "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetails" ], "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", "negatedTerseLabel": "Vested (in shares)" } } }, "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetails" ], "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/EmployeeBenefitsSummaryofEquityBasedAwardsforEmployeesDetails" ], "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": "Number of shares surrendered to satisfy tax withholding obligations (in shares)" } } }, "localname": "SharesPaidForTaxWithholdingForShareBasedCompensation", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShortTermLeaseCost": { "auth_ref": [ "r576", "r681" ], "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/LeasesLeaseCostsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_SignificantAccountingPoliciesTextBlock": { "auth_ref": [ "r59", "r222" ], "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": [ "r185", "r260", "r263", "r264", "r265", "r266", "r267", "r268", "r269", "r270", "r271", "r272", "r273", "r274", "r276", "r277", "r278", "r279", "r280", "r281", "r282", "r283", "r284", "r286", "r291", "r309", "r310", "r311", "r312", "r313", "r314", "r315", "r316", "r317", "r326", "r328", "r329", "r652", "r802" ], "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/GoodwillandIntangiblesAdditionalInformationDetails", "http://installedbuildingproducts.com/role/GoodwillandIntangiblesSummaryofChangeinCarryingAmountofGoodwillDetails", "http://installedbuildingproducts.com/role/InformationonSegmentsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_StatementEquityComponentsAxis": { "auth_ref": [ "r21", "r87", "r183", "r210", "r211", "r212", "r228", "r229", "r230", "r232", "r239", "r242", "r259", "r298", "r380", "r504", "r505", "r506", "r514", "r515", "r545", "r555", "r556", "r557", "r558", "r559", "r560", "r586", "r626", "r627", "r628" ], "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYUNAUDITED", "http://installedbuildingproducts.com/role/EmployeeBenefitsAdditionalInformationDetails", "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/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED", "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYUNAUDITED" ], "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": [ "r228", "r229", "r230", "r259", "r602" ], "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/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED", "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYUNAUDITED" ], "xbrltype": "stringItemType" }, "us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures": { "auth_ref": [ "r5", "r6", "r87", "r92" ], "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYUNAUDITED" ], "xbrltype": "sharesItemType" }, "us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation": { "auth_ref": [ "r5", "r6", "r87", "r92" ], "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYUNAUDITED" ], "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 (in shares)" } } }, "localname": "StockIssuedDuringPeriodSharesShareBasedCompensationForfeited", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYUNAUDITED" ], "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYUNAUDITED" ], "xbrltype": "sharesItemType" }, "us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures": { "auth_ref": [ "r87", "r92" ], "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation": { "auth_ref": [ "r5", "r6", "r92", "r102" ], "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationForfeited": { "auth_ref": [ "r105" ], "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYUNAUDITED" ], "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYUNAUDITED" ], "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" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockholdersEquity": { "auth_ref": [ "r6", "r9", "r10", "r71", "r682", "r704", "r723", "r785" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED": { "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", "periodEndLabel": "ENDING BALANCE", "periodStartLabel": "BEGINNING BALANCE", "totalLabel": "Total stockholders\u2019 equity" } } }, "localname": "StockholdersEquity", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED", "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYUNAUDITED", "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/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED", "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITEDParenthetical" ], "xbrltype": "stringItemType" }, "us-gaap_StockholdersEquityNoteDisclosureTextBlock": { "auth_ref": [ "r95", "r223", "r368", "r369", "r370", "r371", "r372", "r373", "r374", "r375", "r376", "r377", "r378", "r379", "r380", "r543" ], "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": [ "r561", "r594" ], "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": [ "r561", "r594" ], "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": [ "r561", "r594" ], "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": [ "r561", "r594" ], "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]", "terseLabel": "Subsequent Events [Abstract]" } } }, "localname": "SubsequentEventsAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_SubsequentEventsTextBlock": { "auth_ref": [ "r593", "r595" ], "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFCASHFLOWSUNAUDITED" ], "xbrltype": "stringItemType" }, "us-gaap_TrademarksAndTradeNamesMember": { "auth_ref": [ "r118" ], "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/BusinessCombinationsEstimatesofAcquiredIntangibleAssetsDetails", "http://installedbuildingproducts.com/role/GoodwillandIntangiblesScheduleofGrossCarryingAmountandAccumulatedAmortizationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_TreasuryStockAcquiredAverageCostPerShare": { "auth_ref": [ "r93" ], "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 (in usd per share)" } } }, "localname": "TreasuryStockAcquiredAverageCostPerShare", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/StockholdersEquityAdditionalInformationDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_TreasuryStockCommonMember": { "auth_ref": [ "r93" ], "lang": { "en-us": { "role": { "documentation": "Previously issued common shares repurchased by the issuing entity and held in treasury.", "label": "Treasury Stock, Common [Member]", "terseLabel": "Treasury Stock" } } }, "localname": "TreasuryStockCommonMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYUNAUDITED" ], "xbrltype": "domainItemType" }, "us-gaap_TreasuryStockCommonShares": { "auth_ref": [ "r93" ], "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": "ENDING BALANCE, Treasury Stock (in shares)", "negatedPeriodStartLabel": "BEGINING BALANCE, Treasury Stock (in shares)", "terseLabel": "Treasury stock (in shares)" } } }, "localname": "TreasuryStockCommonShares", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITEDParenthetical", "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYUNAUDITED" ], "xbrltype": "sharesItemType" }, "us-gaap_TreasuryStockCommonValue": { "auth_ref": [ "r22", "r93", "r94" ], "calculation": { "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED": { "order": 5.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": "ENDING BALANCE, Treasury Stock", "negatedPeriodStartLabel": "BEGINING BALANCE, Treasury Stock", "negatedTerseLabel": "Treasury stock; at cost: 5,123,656 and 5,123,075 shares at March\u00a031, 2023 and December\u00a031, 2022, respectively" } } }, "localname": "TreasuryStockCommonValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDBALANCESHEETSUNAUDITED", "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYUNAUDITED" ], "xbrltype": "monetaryItemType" }, "us-gaap_TreasuryStockSharesAcquired": { "auth_ref": [ "r6", "r87", "r92" ], "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)" } } }, "localname": "TreasuryStockSharesAcquired", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYUNAUDITED", "http://installedbuildingproducts.com/role/StockholdersEquityAdditionalInformationDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_TreasuryStockValueAcquiredCostMethod": { "auth_ref": [ "r87", "r92", "r93" ], "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFSTOCKHOLDERSEQUITYUNAUDITED", "http://installedbuildingproducts.com/role/StockholdersEquityAdditionalInformationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_TypeAndTierIdentifierDomain": { "auth_ref": [ "r182" ], "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/CommitmentsandContingenciesScheduleofInsuranceReceivableforClaimsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_VariableLeaseCost": { "auth_ref": [ "r577", "r681" ], "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/LeasesLeaseCostsDetails" ], "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/SubsequentEventsDetails" ], "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/SubsequentEventsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": { "auth_ref": [ "r245", "r253" ], "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITED" ], "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITED" ], "xbrltype": "stringItemType" }, "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": { "auth_ref": [ "r244", "r253" ], "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/CONDENSEDCONSOLIDATEDSTATEMENTSOFOPERATIONSANDCOMPREHENSIVEINCOMEUNAUDITED" ], "xbrltype": "sharesItemType" }, "us-gaap_WorkersCompensationLiabilityCurrent": { "auth_ref": [ "r15" ], "calculation": { "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofWorkersCompensationKnownClaimsandIBNRReservesDetails": { "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/EmployeeBenefitsSummaryofWorkersCompensationKnownClaimsandIBNRReservesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_WorkersCompensationLiabilityCurrentAndNoncurrent": { "auth_ref": [ "r2", "r4", "r164", "r174" ], "calculation": { "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofWorkersCompensationKnownClaimsandIBNRReservesDetails": { "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", "totalLabel": "Workers' compensation liability" } } }, "localname": "WorkersCompensationLiabilityCurrentAndNoncurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofWorkersCompensationKnownClaimsandIBNRReservesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_WorkersCompensationLiabilityNoncurrent": { "auth_ref": [ "r19" ], "calculation": { "http://installedbuildingproducts.com/role/EmployeeBenefitsSummaryofWorkersCompensationKnownClaimsandIBNRReservesDetails": { "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/EmployeeBenefitsSummaryofWorkersCompensationKnownClaimsandIBNRReservesDetails" ], "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(31))", "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", "Publisher": "FASB", "Topic": "715", "URI": "https://asc.fasb.org/topic&trid=2235017", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r101": { "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" }, "r102": { "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" }, "r103": { "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" }, "r104": { "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" }, "r105": { "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" }, "r106": { "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" }, "r107": { "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" }, "r108": { "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" }, "r109": { "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" }, "r11": { "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" }, "r110": { "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" }, "r111": { "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" }, "r112": { "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" }, "r113": { "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" }, "r114": { "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" }, "r115": { "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" }, "r116": { "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" }, "r117": { "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" }, "r118": { "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" }, "r119": { "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" }, "r12": { "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" }, "r120": { "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" }, "r121": { "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" }, "r122": { "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" }, "r123": { "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" }, "r124": { "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" }, "r125": { "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" }, "r126": { "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" }, "r127": { "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" }, "r128": { "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" }, "r129": { "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" }, "r13": { "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" }, "r130": { "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" }, "r131": { "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" }, "r132": { "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" }, "r133": { "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" }, "r134": { "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" }, "r135": { "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" }, "r136": { "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" }, "r137": { "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" }, "r138": { "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" }, "r139": { "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" }, "r14": { "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" }, "r140": { "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" }, "r141": { "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" }, "r142": { "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" }, "r143": { "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" }, "r144": { "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" }, "r145": { "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" }, "r146": { "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" }, "r147": { "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" }, "r148": { "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" }, "r149": { "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" }, "r15": { "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" }, "r150": { "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" }, "r151": { "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" }, "r152": { "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" }, "r153": { "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" }, "r154": { "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" }, "r155": { "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" }, "r156": { "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" }, "r157": { "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" }, "r158": { "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" }, "r159": { "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" }, "r16": { "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" }, "r160": { "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" }, "r161": { "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" }, "r162": { "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" }, "r163": { "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" }, "r164": { "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" }, "r165": { "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" }, "r166": { "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" }, "r167": { "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" }, "r168": { "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" }, "r169": { "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" }, "r17": { "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" }, "r170": { "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" }, "r171": { "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" }, "r172": { "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" }, "r173": { "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" }, "r174": { "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" }, "r175": { "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" }, "r176": { "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" }, "r177": { "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" }, "r178": { "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" }, "r179": { "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" }, "r18": { "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" }, "r180": { "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" }, "r181": { "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" }, "r182": { "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" }, "r183": { "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" }, "r184": { "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" }, "r185": { "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" }, "r186": { "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" }, "r187": { "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" }, "r188": { "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" }, "r189": { "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" }, "r19": { "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" }, "r190": { "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" }, "r191": { "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" }, "r192": { "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" }, "r193": { "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" }, "r194": { "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" }, "r195": { "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" }, "r196": { "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" }, "r197": { "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" }, "r198": { "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" }, "r199": { "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" }, "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.25)", "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": "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" }, "r201": { "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" }, "r202": { "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" }, "r203": { "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" }, "r204": { "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" }, "r205": { "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" }, "r206": { "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" }, "r207": { "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" }, "r208": { "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" }, "r209": { "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" }, "r21": { "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" }, "r210": { "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" }, "r211": { "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" }, "r212": { "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" }, "r213": { "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" }, "r214": { "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" }, "r215": { "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" }, "r216": { "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" }, "r217": { "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" }, "r218": { "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" }, "r219": { "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" }, "r22": { "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" }, "r220": { "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" }, "r221": { "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" }, "r222": { "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" }, "r223": { "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" }, "r224": { "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" }, "r225": { "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" }, "r226": { "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" }, "r227": { "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" }, "r228": { "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" }, "r229": { "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" }, "r23": { "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" }, "r230": { "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" }, "r231": { "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" }, "r232": { "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" }, "r233": { "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" }, "r234": { "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" }, "r235": { "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" }, "r236": { "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" }, "r237": { "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" }, "r238": { "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" }, "r239": { "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" }, "r24": { "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" }, "r240": { "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" }, "r241": { "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" }, "r242": { "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" }, "r243": { "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" }, "r244": { "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" }, "r245": { "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" }, "r246": { "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" }, "r247": { "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" }, "r248": { "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" }, "r249": { "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" }, "r25": { "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" }, "r250": { "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" }, "r251": { "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" }, "r252": { "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" }, "r253": { "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" }, "r254": { "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" }, "r255": { "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" }, "r256": { "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" }, "r257": { "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" }, "r258": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "260", "URI": "https://asc.fasb.org/topic&trid=2144383", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r259": { "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" }, "r26": { "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" }, "r260": { "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" }, "r261": { "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" }, "r262": { "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" }, "r263": { "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" }, "r264": { "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" }, "r265": { "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" }, "r266": { "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" }, "r267": { "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" }, "r268": { "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" }, "r269": { "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" }, "r27": { "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" }, "r270": { "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" }, "r271": { "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" }, "r272": { "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" }, "r273": { "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" }, "r274": { "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" }, "r275": { "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" }, "r276": { "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" }, "r277": { "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" }, "r278": { "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" }, "r279": { "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" }, "r28": { "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" }, "r280": { "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" }, "r281": { "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" }, "r282": { "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" }, "r283": { "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" }, "r284": { "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" }, "r285": { "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" }, "r286": { "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" }, "r287": { "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" }, "r288": { "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" }, "r289": { "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" }, "r29": { "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" }, "r290": { "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" }, "r291": { "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" }, "r292": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "280", "URI": "https://asc.fasb.org/topic&trid=2134510", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r293": { "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" }, "r294": { "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" }, "r295": { "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" }, "r296": { "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" }, "r297": { "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" }, "r298": { "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" }, "r299": { "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" }, "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": "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" }, "r300": { "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" }, "r301": { "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" }, "r302": { "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" }, "r303": { "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" }, "r304": { "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" }, "r305": { "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" }, "r306": { "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" }, "r307": { "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" }, "r308": { "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" }, "r309": { "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" }, "r31": { "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" }, "r310": { "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" }, "r311": { "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" }, "r312": { "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" }, "r313": { "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" }, "r314": { "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" }, "r315": { "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" }, "r316": { "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" }, "r317": { "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" }, "r318": { "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" }, "r319": { "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" }, "r32": { "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" }, "r320": { "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" }, "r321": { "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" }, "r322": { "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" }, "r323": { "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" }, "r324": { "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" }, "r325": { "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" }, "r326": { "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" }, "r327": { "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" }, "r328": { "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" }, "r329": { "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" }, "r33": { "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" }, "r330": { "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" }, "r331": { "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" }, "r332": { "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" }, "r333": { "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" }, "r334": { "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" }, "r335": { "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" }, "r336": { "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" }, "r337": { "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" }, "r338": { "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" }, "r339": { "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" }, "r34": { "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" }, "r340": { "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" }, "r341": { "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" }, "r342": { "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" }, "r343": { "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" }, "r344": { "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" }, "r345": { "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" }, "r346": { "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" }, "r347": { "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" }, "r348": { "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" }, "r349": { "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" }, "r35": { "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" }, "r350": { "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" }, "r351": { "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" }, "r352": { "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" }, "r353": { "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" }, "r354": { "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" }, "r355": { "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" }, "r356": { "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" }, "r357": { "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" }, "r358": { "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" }, "r359": { "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" }, "r36": { "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" }, "r360": { "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" }, "r361": { "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" }, "r362": { "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" }, "r363": { "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" }, "r364": { "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" }, "r365": { "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" }, "r366": { "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" }, "r367": { "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" }, "r368": { "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" }, "r369": { "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" }, "r37": { "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" }, "r370": { "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" }, "r371": { "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" }, "r372": { "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" }, "r373": { "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" }, "r374": { "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" }, "r375": { "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" }, "r376": { "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" }, "r377": { "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" }, "r378": { "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" }, "r379": { "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" }, "r38": { "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" }, "r380": { "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" }, "r381": { "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" }, "r382": { "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" }, "r383": { "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" }, "r384": { "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" }, "r385": { "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" }, "r386": { "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" }, "r387": { "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" }, "r388": { "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" }, "r389": { "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" }, "r39": { "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" }, "r390": { "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" }, "r391": { "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" }, "r392": { "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" }, "r393": { "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" }, "r394": { "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" }, "r395": { "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" }, "r396": { "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" }, "r397": { "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" }, "r398": { "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" }, "r399": { "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" }, "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": "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" }, "r400": { "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" }, "r401": { "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" }, "r402": { "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" }, "r403": { "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" }, "r404": { "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" }, "r405": { "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" }, "r406": { "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" }, "r407": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "606", "URI": "https://asc.fasb.org/topic&trid=49130388", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r408": { "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" }, "r409": { "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" }, "r41": { "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" }, "r410": { "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" }, "r411": { "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" }, "r412": { "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" }, "r413": { "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" }, "r414": { "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" }, "r415": { "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" }, "r416": { "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" }, "r417": { "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" }, "r418": { "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" }, "r419": { "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" }, "r42": { "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" }, "r420": { "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" }, "r421": { "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" }, "r422": { "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" }, "r423": { "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" }, "r424": { "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" }, "r425": { "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" }, "r426": { "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" }, "r427": { "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" }, "r428": { "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" }, "r429": { "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" }, "r43": { "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" }, "r430": { "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" }, "r431": { "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" }, "r432": { "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" }, "r433": { "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" }, "r434": { "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" }, "r435": { "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" }, "r436": { "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" }, "r437": { "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" }, "r438": { "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" }, "r439": { "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" }, "r44": { "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" }, "r440": { "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" }, "r441": { "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" }, "r442": { "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" }, "r443": { "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" }, "r444": { "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" }, "r445": { "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" }, "r446": { "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" }, "r447": { "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" }, "r448": { "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" }, "r449": { "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" }, "r45": { "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" }, "r450": { "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" }, "r451": { "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" }, "r452": { "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" }, "r453": { "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" }, "r454": { "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" }, "r455": { "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" }, "r456": { "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" }, "r457": { "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" }, "r458": { "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" }, "r459": { "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" }, "r46": { "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" }, "r460": { "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" }, "r461": { "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" }, "r462": { "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" }, "r463": { "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" }, "r464": { "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" }, "r465": { "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" }, "r466": { "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" }, "r467": { "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" }, "r468": { "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" }, "r469": { "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" }, "r47": { "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" }, "r470": { "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" }, "r471": { "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" }, "r472": { "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" }, "r473": { "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" }, "r474": { "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" }, "r475": { "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" }, "r476": { "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" }, "r477": { "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" }, "r478": { "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" }, "r479": { "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" }, "r48": { "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" }, "r480": { "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" }, "r481": { "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" }, "r482": { "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" }, "r483": { "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" }, "r484": { "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" }, "r485": { "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" }, "r486": { "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" }, "r487": { "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" }, "r488": { "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" }, "r489": { "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" }, "r49": { "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" }, "r490": { "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" }, "r491": { "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" }, "r492": { "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" }, "r493": { "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" }, "r494": { "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" }, "r495": { "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" }, "r496": { "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" }, "r497": { "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" }, "r498": { "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" }, "r499": { "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" }, "r5": { "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" }, "r50": { "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" }, "r500": { "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" }, "r501": { "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" }, "r502": { "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" }, "r503": { "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" }, "r504": { "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" }, "r505": { "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" }, "r506": { "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" }, "r507": { "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" }, "r508": { "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" }, "r509": { "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" }, "r51": { "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" }, "r510": { "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" }, "r511": { "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" }, "r512": { "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" }, "r513": { "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" }, "r514": { "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" }, "r515": { "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" }, "r516": { "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" }, "r517": { "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" }, "r518": { "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" }, "r519": { "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" }, "r52": { "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" }, "r520": { "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" }, "r521": { "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" }, "r522": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "740", "URI": "https://asc.fasb.org/topic&trid=2144680", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r523": { "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" }, "r524": { "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" }, "r525": { "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" }, "r526": { "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" }, "r527": { "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" }, "r528": { "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" }, "r529": { "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" }, "r53": { "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" }, "r530": { "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" }, "r531": { "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" }, "r532": { "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" }, "r533": { "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" }, "r534": { "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" }, "r535": { "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" }, "r536": { "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" }, "r537": { "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" }, "r538": { "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" }, "r539": { "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" }, "r54": { "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" }, "r540": { "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" }, "r541": { "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" }, "r542": { "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" }, "r543": { "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" }, "r544": { "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" }, "r545": { "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" }, "r546": { "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" }, "r547": { "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" }, "r548": { "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" }, "r549": { "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" }, "r55": { "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" }, "r550": { "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" }, "r551": { "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" }, "r552": { "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" }, "r553": { "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" }, "r554": { "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" }, "r555": { "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" }, "r556": { "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" }, "r557": { "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" }, "r558": { "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" }, "r559": { "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" }, "r56": { "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" }, "r560": { "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" }, "r561": { "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" }, "r562": { "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" }, "r563": { "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" }, "r564": { "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" }, "r565": { "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" }, "r566": { "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" }, "r567": { "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" }, "r568": { "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" }, "r569": { "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" }, "r57": { "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" }, "r570": { "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" }, "r571": { "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" }, "r572": { "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" }, "r573": { "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" }, "r574": { "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" }, "r575": { "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" }, "r576": { "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" }, "r577": { "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" }, "r578": { "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" }, "r579": { "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" }, "r58": { "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" }, "r580": { "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" }, "r581": { "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" }, "r582": { "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" }, "r583": { "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" }, "r584": { "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" }, "r585": { "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" }, "r586": { "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" }, "r587": { "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" }, "r588": { "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" }, "r589": { "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" }, "r59": { "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" }, "r590": { "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" }, "r591": { "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" }, "r592": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "850", "URI": "https://asc.fasb.org/topic&trid=2122745", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r593": { "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" }, "r594": { "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" }, "r595": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "855", "URI": "https://asc.fasb.org/topic&trid=2122774", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r596": { "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" }, "r597": { "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" }, "r598": { "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" }, "r599": { "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" }, "r6": { "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" }, "r60": { "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" }, "r600": { "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" }, "r601": { "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" }, "r602": { "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" }, "r603": { "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" }, "r604": { "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" }, "r605": { "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" }, "r606": { "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" }, "r607": { "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" }, "r608": { "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" }, "r609": { "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" }, "r61": { "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" }, "r610": { "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" }, "r611": { "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" }, "r612": { "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" }, "r613": { "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" }, "r614": { "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" }, "r615": { "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" }, "r616": { "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" }, "r617": { "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" }, "r618": { "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" }, "r619": { "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" }, "r62": { "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" }, "r620": { "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" }, "r621": { "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" }, "r622": { "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" }, "r623": { "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" }, "r624": { "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" }, "r625": { "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" }, "r626": { "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" }, "r627": { "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" }, "r628": { "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" }, "r629": { "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" }, "r63": { "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" }, "r630": { "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" }, "r631": { "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" }, "r632": { "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" }, "r633": { "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" }, "r634": { "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" }, "r635": { "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" }, "r636": { "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" }, "r637": { "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" }, "r638": { "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" }, "r639": { "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" }, "r64": { "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" }, "r640": { "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" }, "r641": { "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" }, "r642": { "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" }, "r643": { "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" }, "r644": { "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" }, "r645": { "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" }, "r646": { "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" }, "r647": { "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" }, "r648": { "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" }, "r649": { "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" }, "r65": { "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" }, "r650": { "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" }, "r651": { "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" }, "r652": { "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" }, "r653": { "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" }, "r654": { "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" }, "r655": { "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" }, "r656": { "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" }, "r657": { "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" }, "r658": { "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" }, "r659": { "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" }, "r66": { "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" }, "r660": { "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" }, "r661": { "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" }, "r662": { "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" }, "r663": { "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" }, "r664": { "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" }, "r665": { "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" }, "r666": { "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" }, "r667": { "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" }, "r668": { "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" }, "r669": { "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" }, "r67": { "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" }, "r670": { "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" }, "r671": { "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" }, "r672": { "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" }, "r673": { "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" }, "r674": { "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" }, "r675": { "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" }, "r676": { "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" }, "r677": { "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" }, "r678": { "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" }, "r679": { "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" }, "r68": { "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" }, "r680": { "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" }, "r681": { "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" }, "r682": { "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" }, "r683": { "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" }, "r684": { "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" }, "r685": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "b", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r686": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "b-2", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r687": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "d1-1", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r688": { "Name": "Form 10-Q", "Number": "240", "Publisher": "SEC", "Section": "308", "Subsection": "a", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r689": { "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" }, "r69": { "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" }, "r690": { "Name": "Regulation S-T", "Number": "232", "Publisher": "SEC", "Section": "405", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r691": { "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" }, "r692": { "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" }, "r693": { "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" }, "r694": { "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" }, "r695": { "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" }, "r696": { "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" }, "r697": { "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" }, "r698": { "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" }, "r699": { "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" }, "r7": { "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" }, "r70": { "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" }, "r700": { "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" }, "r701": { "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" }, "r702": { "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" }, "r703": { "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" }, "r704": { "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" }, "r705": { "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" }, "r706": { "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/2009/role/commonPracticeRef" }, "r707": { "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" }, "r708": { "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" }, "r709": { "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" }, "r71": { "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" }, "r710": { "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" }, "r711": { "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" }, "r712": { "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" }, "r713": { "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" }, "r714": { "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" }, "r715": { "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" }, "r716": { "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" }, "r717": { "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" }, "r718": { "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" }, "r719": { "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" }, "r72": { "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" }, "r720": { "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" }, "r721": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "320", "URI": "https://asc.fasb.org/topic&trid=2196928", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r722": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "321", "URI": "https://asc.fasb.org/topic&trid=75115024", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r723": { "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" }, "r724": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "323", "URI": "https://asc.fasb.org/topic&trid=2196965", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r725": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "325", "URI": "https://asc.fasb.org/topic&trid=2197064", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r726": { "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" }, "r727": { "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" }, "r728": { "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" }, "r729": { "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" }, "r73": { "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" }, "r730": { "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" }, "r731": { "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" }, "r732": { "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" }, "r733": { "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" }, "r734": { "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" }, "r735": { "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" }, "r736": { "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" }, "r737": { "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" }, "r738": { "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" }, "r739": { "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" }, "r74": { "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" }, "r740": { "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" }, "r741": { "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" }, "r742": { "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" }, "r743": { "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" }, "r744": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "450", "URI": "https://asc.fasb.org/topic&trid=2127136", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r745": { "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" }, "r746": { "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" }, "r747": { "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" }, "r748": { "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" }, "r749": { "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" }, "r75": { "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" }, "r750": { "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" }, "r751": { "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" }, "r752": { "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" }, "r753": { "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" }, "r754": { "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" }, "r755": { "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" }, "r756": { "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" }, "r757": { "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" }, "r758": { "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" }, "r759": { "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" }, "r76": { "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" }, "r760": { "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" }, "r761": { "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" }, "r762": { "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" }, "r763": { "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" }, "r764": { "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" }, "r765": { "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" }, "r766": { "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" }, "r767": { "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" }, "r768": { "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" }, "r769": { "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" }, "r77": { "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" }, "r770": { "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" }, "r771": { "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" }, "r772": { "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" }, "r773": { "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" }, "r774": { "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" }, "r775": { "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" }, "r776": { "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" }, "r777": { "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" }, "r778": { "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" }, "r779": { "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" }, "r78": { "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" }, "r780": { "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" }, "r781": { "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" }, "r782": { "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" }, "r783": { "Name": "Accounting Standards Codification", "Paragraph": "6A", "Publisher": "FASB", "Section": "25", "SubTopic": "20", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=124256753&loc=SL5864739-113975", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r784": { "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" }, "r785": { "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" }, "r786": { "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" }, "r787": { "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" }, "r788": { "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" }, "r789": { "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" }, "r79": { "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" }, "r790": { "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" }, "r791": { "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" }, "r792": { "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" }, "r793": { "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" }, "r794": { "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" }, "r795": { "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" }, "r796": { "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" }, "r797": { "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" }, "r798": { "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" }, "r799": { "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" }, "r8": { "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" }, "r80": { "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" }, "r800": { "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" }, "r801": { "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" }, "r802": { "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" }, "r803": { "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" }, "r804": { "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" }, "r805": { "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" }, "r806": { "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" }, "r807": { "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" }, "r808": { "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" }, "r809": { "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" }, "r81": { "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" }, "r810": { "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" }, "r811": { "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" }, "r812": { "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" }, "r82": { "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" }, "r83": { "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" }, "r84": { "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" }, "r85": { "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" }, "r86": { "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" }, "r87": { "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" }, "r88": { "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" }, "r89": { "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" }, "r9": { "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" }, "r90": { "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" }, "r91": { "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" }, "r92": { "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" }, "r93": { "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" }, "r94": { "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" }, "r95": { "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" }, "r96": { "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" }, "r97": { "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" }, "r98": { "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" }, "r99": { "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" } }, "version": "2.2" } ZIP 111 0001580905-23-000023-xbrl.zip IDEA: XBRL DOCUMENT begin 644 0001580905-23-000023-xbrl.zip M4$L#!!0 ( 'U[I%;'=)=@L#P" &S:&@ 0 :6)P+3(P,C,P,S,Q+FAT M;>R]:U<;R9(N_'U^A5YFWIG>:W7AO%_"V/A#EJ> M7"MWX@>=JB0CE#\I>YVR![E?SHOC]Z.OW4#XDWS9NR&<%\]78WEQP]7"ZLGD MXF5#1K=7?-F()Z.!ZPU3?]!U(P0/:V&D(*R@[+R2\;#8=^[XHJ+DAKZJ9'HA MWW)1N!SV!:/Z&Z\S+7'U;\-1ZX7+M]^6-X& I:E3_ZW^7HG'$#7%3?O MPHXHAA"NW8G?5_?[G[[9%U06Q!2R-4SZ)]>HP]%B;?_KDR@I/1 MDTJNGSS[C__XCS]'Y:@#S[#1Q7ES_GPR^>W/)Y.:?3^>/OLSEI\:P]%I!_ZY M$LOA<<>=/NWU>X#/+T^>YH(PF'PL8X1>]1&OMY B!F68//YDM WIGRNE\!J! MI5Y(&@2(X*,*U$7.2$ =-?[C>M442FAQV44]U\V/AO+I&K).S,SSLN/V5QH3 M9+':D]'35)Y +)+K9,4J(_X8^?M3O][_])IM?]KES7$\W/BT]\H>;AWNGNZ> M[75W6>MPMQT/MM;?TKU7NZ+9_>MP]_ MVUIOE7OY<_?]P6O>ZNR>]5FSVV1[ M72S/-OAN>Y^T/FQWM];_*G?9)FD=[I_M=O?P\U^=W?>&O&9[I[L?@FJM_W6T MM8Y/;N]U=MMK$K]W]SYLXO>_#IN'&[S%WO%6^_U!Z[#Y*;YZ6?I7[]3>J[>D MU6[RUMD>MB7PUOJNW/NPP5JO7F([CSXWU]^>MLZV#UMLWR6[.VUCX_V M\#V:9WA/MU6VS@*VJX//W26['S;$5GOM-?ENQYR\;F^,FCLD_SUK MMC=.6FL?HQ>.J>"*)'E ?G6J\#[&PDM)"/..)_ KSUZNO=[9^//)-8@?$O%S M4_.R' ;7V04W>(F_#)<0_QW$9[= G)+@'$PHK":B$-JA"172%LY8#1&(1).[ M\BS#,#.$WV#]_;C$^$X8DULPEC1ZSKTOG VV$-&(PM'H"NI)9%YAYTNQ\NPM M?42$-WIH54Y?(,8#U]GL13CYOW"Z1/?OT&6WH,NYT]%R6;#$7"&8-(4WQA0R M1&&UD\J!67E&$"UIB"7R$5%^,1X,KA'U1B^N8W1PW4Q'_*7HXF,/BNB60O"W M0L!OHW$K+>&2% PB*81$0#P3K- 8\+ 0E$\,G3/*GO#OTO(DK.2&6HX2()(- M)G&6$M?:\^"YU!\W;\(^#1B>OBQ[V3E_#1C5;.= ;RN]&\+:< BCG1$"GNE] M*TU*E]4Z:AW^56Z]VB7-PR9_S;^R=:G9W/^^R)MEE;[&M MFPRQ1SEYV6F=[9YMK8>39G[C;I,WU_]*K1UR>BX/S;.-DV;[[4=F. E*0D$4 M!GI"A%@X$F4A9490D)0H"L.W0KW_?#/H'\-@=/H&@XO16B]N8!1QG#'#S]^ M=BV-8+ 6T'J/.WD48!V.!X#X9FCQSK5N?S JSZJOWR.&8*U( %13BF]#F($4 MP04:D@4C&*O$D%&V%,-Y$D,A$G48.10F$%D(M!B%$5$5,=)H5>14&%LK,;20 M?2LH\0+)&5=:0G5M#=ALM;H7RA1L>O.ST/_\+XCYL0^BX MX;!,9:B:\[(_6$=KB4\M>^/\>E>D=+,7^EW8&KSH=_%U#K* ?H+)CY?RNM'+ M+:_JFJW8LM;I5&R[NQ)%Y62W^_)H[T.3MMK;1RA2LOEA\V1OO84BUY1;K[:/ MFH>;)RB"'?C7]NG>AWB,]DOM'1Z=[AV^+'<_;./SW]'6J^W#O?6CD]W#ET=- MAK^?'0FTNJ?-PY<)+>]GM(3,),J]%H5$,X7.KG!H"5TH"-&42R?1I>%_(W6; MB/D AJ.-DV/L55B*R**)2 S"HF]<^)B'C0'#72\8+ZR+5GJ)SK0*#RMG)=:*1T026J("E P1$> MO.<^6'!@%;/F5M.#+2V[KC/\YTK!;XK03G[*<_2N8A8$;.#$?QH,7&^_DI3G MIY=%WKC3RB_[[ :5ES8ZW>P-1X-J&&^X-3J 0?O ];:./]=CC=:F.=[5;9 M;+\C7PK2!FVN[Y^B WRR>X;Q_JO-TU9[_[3U88.VSC9E\VROTV2;6/]VVEK? M_>@HCUZY5'!%T1:)"(4S)!9 :!*2(^DXO?),$D+.I>-<'+Y3/*)SC#,N'/7H MHQ#C@05@QF5N"?CI5DZ9#_'X,J^8 MYQN?#JNI5Q2H1C7_^'1T>HP #,ON<2?/PU:_'0PJ>;LRA;AZ,D0F_//)]2HF MC[]\YK0)P_YX4'VK9HV?3F5X@O"/V,7SBJ :<3[_5L;\/94P:%0-@ENGC5]L M_M_K(ZU;3* 4VCM#S^RZO730S7BG*"TXO M'S&YE:D?[-%QI<_7NVRZYN/INYWU[^[-[QC?FZO>S$MH?K@WK_5 ,,$8 M0;R4 7O .F^%DCQA+*J-P N/)T]3M8#];)HG7R,^[.2X4X9RU(2NQT?$LIO# M@+P0[,I(:SF"UQ@I1'1KT73D(*$:C1L^/VVZP_[@10Y UDY*5,7SFUZ,AR., M*@;;T*F\A^%!>3RDHB*" 8[E-A%E3+*O_Z9O&::)D( M26M*4F *D?+!6.J3=P!)*,>T65 M>WS(?DK+KGH&&+55<=\%'K'\A/UXM6AK M,G34O^C5[W0BOK@__[@.O7ZW[-U6[5U=O6M5/+G>^K_S87YDY'_VSLRUV(3= M/39A]Q:;<&VE%Y8YGE*.[RSQD B+CE-!(I\H.)UG!;\8.9T,;.31D'XOCVO< M,)S];K??VQGUP]&#*C*]-W-)+)?!$L4B1;8-T:*U#%:82(UF@8B%@68MQFK: MWW7>N!)9^H4[+D>N4Q.8(J,F4 *228& E46^4%U\DN#$S;,')E#^*& M&_3*WO[#VL/[PTH&)2QA M3B'5H;EB3"*2^Z5L0'4 AK7F;B&LP>:1NF!, B ]M9;[9"<20I2R\@T5]-I MG 7 ]['&G]C]S;!%PJ+Q3('1PC-PVCN,FU6@&$$;K18&FEF,/]T?3(%Y[PQC M&'I%H0$_4Z1,,-0D'9F2"P/3HXX_W1\^%+PF ;6'!"4"NBNH10)=4BF%<4&3 MA<'GL<>?[@\BZP$]#.X-$5H 5Y82$G0,1$NP#OC"0#3K\:?[9#T+(3EGF0Z" M!C *; @8!GCT*$CTCP?9K'J )6ZU581HC'V(8";2A)X44<%A2"3)_$_-SYWG M=&\+79#?9;#HP:J)N?:<[FT$EP)QH%*(D0HFN-$) M&!.24H%.%+$+ ],C>T[WA8_!V%" HH;:)#Q':E>"$!^#IE8DNSAJ]/B>T[U- MKC*OA3)28^@A(K4F$;1#F>\\1N\L+ Q$L_><[@NR1"CZ2S$X+Y5 _*S2TJ1$ M>3+*!^5FL(NC]O0W^STF0)5T/GDI&1=<:T>]L0R(L%2!5FKQ4'V\>:N9 .H] M*GUBB1!K!4"R.MH(E 3CC>%:+!Z@LYFWF@FXTEH9K?!1!RVLIUXIK21B';RW MDBX@N(\_;S438!ERKN,IB+RA 0-TKT%'QZ7DR,,T+B"PLY^WF@W0)(*SRC$* M5LBHC8Y&Y$37WB6@(<[_7I9Y,+,/LF?%,!:C-,)H&:M\X\X[IAFZNZ!ED&)A MH)G%Z,L];BWR1(N,"@U)0%1.YR$RC6@1*56P"P/3HXZ^W*,:)02'!\U,H"(@ M+#P(*4 "(-TQ5H,]L?/DFCP(1$E+Z9+WS'HBA(HNH#*Y%'3T7& ,N# 0S7KT MY7[V[7?ZD^1/7V[>]\=/SR^>5_*MW?N7N14FKW-KA=-K=ZGO^GPUIXPD94C2 M(+17-CAT7/$7QPR89&K@P@X'HZ>3K9W3W=)3<LMLOAT?/3Y] + M!UTW.+II<#]!;PPO!_UN/GC73]3#?D0T5NSQ+P1>$% MD?$+ NR-<\._DESF&#]^-_T1H%9I,,YZ)9(V%E+DQCC.@#)G>0U6GLXE_N8M ,'@B6PP02K/7I(VLHD70W 7-)??>AO)C*.!*4HXPRC-2)8D,Y) M80U5>1:(1\%K8.*_+5+'KARL]>(V=/L1%G(Z($0-.CO:#.,X9YSS1%/OO#/: M)!_K-'DW-S3U*(2QE.R_D6S-)!/>!)?'CB@$(X*6U%G-C:4V^1H8X#F"<";V M)8J( 2,$ @8$A^02 (.\X1NY2LE4 PB7Y+24[%LD6SFA14KY,+8@O*3>"T*L MUMX1 *WK,#CR+0CS4#8,\KDZBVA9@%C@TG&3%!?@E:542Z\4<).3[]1IIGUN M:.E>I&D^R*^6,LTB^"09LXF $):XZ-'0BI"X],8J6P-3.Q>$-!-K(G3B5%'" M8C[=1G!KA#"<*T(%HE/FY.3X=VBS@(&3HGR3L48T<75PEFF1+ 1A//!B5DJE"J('AG3.2FDTF&"0D:;T%H$$X MP[QDAD9PS"=GG*C#Q.N2I.I 4C.1;D-9I-$'#!*8"$)G ;+^).Q;RD*N^>Y#8*[3F:',HI:"5(#,K1&F!9*Z;Z4>%:#+J: MS;R=@)!"WJ"FD:R418ZBSO"HB0Q1UL(8SR-=S681%%"O/'7>>"ZHU5Y8JA$R M<,%$EJ &6"[IJC9T-9O8@5F.?$650-*BB1MKE&:0TT@FC5'$TB(OJ+3-9FM^ M2%9S8G2B4CBBG&5@93Y'1TH;R:U'/2^E;0&D;3:18]!YL#V8?!0&8\$ECAX8 M,EZ4>6=Y72+'-X-^'(?1UF '!I_* )?V$DWD>'*()\P%'T5"U+PU$+0V M,K$ PFKRZ\#W^*0T;?1:+TY;?5'-H]+5M!F_A&T4*EDI)%5@DPC:6Y52DM:" M .83U&4)PQRPU8P<:4"'1F@JC,T'O%LKM.&&A1B3 5T'UV;)5K5DJYF(NR3< M2\$T(5X(#<(%22R/S&E%/*_-^H:OB_O.0?\S#-;[_<%PYP ZG\K>/LI7LQP, M\)=%M#^$ QH@(%Q$DE=D&<5!1.\L^E\V&J@!HC4BEH<3OH7@M)EH@).*&LD< M!X&WQ#I:?Q,^2TZ;S0 ^U8P2%YBS5+"8YV'0)P.N67+$B#H= MAK3DM+ISVFR. [.2:B&= &>%8A0#$AZ#H<)2$I*M0\[B;XO5*S=P^U")U4+: M)"]29(:$$*B0X)SVAH$W7E+#&9._$'Z+1)5UX*O9S! I @2\0FX2@G!GC/4" M?V/&>,VGF]/FVV+/"U_-9F^X7P6_+5+^!? M46)EA+SX.N4LQA@IFNBEBSZ&:&5M=D)_7=X_8,<,C@?]?D*'?1$M3C#"$HVP M*6,R7QF+ID8DP550P&VJ 8)+(KG/0'7A)=Y0JZFGE'*7T^T3&VRDUBEF\V!O M+7*[S0^",[$Z .@6)Z0JIY,(7J&O!9YY&3EHSU4=1BJ7G%57SIJ)Q <3E+6" M)4>UH F,T<%0I:QBSKE:G+WU;02W7=E[-1XAC LYCJ4\44$3S65.#LN\34*Y MB'B&R**F=5B+5R/&NB]1FPMJK*6\,QN=MB98YO)"(.HDTY$$C!)IE,''&ECH M>>&KVIT31^0I&60.\ M#GOG'PK/)7/^ F-Z#JOEEWRV&'PVHUEU;8TSPEK+!2AJK'3":ZJIUR"G MZ5#K;,^K_$K/QR76T=N?%EO(L0$EN:!**.>L%5(ZKQ!4G3B!%).K19[!^T=R MR6&_@$\6DV64:R9US,=/20.$TXC"+SU3*M;EV+#YXK"96*/L5%,2B!74B^2U MYY W : B1Q4/_QS26'S3^'S4;RD[5*>&> :A$Y=4YP';VP@6F2;!T.]?RV MY$^O+'JV9P30:&45%4:)J,$3!-"S&+0RUI(Z'#1VWS@N^>M7\,' !.J2<=); MP4BPX(T*&(UH"H3%.DQLS1M_S>8,)\VY4M)IC^@)+0Q))/ \LJD25ZS^:_B6 M_#7O_#6;O*E)8*014L"_@DOEO8*D&467+.0KM;;;-P"]E*LJ'%E$6,D324!3C)S*&L"Y9+.%8+/9Y%VU M7$,$0I@&8:1#,V[P0R3*X 5;AS5'2_&OOU$-RBHGM$\N$>&,#8-!Z@^Z#B'<\IUROP)QX^08P@ABN^QBD:VT@[\.$PHA7MLY[^Z)+/SY M,!6OQGZN9XJAKN!^V"==B.N5#JPI93H&,1"M!.6 ?&FLXR8HAT3J'?JPXN-F M[E;*YICX=E#X;#G4D55TYPNSJ4.+UZ_[Q3YH=@V4H,*;L"S_F5 M'X GY9A0BL01$.$BLYY)FBRQ3"DC("T$/)5;7"]<\J![TMIQ;1+"P+PB(EDO MHY$RH!<\-Q1?'_V9/1?:B-%["AX"UT)%[U7B^%=HE2)UK@Y'.\V-ULT>3682 M\'P<@U M/^6GSO_B@05B0N!6H+)9*2-A(I^D0T%*F'\M>XEQVPA>EY\@;O90J/=+WX&U MX1!&P^>GDR.;.VXXO#[:T.KW0K][#!BV[0^@DH$'6(W[(/IG\AD(Q =/+!5! M)^^U ,MIBL)X.S5;\4'$N+%)<\JH==K':,B"ZEA[ MX"+D<<3A6B]67UJN"W51,^Y9HNC;$V*-R(NI -!AE)0K[BG HJK9+$"[/TUC ME L*-M#(O< PVQ(N\RG*/#LKD,*":MK6(,)@ZWPD'^M[[L)1I_\ NWT?QJ)9 MHV,20E(3A)7"26XDBY9+29PW?$%5;2:HW9^N:1,5B\E%)D$$+VT(&F3T6B& MRJ?YU[5U\-4BTL$XWWAUO_4G>-,O>Z.=/#E0?8-!GI5R^[ #O;(_:/5',%P? M0_MSOWW0'P\=X?_%V<<.?VO>[W]D:19S>+=X'\GN2L>M0;=^K0':Y&4J>?ZR)Q MSL8(W'MO9!1)<2<9\5I2#%6BBG2.[<]2XAY3XN[/U&DJF0O<&W!$Z)",-RIQ MJJFA6@<:ZL5Q[F0I'SH5Y2+^[-0DC*K?%(8[U-A3312Q4B)U2Y(KN,NG\_7JE\XC\_>D\)8X1';U&;1?&(\VGJ#R-D P82^9X1\.OB?S]Z;R7 MR7JOM&>>8B3 G.$0' 6,#!1*F)I?G9]G?.XQ;M,Z0##.!Z<%RT=$6F )?\!H MCBA?@R51\XC/_>E/T)PE90@(2856TA$5C?$FH(_LF3 UVI[R&MP0SG)&96^_*O; R[)GL^N2BE"=N:H8%43EXZ.U T6\-E2G4*=S/.<( MRMFDOJ ^:J^M,08080D M6G ?3+#&1\4LN&"LJM-9X',#Y&RV<5+'.*+C,+ 4@&KHC(DJ$MP/(!05CO]UF$8!N5Q_KB5W@SZV#FCTRLG M$T-UQQOL[-/K!%P75U1! D>H]4+B_R?409$TDFKRFG,&\SYI]?,03OW3V@(H M H",7$7JT!PJ:E.RFJ'_ZB()R=9@]?!+5P[>N\X8GI]>?/P7UN@&X>#T-7R" MSO7HXJ+09N]X/!I6)6A-T))))% \IY9 THS,\:"9S5D)@44#XM= B]4%+0Z< M66^E5DDPYUSR@7$9/7HK4D$==L'< UJ\)FC9A&%Z2C)@8">"#1ZT1'.FF'&, M*5&'W2]SSX3WN"(P$>]"BE8:*[C ",![QCQZ(AJ8\>370.MAF?#^T.*(@P.3 M(2)"$64P;D-O ZBD@&['+X+6PS+A/<[Y!9.,YS'O)!-:6QZ_7%O=''[>CD,G7Z^_Z%7 MLCWPSJ5Y,;*"4DT),.F,%,)Z8TP0>0$:1Y.K]1POY'Y,VEY*TQU=-F(5C41* MPD#DO >(D6/FS.&SIR9XXTH2Z*:"\Z##RK$@/)5IRF+O\G5=5YLK=.YFK)K(8^) M=E2'0 $(NC+9F7%&H4=#?4J6FT3G)WWTMT?!7_1[PWZGC-5P]R:">S,_QOG M]AVQO"]1^I42FC)O,;#"2%AZP9-TVFJ/7X)0.AF0-9"DA^6'F0AR+44I!NN8 MI\9Q*84&XQ5&6DE+DT]1]=;60)3N@N4FOO)@6N5&)^>#7]AS<&VR-A$'R8+$ M^%D@GE0;8B@/"'*J"Z+;,#RGALMUN5=_C(?CX6A1&5ZF&$,BS-"(I,ZBXR&R MJ))D!IB7M@:KCY:^PDU)FLWQYI$E&[SVE!CA&+6>>Y4SQ48B@HEUD*2EKS ? MHA2-92X*HERPPC!GM&764$EXE#HOP)I_49I?7V$VB"8!Q"9 S/!3!$MMWJ!G MN=40N8!?&M%ZN2FSD1]'E!)"HG&A@B7CC"=&^^ HM4*;.AB7)8@:G([*V,02 M$2892PA&@'D/EY AN3E>E'DY7#PH/Z%*?X++0>/A*U?V7O>'P^>G_X*X7\V% M3)R]X4%Y?'.V9'CPLM/_/"UX?Z/87S8KGXUWU0=%8D(YVT;H=CZ[XZT>;*0$ M(=_SU[ASBAU/V-^ML;ES>Z:OMP[#[X?P"Q+7AM.QEPVLRQ^>YA+#?'64J6MD]2#J<%BA.^7FO;G_H74K$.H:N;T/B5G3A7L5Q!HXJD. M6*.P*@F!+C=P)V,*,H\!*UF+K#MS*3P_H&<' X 'UK1?0:2E"-2BSZ@5TSD_ ML#6)NJB51K;64LWQ1IZ%$^F7_?'@=HF62XG^CA18+!(1 T;1V@GNM27@DE+< MQP3"ZQILBUD3\ZNF1)"%%1C.RMRYM0+ ;V(FA"^'G29J*)J9-$ M7XK.M:&A*^*S^#(R.4O;_)B,C'OE5$ N&GN!?W>R(K'2RLO+YQ6=7SW_GFNZ M5?(8LJ2-W%.6@L /AB?/A$[$$Q=('=+)U))+?U AYH6O$@]<@XX2+!4BY QT MG"C!(BC.9? UF/6>4^J8_60XDR%)X47*1&"9=RKP)*..0J%SY2;>%2'FX2'] M/NDF2+,_+-T73#M$);R58_.%[V97GXQW@<>8K!:*1R]MSN&K$J Q5^BISO^( M?1WT9#8I:PS321+*44'03],&8VR%!I0:D-XQJ!$'+IVWN6)@G<\5#@P\-T* M=<8&@. ]^F8H7U"'-67SY@7-'E05HN,V;X%"2XKFP*8HO1)<>N"2)EHC4S"7 MH,YF,I=[ LQSJ9(1CF(8%8S"&%Y*_"CF^;"E+U9YY9SKH],7_>YQOP=?KO*Z MS+]S'EJU8'0U=((W;O#PP?2]G9G'K!"4 KIF1D0?C8Z$)J)U<$2=9]:A2^#N M"3AZ;\ IP([D04D )2)!])1C/ A#'/*KJY/7-?\(SMYJ)I_0HR;".$*$==Q8 M8R&!4<&$B!1;(ZM9,[AG8D^3EY+E )E[)H+BSE)!C1(.%5P36H/I]_E'^6$. M'TV:<2<%]U$+3KU-+!\[:2RUF@MFIQ,82^#N;5;AOHZ51R-* X_)2@Q&K#"4 MHCL4N(D!"#JV4^ 8$_,UVH<]P HF[J,'&/'>Z4"L9<(GZX ()8BA#I(4FDP] M"H:///\PKS*\7G[*U<0K^V[.?]KJ/4*66NPA=D?_X&K1GS 8E!HO/%5,12N\ M-R8$[ZWU)'@G3(";X,TQ =4(O/L:$M% C74AI> %8\Y$%XP'2D(V)M/\[;77 MO/;G_ER!=T^:)[A0Q+!H&5<"UZ,]DZC!$ M:N58HH'D06/K%!CI0$EM ]-N"AZR99UI\U' N\J%CT.;&!)H 1B5"VX$TJ#NJ_[X9:512\0LJVTXQ[D M],+93YYY9AC#>#P1ZP4-S!M#(L9X*GD70JK3Y-F0.#U!]T\YEJS]T08E7D7K()M,NK==LV$<\(@4"%T,CP$>A26GYZ+A!_ M[_9[.Z-^.%K*Z7?(Z;5M3:[3^>:^INGU\ZKNO/3>:!YL,!B@:R$407YDZ,/$ M:H^3MZI.OLPM\O^Z=+[L8"-O*D(EC7?2AKI(R_4X4$C)1$*[1YC &-"+Y"RE M%@,*9DRLP3E0MX!YA4<>"KF'"1>"EL A,BZ]4$J9P"!$[KSPWCMPM03CARS+ MO" B-$0IG=6>*8%.HA,D@=$.)'@K33W5XU:*>X>\7Q=4B(Y@!/X?"";RR3H< M,4DNN2"E(JH.J>AGRUZSMSN*AWP6FO&)^GS.EA&4((0@!'?Y\+1Z0_A8G#=[ M'*D%F1>2"J8E0F@]ZKD':V/.8D:=7BP<'Y(I9X^E$C0EF9*0R0C)DF,&-'=1 M"V*4T'[^YP1F[@O>WV@_TJ%@W#!)(OKD2(V!1A.%P A,4NU=+<&8@2]XC_,O M4C @OEHD(M %L50&34$SS37Z@WHA$'DD7_#^4.$L>1IL( *X(&",T88"XR() M0[2KTV%3>5*LY;I7T+ER#-A:+^9L9R. WE:W5_KQ<+.7CP[+AXCA??K M^J-!!*^$2YPCR=)@++/*&*=XDIP[5:?$$DLQFN%^*Q/0]XU1:@Q/ _*2\DR" MHM92+X6LTR3!/(C1JP%:!:BF*<N-/\:FL#++Q?S3*T^CWH M'G?ZIW!O!X3.@4#/)G4&SR<8&YFSJ0NJE>(Q M05HZC?64I9GP$DV1R!2Y(B8(KX+7@-5KL!")9TM>^GE9^E6G^ 58E8*@!KP1 MABL7J+$T.AUL1--7IT192\F:*\X*B8%T26O.@C"!>.."!0J6.!\T7W+6O=N_ M?*K7H RC19^*\DX[GE?B4A6%H-(Q%F+0--$HG(ARR5D+(%FS6?2=-SIQ22P' M*2*-/H#51">FE/8BU&GMR -*5BU)0S,,Y+F&)"45PE)G--JB$ Q&]_@O7Y)& M;;56J9 X")VT<1AI>^NDCY*"84;XR.LTKGZGG3<[T.F4O7U$NND&1Y"/9MXX M.<:J'B%OS>,KKLD+OZ2*%CQ!"O:>>'!&:^T9W-$>[4^V#0 MRE(IA5;1FQ2D]PJTL8*%L&BZ^PIZ,' =1'B7Y5E=MY@1684^&BTTC/ M/ G/B;4Q*) T4J>%@SH-,=0 XMEDY@[D&")%%@!SKN@H@B)^BPR=;J](RY 6KVQ,JL"4:$X!2A(OAH M$O,R!HC(M8&),/]:-U^1S,,<""M=4(DJ2 K=6"H\>,]]L.# *D2P1M9O.;A] MF8$9[1IG7#CJ041B/+ S#@?50CXJ4:$NEQU,FL>1X?84TH55XP(DM/4)0K" MYJ<,)N==YCEI+!Z+2-(C)TH3K^\?GIU2N7.^S74D+6R!I"9IB'4XV0"?&L7[U+K=99@,2K"2=0J('];;Z6F MSJ&+;JFP['S>@-/SI-IT;C.B/Q\/RQX,AVM5;Y27@U*YB]9ZX:#_".EL.,K2 MG3VGRZ(_M<9$.9$=;F$A[[NSSC-BK24.HRQ-ZS3S,Q<(SF M1V1@N35>&RF4 M"5Y8FQ1/3'%/6#C?(LXH+\X_U!+!K=$!\OSEE4<(9)#:[Y3T]T;1GQD&AKS# M23O0.@DAC)>6*&JLQN^1R#KE;9@W,&>PX5];I2-WP24C4A*&:L=DL*!Y(B#. M%TSPBX$KL@3SSAF=OV.\BMP'F(ZQJ P(%V3*"=JV=K=$HY+R! M.8-5:JB,,5&(>4XG#Q)9()8R:GG>'$!JD(IC)L[.PPP)F>2]TDRS8 6SU@;T=GW4KGC'/6@_)8%QF:I5T[679*T?P MNOP$<;.'PKU?^@ZL#8#T?]+@RJ"8T,\D%YO)! M,R\Y RZDD8#1&3-"!.XD0/ *E;=.!P[4!NB9^/O DQ*24I)]3(7^BU7$@A66 M)N4C\$77Z/; 1>BZP=$PSYSD+WG-T$+JM/,Y)Q"/3 HI%"=.IZ \1.&BT,2J M1=?IV4 ]&ZW6Q"B;&-$:[31#^E8$(F#0B+%C2&31M;K5SXNICV$$:_L#J-84 M+:1*)RZYYQ0\*(QYO+/@'5=1LI0D$;Q.>4#J@O-LLKME]4WHD"FA!272.^EL MX)91Y' /6L08; U>#/HQW&UJ.BY"T>=_OXBZG2$H!-0K3',PH"9&\,- M(P*M-Y/,);_H.CTCK&>3>X>+)#W89#0(&9DUECN#'CAW+)_Q5".]_NK@R.7> MPT$)PZNG(G5.-[M=[+E!Z3JWW+Z0%EO8?.2W98$3$,3GLZ*]X &A9THYZFJD MW?5#?"8ZSAQBCC@Z8ZR@RAB,M[F,$@-OR=%#G^HX^FO%^8=Y17QG[(?P[S'> MM/$)__GR'-4;!1Y>@65![G1R^(VB/W-N%5BOE752&!D:E]/9\ M4DYP\HN@>.?GKH,?;?:&H\&XVNYQN2T+!MW7_8??="4*3NYC0L-Z+T-0^9P* MD0+SH*45@L8@$71W/J$ASFWV4A+F0!)N\H:XN^&_*C8_LYP48[? HB$N;^A M?]ZZP*GF0B9T_2ZF3NH@-E^#;\UW7@P@EJ.+8/R^!.:]0X\!8X=M[/R;/D88 MXS.W/L&@5^X?C##D<+U0]O9ST9U^&EQ<02\$3G8^N^-\Y;X:]M@:E+L90RD8 MP'#TIA*^*S/$/6BBQ!TLHO8D8PTGVB<)0M@8K-32V,"9#\%'ZI;:L]2>G].> M]@'V>J4_]W)4]7;>RWJYU^T#Y$Z$N(;]Z?8?(17+XZLH0\,FP3,;1!">*FL8 M-1[0/W8!0UVY5-&[B4K3G93=<7>I_(^H_#OER9U4?_X5\TEY\A3?L#\>!!A. MOAZ BU7C8_GIV9_XSW0-/@LJA1"<=D;(F,\A"%XHPWW"#^ ^YH&GRWN&H],. M*F*W[!4'%9D]%6Q5R^/1'Y_+.#IX2@GY_U>N%W6#?2P]ZA\_ML] M^],/GF"]D\^3ZK]\R.6=^0'YS0K7*?=[3W..#AA,?BE[6=6?C?K=Z(@K^J RN M,WUJ];C)YK2T]&\7'M2U3TX M+S#M=SYYW]C M\K=^,\5OG+CQ:>O0H]'C6&_4\;&?Y+JOS^FUW//?GGQV,6( MZO^4-&CUB,LV/*DZZMM(V=N0FJ)^7AQ;W!\\/7]>0J$MDNN6G=.G_]-&31TV M6O"YL=WONM[__#YTO6$Q1#%/DX+#\@R>4H-/J;Y^GG2&QGHJ**>=0UGNVG>M MS?;&>F.GO=;>V+DN;//?^)V-%^^V-]N;&SN-M=9Z8^-_7_QKK?5JH_%BJ]G< MW-G9W&K-SQNQ.[W1!S<\0,$:]7N_-]977ZPV&)'"WN4M;E7_1]=V9E<9M_.J M[(NNS"^WMIN-/]&0]?J]%GID@S(TIO9N&U*>4_%X(Z5>2!H$Y&Q5*E 7.2,! M[9GQM\VB-7HN^Y41RJ?K_5#Y>=D#69G.P?+WIWZ]_^DUV_ZTRYOC>+CQ:>^5 M/=PZW#W=/=OK[K+6X6X['FRMOZ5[KW9%L_O7X>[A6[:UWBKW\N?N^X/7O-79 M/>NS9K?)]KI8GFWPW?8^:7W8[FZM_U7NLDW2.MP_V^WNX>>_.KOOSZ M^R&H)ML\V6H?T;W##9KO;&&]K?4CTF3-L]W#IMQJ[YZTVB^/=MOO/L57[T7\ MUU^=/=;YY _[>'T#K[_O-MOO\^V@,O$-5,^!8\=HY:Z]O=O<.CTUV6VW6 [>W@'K>XF;;7C48N] M+[<^O"6M5WO=K?9?AWOKNV+K5>M@ZP.^TUD\W.V8SZ_;:Z/F#CEYW=XX:[8W M3EIK'U-BWD8"11(:69R94!@?24&9L2SA_Y17*\_^^S^M%NJ/FT1^P>-3;?AY MF48&>GQGLY+GM^_6MML;VZ]W&]L;;[:VVXTW[[9WWJVUVHWV5@-]ZS8ZT W* M&UO;#2I_B_]H;+ULM/^UT;CB=E^XW&LOVODRM5QMPQ9Z,:WU3A?; M5>+3RZWU#;*W_A;K>7^XUWY[TZLYP A3[)[ELDV"=9"M#_B>W4U\TTW1;&^C MA[2+[6YU6B]O]6I((E0QZ0IOB2L$<:JP$*"P,>=%4 +YT4R]&K'07DU[>ZVU MLUGY+DNWYE:WYE(?&Q,_H_%RT.\V/I[_UVCW+[[4S3CF5,7E,,]C-5Z6:.A0 MPCT,GCZDS[91S6GEITT>5DO^^JF1,?K14##*2XRD+-6% .L*EU0LC&&>:QL= M6)WGH&G!%2=Z.3RV ,-C]ZK>V:&ZPPCW@ZOQ-NQ71\7T1GG+ZZ^GRN2CE?DP M:Z4*:BTKA&*\\#22 JP*7)' DHLKS_*B#W38,!I^/BX[6;H:TWU(P]\;F[VP M^D,J/D^6Y+>-$Q=&E8 T^JDQN!",AALVAL<0\M*9V"A[C7(T;(2#:JC@'TLB MJQ^1/6Z_6[W*E?F1?F=DU6IVIWZ?@VJI6%5*WGNU'(7/?OW66X3ONJ2INT0T MT\4SCQ#3W.2BVV.:!S=[^4BU <;F50J7ZF2U%_UQ;S0X?=&/\&6\/LPEC@?] M3[F>F@X\3B/V#\U3_.T@MV?OPZYLKX^[GY8?.TU7UWTL(R&)%_ M$;'OGFVBZ7QYM'=XT-D[/"(M?+^M]@&V>NUD]W"3[;4W*)81N_3VB-VC $8C M"B*4*(1.M/!@="$=5]1(D); RK-UZ+C/;@ /'[)/6.KQK6TEX?_]GU21/W[N MI7XYK6V[D_/C"R9'(-8X 'UL=6S>5,<@0F(.5(&Q:BH$M[0P*MDB'XKJHH]2 MVK3R3,B":Z*5)-]4R/LV/8^DF[?+\6^506CT!XU^3JW8.!P/RF$LJY0#Z!I7 MZU3+JP:D*CK8=[WRK/K^CR59U0+GS=7MU9W5QL;D1+%!!>QU@FFT^JO_N$W2 M;WCX]@[3(]><^)D7_7&-_:9X7HE$'C^PG9%96HMQD-,53/Z\Q@;0I4GZ.Y-T M]H6'^,*2O?\](*'[ON<^V/%6]Z].Z]5;O+:);=P[:F(?X7?1PCJP+6?-LR9O MM==HZZPI__?L[J )\@D*(X J;F"^D!V:%#TI9@O;,RL9.?SPZ:/P+ M1:2Q,QH C&Z:MM\??OC\2YEA2YEY9)G9_XC$PZV@KB"$"3O2J_J*U?6I4'98@7^'%KT.Y_7HXZ_"T_D#OPP\'6 MA_='S5?85^T-V3S<[C37UV2KBVT_VS]K?GC+][H;M-G>ZV:;XASW@7@H0&!X M)!BXP@0+A8H)X4N$D7PXVXM^!^/0\? 6,S)5HWL54#M7\EG%2E52MD\8$RW' MSN9.BO<_!B*T-4D5W).(5H[KPAK""DDC=R(RYK5<>;9U4/9_VL)]1S12CQCQ ML=3H33_/+^Z5QY,!Z*6._*V.?#&@A5VN@1M7>"Y$(10AA=6!%XQR%XV(BE"% M 0!G5#[J6-;L!F1_FPI7GL\]'B ]E\>NTX 3".-1^2E/\Z8RP' Y7%4#*)$: M&ID;;AF-FIM%+7==:?" I)K=Y;4!N-K2Z$^M9F$?A4V4!B.0]13:>I=BX0C: M^F 5TXHS:[58>::HN$F!_WC(,8_7?=2A-P?]WB^[9)!_I,RQR#4K1(HZ78XZU;)0<.&@ M$7)N_OI,!]_Q%0>N,D<[IUW?[_Q6GZCH;J]7MSG\N[U5:[I:N1)+. D'.6-> M XG_\T&)OUQ:A[^/\._4 X/\[/F)"A_099_:V%/*?*7\M739)V-2K5T=WVTW1;*^QO?8[?%8>_UW*MX-WG]+[)*:./8#1J?7&<,.0>UW/QB*;)6>5 8"G!6%,(%45B+NJF3%<9RJBSE M*\\VG[]9F%7(MTOI(HZ4/H)-W)@Z&I,M05R/ZT$0X WRR?38HN+53+D?-0QI7=>;_1?TS4^, -&ZG,6Q1= MIX,E#I",KF5\KR$>9(=8#I8)Y5:'3@ M1C??XK.[WM3U>GE6>[\,4BFL;W+J*YMW0Q;&(AIVG1'F A MSQWIH-%H]>>A%\0?=QD\K0MM9OY ZNB6HQ$R#G200@;]7O9@.J<-0&_FM%'E MA'>AFBI?=R,WR;!Q@U OZ[@Z_KP]QI*"R$R7V[ _GIP5/V&NG:(]^?#;^2@U MXVQU6GAT4%:;JX_SYNJ')ME)VR]H$X;_> Q2O-*MN5>G'/GKD>+IQZ@C5R!D M8:(+A3"RRB*B,"#A*G+J' >Z),4E*=X3*;H[T"*RCVMTL.70<"$@+0Y;&_+?#U M1IX7S#[HM/!7&GQ>LNQ55F#J8#/T?"8?I_[U5:=Z]5R&'GF"T:X:R7]T@E'\ MV$S@WTS947WOM;)5:>Y_(E#85:;40TR&2LMKU+-WZX(?GW&9N]6%CY)9;? " M26J_/SB]97BI*E315Y@6JO5($_[&6^UWGUNO7A[MM=_*UGH'[]DGS0^;)ZVS M#?S[3NRMQX/=L_V;(TWH407::J^1W0_;G?R$TX)*&0L1$R^,H#ROT-(A"N+0Y5YY]OIVX[(P0\,/-U]\ MUSU=/^HIW6]FV!M>[2/M>9@[X-=N=>&6TOT@+_4 $BS^N&VM0^WS%%UUO!?RCKM3"+T";H78?KDZS0 GSWF2T&>?115" M/U$DE2<0\;TZPSJO:GNDN.GT=7OWB]1A(3%J4RJ"-JP0SHG")*(*;AP78 -E M>?G,77+O+[V3Q_5.%LP:_%RRDE^JJS9N'ZV>O5U9&LO9&\MSX7A5R<:+B6@L MC>8/&TURB]%$0)@*R15H%*$0GLK"*QV+2(@&9@0GT7^'T9SS)6SI&U-Z>?/G MK4LURG3;*HUJ;09&J;U^M;1B/)S,!*(&3(ZG&UT>[S)=^Y#71.1G=4[SPS^7 M^&A\;*.'[];/DWN?RF$5]?9<+V0]Q5@X9W_.A8-G+*FC+?O*SQ? M-?>;NU@O=VT^;SDS?=_+=:IYZ>$!=#KG4M3X#66CF@Z>G$I0+;FAS.?Y5TK_ M8+W[.(KS!:>AX]]N\X&*3$5)."'6"'07' DN116UY49RFSYN5C0@F%Y!,@QE%U7[ MGRN;K9>W+$:N=IE52^5WJD=MC4>5N4.[=YTE>N-N$?NC8EHA.LWH"6-=Y)?C MC+6SCUK;*,#IP@NKT&\CJ?"!L")12)K2Z%FD*\^8^5T0\;LD%[FES@%^-MGA M5BU7"I.-?L-JH]^5?7#3?7'GN^%^;_0OH5F]B]#/1U:,'U]0]!A9,:9O\F5B MC!EES7A6Y1O_*KK3%Q-L5>?./^Y/?-RG \B+B3_!M,^G$>*5&Z?O22YO<1[? M:3SZ^BW76_R-]EW]-]]?T8%B0:40@M/."!F383YX]%:X3_@!W$>] R M -^'P@_ '14N8:<\=9W/[G2X\N1ZP[!5-SKBN][A%A.0TH.9@ G4R)K3 MCC% &>12V!PW-VUI' RR;?G/.P'7KA@$N>M%-DN]T?#/)^Y6H?A*+A4V1WEC MVFO/7V_D\TU?;+7:&ZWVSIVRP>@)M=2%2<6J%0^P+A';(WZ"GZE\P#']^YV: MGVQ=K23B82GDMOVKLZ*0[VS+W2F$DI5G;]:VVXW-QC0R;[S<;*VU7FRNO6Z@ MG[JUW5S+)Q3?0BL/NN;L9E*/6:TFO0W3!WSB%YBBI_J]<-*O8/5 :GCC_B(7 M?DK-(]CX7T-! M;+71=#T,G;)65O94_S%LK)?#,)X< I_W)ZWU7.=T6%8C#I?*C/Y[G,R2Y#+; M,!QW1E61K6.8-'"IY371\BP33"[U?)'T/!\D>+D>>MMK_VMA>CCK54 T1 M3*Z6IG*1%)31&P-/KV$?X]3*1E:9CI9&LB;:F9%<:N>"::>XIIUKJU5HV7CI MPJ@_6&IF7313+#5SX313WQ@1?M>[<@K.CNM,UIIM_'MB[8;68 M8VIDEWI<%SW62SU>-#WFY,:([SHD5TW*O#O.IT% K^P/KNCO4E?KH:L9UZ6N M+IBN\AO#NDVL &UM C2Q5R9CECI:$QWE2QU=.!U55W54KC:VJHV$F[W)UA:L M=ZF=-=%.M=3.A=-.>U4[U6ICX^2@].5R:6%ME!(!Y'HY$SHG;?D.Y 1;>;:S M^:JUUGZWO;&SU+=ZZ%M&C9MOZ=M=-B#F_5?SOM]P;LZL+^]CLV/>(;'<[;C< M[3CSW8YWVW5UDPWN*.1\Y>&NSM=->>_UZ M8[WQ_-WFZ_7-UJO&F^VM]7X,56:WVCM8-O@)]VMEYO MKJ^U\^NLO4:9W6CL_&MCH[W3^.U=:^W=^B9>^VBX;DX^-?SZ*\U=G@ M2$-7%;7W?L )694/U%AVMP;5(>FX?;3,C(]YSO?=WJKI!N&@P>GOCY:1>_[Z M8!T"=#W2VKA.?014+]=S*>GOS;<< A7PK,9T<>#U7%/RMNH_K)5)N?;++YP MPX,JR@GY0SYQ^)/K7(N_KSN^=WI_TJB!0_!?/_6&?]P<+)^G5_MJXLKQ,-[( M6IF$E=Q0R[V0(ME@$F=+?RM>1:[NQ\V M68OM\KWV6ZSCX*"U_OYHK]T\:QWNE7N'&[QUMOGY_!Y\UGB/O5/-[MNS%ML[ MV#W$^PYCI[6^=K+U:B.WM=,\:[)6]Z]NLQUX\_!Y:KVH,I97F_0C?LT M[4N"6DB" FM% J":4B$"8092!!=H2!:,8*PB*$;9DJ#FC:#.;A(4"R:"U;R@ MFJE").\+RQDMK/8*35 TBB@D*&9_5TS/$4']C4MX/E9;31M_D],>J^1C#^=\ M;5$6(U?\W[(74>.>%M^?\!;8OVC^-R9:T=6^T M59+/-VCK1E[RXVZK^Q[;LLE;Z^_.FH=O"?8-^7_LO6M3&TG6+?Q7%,R\S]L3 MH>W)^\7]'")H0[OI8X3;QN.POSCR:N06$B,)V_C7G\P2V(!D6Z 2E*2,F/8 MDDI5F;E6KKUS7PYW]_C;UW]^.#AY<9+'I_/E/4W/3 Z2+$NJS$:=9!E+_S"M M$%@L!7 1C68H<,K8UC9&[:33IBN29]/L-NNOKNVRK+^U6'^'.^\$4T%1XR!J MPX%Y2=+Z\Q%H1,Y8J8A7?FM;MSF;M?RJ^]\#+WS?_TD?(W<;D^:*=M76=S6MEM,(;,3Q@6<]8-SRN@6R'J.C87H MG &F, =E3#*_D1%I1HGE*">P:-GFDBZJ:6?+M*4:W?.Z6S<=R;7MNP7)]X/D M*>O4240)3QNCLCPA.8J$9"<]"$R,<3HI.!K3:K541,8S 6* M< 3,*0=6*PF>X^"LM)X$L;6="(O@A4_ABL>BL7BN2VH4/-\OGJ<=%X938ZT! MHRP#QGRR'0(B@%1D4AF-K');VPJU-6V2![).OP7ADQSI;T'!^E0#(FB!&ES M79=[XS8))JOB^]A%5 O^Y9/L^'@]-T*^>5?R2G@YSF:@SM5C^,BV=DZ9Z1R=@_[YG^ M.!E2>Y?#GWZ>E,@(SX(9A1?Y-@_CJV1M93;;R65J=IP[.SGKF7'PN^%TF+ZE MJJZ2/KES,DB#^J7ZM1!>781W<+13D5U%>D<'B?#VT#N1ED"(R('$2":98R-H M8QT$CX.2E A+$N-A(MI4L0:98L6UTDRQ4@AAQ0CA_ 8A&!.%B8: ])@"X\B" M%L$!ET88+IU-5E$B!*S:4C:)$-8G@WTVEB\:*???MWH9/ZUJ2& 0X2S]LKAO M9JW)K2ZU\W4.9E%8X:7Z>&EO6J@0)XPVB$"(*O&2-P)TVJX@HH"81X(&[+>V M)6L+M'"H6XDV:2R4Z](I!C6M)P+Q/% M(%J70[=DXJ @,2BCI=66:X[5UC:E24^(!IDV MQ4_1S/.. N'E0WCZ\,-CB[ #XE ENPZL X+\)ABRQEE(F>=,=+FB\N(YGDG M;I,8^V"28I(5.UM&U-9!:LVJ_=_Z\=>%B^M-_"WD6Q_YOIEQT&.]5$YA<%A& M8(%E+[&1@ (.#L6H%2=;V[@MI6YS45=A@L8D_?[$7U.XK7#;$O.;"[?5RFU3 MYUXRRM=/9;;T\.GSR?_\X?+:[]^+E_]_:^^O5_M&;FKI:TC0%?G"6 M6XPTN*WEO'>Y[N>EEZTM>UUCN[WN^$>UA4M_RY6J^W@YM6DS/!M6,YL[^O0& M_?;CL[1XCM+:V4U+IQ22J5UO_3UM2VKI1>32 M@HV*)[U%*1CN..AX4?EA8-.-3C(P M2GSDO59\>'9A;)T7TJJ;M#[,J$W%A#"&60;(YJK?S"E0 B.(PFB/HK(L5PDF MHIU678-BJDI\9#-51\'R/6)Y*K"!.(-$#,"C8\ HPV HSH!6WA)*D%.XPO): MQD>NM@")D[IM-80UH]Z4EBXR0R0DEJ+ K F@-)=@ MF$(Q**J4EHFPVEPU*4VLQ%(V4WL4(-\;D&\J#V(4==QH4!%K8$1XT"(B,,(K MKR76F(L*R*A)0-XPS\=E#^'6J3G/'82+8^.>VJ\_GXQWH:+:J6A&12KF$O-8 MC<#3X),1E*.[I>8@@E>,X\"YLUO;F+*VH@MG:!2/1F-!7'?G]0+B)8+XIIZ0 M3!DMK R=G/8&YR&\"%45_V??@M,*-]7.33-*57&FL$_&#A OXK5HIKXH<+Y?.-^4&H+R1,DRK5T7DM3PG($. MWD&:RL3+DA+LU=8VQVU1?! M]&2EYLS733C[77+F:Z&E9="2FY%_@JRFVG%0GN2N8U2!)2)Q$PW4*(\]=;D2 ML&I3JAMT]EM".9HI+0J<[Q?.4P4XD.71"07>H&PJ" [&:07<<&20\4F$D 1G MW9:J27#> $?%[[5FMVZ"N;/4[-;"2,M@I/:X%JPO"0L3^6D4*=YQ"(7=L8)R]:"U=: M= AS;HFGT64L4RT;A.4-\&#LAA@2 'RKVW>#D] :F\^+!6^L-1G5)2PN1WV_ M&O0C\_G*J6UIA5@K&:#6$4>(,-ZRK6W"VUJ7 M))3U!7-=RJ* ^3[!?%-9(!VTPX&!\4$#L]*"QDB#P<:H-+>:,I_ K-J,KV$* M2I.EQ23MY%M9^))X\G"))\7060(=?9E1$C09,-')BG\D 8:]!.6P!!$8YD1[ M&55.%X*NC":Q&"]\D\R.VH!*:0P$L .:V)YM() MZB9]3GF3<+R1Z29A3_Y#0J;)2#&#T%I@D"+86#(!)) M(10L%BQWRR.2M2E;F;#SDG&R@AJEH'Y9J+\I2CB6QB%K@3*1E G7%C0-N>2O MY\QP9;5S%>H5;S-:E^^R))O44+=\<'+2'9^$7$'4]'T%Q'3KH>]R"?-?.H-Q M:&'QKSH[)"YG^_\\ZC[N=WO_9VL\/ LWF>#*4^[T_9.KS_@5_*B ?P[PSZC- M20@5W)&< 6\<,(,3[K$5D C:\<"44AAE1-W ?&,Z92YG8RKK\;[6XU3M)^\H MX]B L (G"]D84$;(9# SIV7 B4OX=]?C!IRLOQP/W-_'@U[:.T?_\P]%L/RU M%?Y[UAV?+](/N2D=CQ^RI_'76?7=CY?7OK@$Y/<_)NA*3:YNWR<"> RZNL\' M6 C/AY?\Q MO;/P[;L+.=Z"'/\:'SRY3H[I>KWPQXOSMZ_]J25,'#Q]\Z7S^N#3P8?CDS=' M[G-G]V]^L-O[T#GYBW5V]]*]''Q*SX[?GOR>>P2\DX@C)J,"I'4 1I$'[9D! M%M-<6QVE5O+'6^IWEM'=;+ZRC%9S&1F,?41. 9>YQV_B#= N24:GC?,^YF-S MO;6-'J%I!]'4'UJG9MCZF*?W<>N["V^4IWU4"W7M=W[_\:JKEMAHYVQ\/!@F M,O;S^1[*4GR I?CEU3N>&(8Y92"BH(#EQM.*I*6HO2(H$LZ<#3]@M)D+ZVYD M5A;66BTL'[4W""=24]GX8%J"8AP!%Y)PIT@P50G:W()S9AO.::(S7V>^,*0*"4PLL)'5F!$U;K;6*2&*E%JY1 MA%863X,6CV(V"LG >ANSQP2!CIZ!#!IS140TGMUV\2R5>?9'H[.\$Y9U\Z#K M1AJ5=CMGP1'I@2DNP!@O@ &A4;13IEW31BW3AFF6;4@18H $-IQS(8 M"? B:.F\-,R29 C^7!S-(9\FBZS5K6:^4E"#;SM/RXQ;!V;HCB='D12W6YF5 MJK?M!A=.;!A>>XFT6^EJIR%=_&/H?7.=^N['$G:XM$">ZU"NG#K7K:#8_1P\ M? G#03G5ORVVI]*1> (AX000CQP8D11T("ZM)><%LP%C)+>VJR,$\FN#8@U+ MS' SXW$*>)<(WINGH,P@*1TR$!AB29$EW"J$"5A$B8E)H''$F@C>^SZ 78VC MNAPP,,A?>N=SNIH.6"8W4DY7ZL/NJY^*ZLZ'O\_?/DUCL_OGA\ZN/TG7^W3X M.CUO$MMOOAR1L/CMZ_,\J1J!4'PJ4"9IU(YGPDD*07CH1) MZN./7-I+/^LM:ZCY:R@11: V[<8^6V=IW6BP,B 0UHIHD:/!L!4ZH;NRY,HI MRLJLPR_[[PA.=,5,2 K&YEI+CH*A2@/G:0N+,AKK'\Z;75;5BJXJ[Q6+4L2< M/Y=W2)K;0_(J' $ES:QH6A!;VWAR,G?KT[EV8UCNTLM9UF(SUV)GU[TCP7OI M!(-(/0>F36*X8##XF#0;QE9Q';>V*6TSK=IB1N&7.QP&+X\!RXIK^(H[^NN= MDYX&D62=$,XF]E,.E,R1?!$K+3GGFMG)BB-Z9AKQ51]Z4ZCNVBER67T-77T? MWK^3R"(F20!L6+(L:-)VFJ35)Z,6(@B"?31571PJ>1O1&:NO27Q7EMTJ++LO MK]ZA8)4DAH''UB?20PP,5QR4%0XY$;#(64IYV2'19HI\]_RP&8>&FU 'K:Y# MPRN@O3AT*(<+M\/BS9-!QA%CP0OP58J5XS:G6#%PTC)M.14>\:P@%F[=5*H4 M-A:==9T*%G0NBLZI$D$FXNP< Y%0"DQ* =HZ!\%7OG\IL&09G:Q!Z*PI0V\" M,G+EZ*Z9.9@[Z:[SB)M>Z]1T1KY_?Z3R;A? MH:%2+*0^>IK1^Y$ZE:T^"4J$1$\Y1<)*(P$GUM)>$\]Y5N*4M#E:N%1("2MJ M+*#K$A %T/<,Z)MZ VN$7#ZCHY;G5&!J0#%&P2$:;"0BR!S\39)MKOE:)?=$+NN6XJEULA, M,UI!8DL%(<@ 3;(B,9-78*F7('.?!:^X9\QL;7,BVTPTJ0A[\54T4VH40-\S MH&]*#2M5H#YWFQ:Y^C'#$G24&(Q'5B@NM!$\ 1K3-M)-DONRYMW6 9-TOZ0)D3+M.0L!\V< M .69M9)0R4VX7')(3N]$EX?))>OTUIO&+P]@R,U Z8STM:+V%@3I3?/-,^F3 MH2; V?0/$X&"==0\5;2X.(E7$,)UF6X%PO<"X9L& MFU/,"(0I8)K[Z_)H0:5-$@0RDJ4E'3UR%Q#&T[[A!X'PAKF%K_@P6H.J,YX; MG)P.PW'HCY+(N.R_6YS%RSZ7_C8/57.M)U=G8=+"\]E@E!MW'L8C\[GP5GV\ M-:,5;R0LJB -$)S(BREMP6A&0;@TMUY:@G,1<N=I'8J^:CD%9=I)5>FQ$V)[6C&GM@04I@U"72,M8!\S)X MB4T453UAQ-N$3&>OW"W*IC%]]6ITEVPN].L2,P7Z2X;^3;V":- ^31J(]"\P M(0@83QCPX*3B""4QDWO^ZIPCKE<%^IO>$;@ZY)E?W#MN;FJS7@Z8%]7858"[$V5&@78KU78IWJ:BUR@SMF M(9G>*EG<3(/"2@%"P@B"O'/23(A5M35=V.9N#+%6ROS?8Y.^]#*TZ$H\Z04H M&)E([M/!J,J^>CP,/9.CDG[]U/7CXTO07/G@Q1.A;Q\Q-MW\V?C['SDQP_?= M?O6H^CIMNI#P-KQ@@NW_M<-_;U\/AKK]56KC$XQ^1B@D/RA>](97\[%?AM R M+I\QF_YY+J+2'XS3U<>#S*'58JZ.HF.W;_JN6WF TQ^J7LDWPMVN_)L?NR(Y M09R(SCDCC6+<1T6LLTPH:F/Z(9AW6&]=?NAX^"U&^GT .PSF;S Q#[^YVGK>89,Z]^-MP\@V3/S;E49\< MILVT\S(]:OKIY>&S_=V=H_1+>OZCO8.]SM'+UN'OKR]VCO;3&UH[G?S. M@^C\.#O=8OKSH[KW;WTX?_M3ZC\TNWWQH?#\[2-?RHW0J? M7(X&KAQ"IV%X^=M)$@?CT?>?_0K-X"N/?>>AF'\[X16K50+AV^9>B9(T MC#US.@J/+W_XU7='ISUS_KC;KP:C^M"O%]>Z4 292V\(DNH>)R]_H]E':$*U M%T[#BV^^>/E1]=(-D35Y3>A'FI/OOHP>X>^^]J/+8OH(J>]_]$>7_?%KG'[_ M2^]\L^21IG+>R\ZPJR_G,0GA)EAN MU&,=I>T]M$[2^XY'K9!V?3_)=FA1W/[NPY;E<=OE<<7Y=0O3L.%K)[N>ZWKB M[QX7K^O(D:6CZP$06U?KGS3'#S0SG3!N#OCRPL-\\NK\[^<'N M#C[ MZ^S^>=+9/9YXL#_LL YY]>GPZ+?T^1"%#EZBY1 M@B)6 R+:6D*%53I'MRK99KKFD[:?H*A>'EP#U7VWTC0/I[J?#$;C?&PP2@"] M6\V[!B9:KX#3@X]'0Y& MH];I^ MICJLV^9=8PW6W.*5W!YN_;T,O?3']^M2IVT%5/O%B.]-X%[V[MKV[AE'Y5I@ M&@2QX'PN_&^%!66)AJ@U\I0CBP+9VJ:D+=#"/LU2CZVY(*Y=?1<0+PW$4P)< M8^542-I;..^ &>' "J2 JB"H$3%HDJUOWL:UG?$6B;W4'JH/)W=V_$FWWQV- MAU72:3G6O3]?9>@G0Z>WT_?7IZ P:-T,.N-L5V@=J;0!HC4*F","C(H$J#$F M[7]>2:ZVMI5N<[1P=^=RM-M<5-?OA"RHOC=43^DB1UBB7AE "T> *8O!<*] M12&"UXKS7,%'ZC9FS4?U&NBB578#[9P,TIU\J3+MBR_HWE31U6$_C/O]L>F_ M[]I>R '$XSF;>17Z_#E]'LXXU#48"V^I@CKFS6KEF!*@A.' :,"@G A@=63>$6I0I!6H MD6Z^PW<---$/=&/C0]Z^' %1!-7^?E6P>40JJUD>K+::6$N#-> M,Y)(U7M@4D4P3"5F]9R:0+WF/I&J%&TEI]OD-K2.>&DAL-(:JW# UK=NBMIU\107[>J.X=DU>4+Q, M%-]L,T"B2%#%&KB3!ACF<2+(E4^3)8D/V.0V Z@M4/-AO ;Z9Y5/?R?Z^Y>) MF_-?ERIH;9JWSSD*OSRH4S-/06?0'UQW;'SETD*7MZ#+_6G1(XG5G!L"!EL* M#"D):8_S@"274@7/0M")+OET!M^_FG,@5$YY'U+MC-+SII\*+W*DVI@0+ M*20!)8,%YI0"G?-OG1$ZF2M:^^ 3]_U7VYFMW'[JAD/-R_Q$ML>V$?_Q;ZH92P MJI51_YJ69TPP+--F"LE8)L (#V"]51 T1CPXA25+\@RK-E+--Z.+%ZQI(JO M>;EPGFHQ;KE*;,PA'1+&>*6!445!: M:(@H(A.QPUPG[<=TF\BZR@0\1(N<6_OE"L,5AEN>,"X,MSR&NRF'K5$X39,! MQVUN=$$1V(@9<)^#67$(RJNM;4K;:O'J[ _(<&L@E%?-63@)C$LP/AV&XV3? M=C^&UB^]A.A_7F_#ZVT=SHS M.F[%WN!3ZSCX]V%T=>&W[,3KT_KEJT?]7_FE?SYX0.63J\C]MA\_20_S>WJ6 M/_*C/#7=?O[C3AR'X8O@>F8TZL8TG+]] M[4\M8:*S^PH=[K[]<+C[GU[G9/]+9W?OR]O=]U_>?CC^NT/2.,V(="AB0ERI[;@,H)"E8(:+37/"@T-:V:#,ZG;3QKSRS MK;1.TG_#$%HG:64>CUHA[12^=6"&[GBB92ENMS)'5LL[+\-V:QA&I\'ERHR] M\T=?94K:B#8F,>J>@_N7BO*=?NDL73O0;[K-<" A2N2 2>*!,6E!D[3/6!H8 MH8HF]/.,5(JF ]KF3QDH"9(;Y!,JZ&\L^J==2L@GWN= 8G8I84) I8T;4.(! M@:+RK*HCI]H8XY)=61Q'T]WCK[J,;GG$^K,F<&M] '&[AU^;S:9V_\>,?:83 MQH>Q[!VU[AWOIY4CB<:*:#EHEP73,. M7'_B:RY\5_AN>>*Z\-U]\=VT5@Z!RC11B.,(C$0!)C$=.(>$)$YA:_36-L=M M39?>'[>HZ/H/KAY.1>^983_=Z*CU/ Q;+X_-,#S^?E&2.1Y\68>L\[I4[NT6 MUV"M_JB>3J-C:G\SHZY;)+QZ317.FNB81$45$]5KOY&;D)S(M2CQ0N9-R\-JG#0 MFG/0@C95X:#E<-!->REZ[&00 G@^^68,C3E,H1>8@W/Q4S#70 MF3^J6]UHG;G;[9V-@Y\RB!8^M%UAFI_UB&M'\\N6FA<+JQ#]K8A^1J%M207B MWC'PFN))'1.=!"8XR6- U'EG324VF]^>M?;LJL)"37JV!HK-PD)W9*&;II>K'ZF?WU3HU8G:*S70$ WM^9+#MB9 M4$#G[,2&X6&LMNG1X37;S6856A33(> T!XP!)>%DPB!C0 MU"2CPDBG$-[:)JJ-)&\+J1J_IY< ]46@OJ *+U!O$-1O"G='$%<224!1Z 1U MD:#.HP;GO!-"(,EB4@!$MRDB;:KK:KU;Y/N:=OFYL*A+L=.'ETX74S%%JX51 MZV/4&650$3**8RW ^R29F,4*LI@"@S'CA%.F"*G$$Y'I/[)PW[3FQ0 4L-^_ M>"I@OQ>PWY1/,H3 +)7@HX[ 7/#YA!V!TPR38'F:95?))ZY06]*%T_@V][#] M\BV74.05Y3Q \.P*7J.QD[ILE_:#[A,YV[KENQ^[/O3]*'-Z+Y&S;YV&X<3! M7>)W-RQVKNZ@BB>#DY-!_^5XX/[>O5QG7X\V+Y9;V=GGV-G?S(BK8!II3"30 M$#DP%"D83B,(EOZEFC'%JQ--TOSBYR6(MQ#1&N?.;B5GBZE5]/!Z-N7K"/AZ%G%7*MLF!1;';-WW7-;UT?^D/)^F6 M1]J_^;&K+4H0)Z)SSDB3MDL?%;'.)JE.;4P_!/,NNW(O/G0\_(:;]P'L M,)B_P>3B6H]-[Y,Y'VW]^_J IM&\>!1&'LG,%/,MW.^/=(Q+&^G)A"<),)CT MM7R<=HLPS.]*MV,:VCBN4'L97[=DY6A-F>M2IF3P4F MF;"N%E?&CZ[];3BYX\D?FP*8_<[+HYUGS_9V6[^]VG^VN]]YVGK^XG#WU9.C ME^W6?N?)HWD8 -]\MP]_3;X=/_N\?A\]V]UZ\_)]_*(+EKZV]OU[M'[UI_?*JL_-J M=S]]YE]W&A^!)@B_/D27?VW**+5^/WS1.OIC+_WW8F^O=7#8.?KC96LO#=UN MZV#GQ9,_KM5^):V=SJR_T]8:#]$OW7YK?#PX2]?PHW8K?'8AUP;)ADY5"O>K M\[/W?K$[F_'SW,]LH)_*V1OG5M^JI MM\YPT$[VT/MQ8^IYBYF>#/JMRH?P\&GFW$H*S4D.^E>LWUC>I5I M_MQT?6N_7_W\Q)QVQ^GO9:#R0+T(8Y/^Z*NAN])(A M,KHPDB>P^^]9=WQ^;9"^XW(FB^QN5TXUOU>>$4U7:&SXD%9!>_,D.,[SR!LU M=#N5D5T3-)?ZUO49\[)Q(9\>$_?'NV0MQ]>XOWWP^?/VV>_#Z#>Z\?D/>'/WUY5MLR%^?WW[8QP>O]^C;#^GZ1R]ZAZ_W M^<&1[QU\<.3@Z=MNYV3O_&WZ[JG8D-W?3PX^O/JBT>="_B0EZBSP=?]CX?'/WUCJ.(E68&#+,.( M5' <',:>>N-X8)/NQ$3BMN#3W:1J+I$]@YF;'-"V&/+O+]IM/N#7UQ=@ZO%7 MD_"F.P/VF&P)A64#B93V=++_*\+AVTR@:TG>R%-N=-($(\C$\YKQY733'FL)'&(+<)>*]#% M9%6H#=^DMABL]9I0D"888)$I,,X;B!%3[97E2(BM[31S,UOSKDX7D\)MA=ON MRFV>8.4P"IQPPXBTU@:"')9:6$9EU(7;&L%M]":W4:ZI)L$#C48"T\R!$00# M0I@E&Q3;&'22;9RT.5OE#DU+K8:P9AZH[_=#G^F"$DGUFT --P2Q&)B1%#O" ML0QI76GJYW9!79Y_5AQPX8^Z^,+BA*J- OA-"G"!1V*\!,_2/TQ0!S9W'_!4 M*TXCLL$2)HS$C 67!L9KSA#3W!C%PO<9;I0>,_U47.WU\]C-C'*$ M-47)W@9J+ 7&J "#O(.T"5EGN:-%JR0AD6 M;<56P\F^!NWFYH-G)XQ;W7F#K4L#[K6^Q3D*[\]QBZOC*[W%UB2Y\E$;Z["V MS.ID:VHATV:D):)2>_F3ZDW3>U3"W23'(><[E.VIMNWI?/J8Q"-&H]489/ ^ M[4[(@;(&@U%*:>IMVJ4F@7IJ\2I.MX-)4SINK WE5LL#+]4AE^P/E]A^/MC M^&D#Q%#IE"8>E'?Y)%P%4-@)X"P8'G107I#5HOA:.Y@TV0#)J0JF[ZJB4&Z2 MD#[*]GO+?#)#7Y45"R>GO<%Y^$$"U(IU/5A&,@F)EL1$5IQ'R@QU1B1A2KCT MB=BPY>@G_#7C2+]RHTPR27;/AFGLGJ?'&%ST.ZC^_QK06VM2I^3=4'\ MM%Q9$.[?<9I.H[TZVOXAV(MVN0V>IW(OM$%$4(6!^L"!!4+ A&!!1BPEDFAO2%Z'BS_Z "W@'K9H)[* M.B R!F2#!,-$!!:U!95,%)#.) O$&LJ%G 7J6Q_Q-A'/Y1KE&AO']P_I:;HS MRU^UTV+W<_#P)0P'A?UO::)-N:.8T$3_ 2$PV#%0:>HU"R(&[+>V MJU).Y-<&*;N-.?5^>38IT7.PIMRUE"N\0#76+'>]4O)*8I2JR1^ M/<3J<8,6\D540 -HP M8UR \2B %(Y$*9#GSFYM\VEGX_S&S ^VD8<^&E]+0-]"K"X(YCK$ZA4H%\%: M!\2GDVL<$91:RB!PC8%IST!S)\&([)Q,6E:%6)M@;3#:FW*-36>=!IC(A77J M9ITI,]DQ%;#Q''3TB74$BV!LHA[%@PPJ)HLY'WTTCW4V)C:C0@;8#(UL)7_% M1BM\SC_?+61\U=R5Q>6Y.)_7<,)UG<]W_(>ST;CJ*7@T^-:T(?=KV.]?=&JH M5J^]R>LOPG_/NJ-$["_#\&/7A6"&="NE%UKQ=8W/.U+YG+'0KLSL'=1]W._V_L_6>)AY:.'CDW)J:\ M!*L5 LNQH98'*QW.%'&#I\I2V;RE(E&D+A(!B%$*#%$.AK&T:##%&AD>I?8S MEDKQNA>O>\.]-+?WNA>5?#LRF7*M4,*L3JP!W*D(S#,,6D4"V'K,I)6,H1QY M3%CADW*-#;W&IO-\ TY7"\_?4C1.QQACFKA>:Z H$YEMHZ MWC2BWYB#TZM)[1=Y[*?#\+$[.!OUSENN9T:C;NP&WS*C5J]K;+?7'9__+/9X ML_S!34AR?Q%&XV'7C8.OWK:3YZ<3QH?Q(CCDK-2WKY'F#J]GN]/.T1;R*=?8T&ML^J9PK^9T MV13N6Y)>M;P[7UY]>H[Z M^K[[\?+:%Y> _/['F%0L\@"0WNU^[/K03[9X@D(OV7>^]>N\)]3\SHN&B7&CEPJA1Z1#)X%S!$J1BPW#]-,6=D M)%(2Y7+'V+;2:YK/7:[1S&ML/,/6;D46AKUOZW#2I](1ZYVAX(43P S!8+"G M0"-2B5^)TI$UBV+O^U3V(1$YP4*K D-K&$[/AN[8E$36'-:@SEN'V!1AI'.^/#:[Y-1]]%IJ)VSD 2'1Q8TB*@@[2@K.1I M+[,N_;>US3%J:T;7LWSMAD'Z'DH^78-S=8IQB>8G@]'X((R/!W/BNJC2^7!] M<&'W)VQ_.3ARM//IG>(!2TN2$$U8!D:2.#514XA4*FN8P1:)K6VFVTKP]01V M4ZZQ\013NZE;".;^">;538*Q41(? @?O' :&+ %+E CH_#L,K+'H;CT!]U/X:+OK_M5C^,S5_KTW^/1'\._#4]/M MYS_NQ'$8O@B7N1:N2CO:Z?LC\[E(@=H\X/EL\?R&!SS9CRSIN*0!E$7 K+>@ M-%$@?%)ZV&(F2(Z44&V,%VYKU>"3QDVG@-I5?J& IE+ =*FFZ BA#(%6N68\ MP1H4SW50;.0T\D C"PVD@)I.PAJ;EOC;SK.=SI.]%K0.S- =MRANMS+V%DDY MO-('.0_[:-#K^K5K%S[SW -[;@,B(=$9959+@P)&T7')/9%4L'?[MP__G!QV M3&*_RU%'K1Z+J>K3.'IE,0*B.0/&G0+#DDRAR%!/M(G,X*IG..6XK6:<=MPM MEGL^O#RPSW3.AYA\]U3_\P4HH6ENDW_><7H7&YG5),EI"7@WAOQ.0LSQH)?& M;K3WW[/N^+Q(M-O2WTTKS46*H_,,,)<.&3! :/$=$D& EDCE.B=:55ET' M,%:#%3>9]S:%V8Q')*D'(H*2S))@I#6$8^&PI%A)L0BS%LS7W*-2&>R9!^ MQH'%H+"*TA/!"[DUA-QN:CJBHM*)W2 (FC0=80&4"1PXM48B0K'#5>PY:C,Y M?0:_QN2VJ0ZM6T;RXBS[71(SR GF%$HT0)AUE'.FC)-H;H_6M8"<"_?6Q1<6 MG]9RPG>]S9^<="3Y$II+%AB0!YJ0 A7 $(QCE M(9\N\WRTJ&4;SR@)6 BN$-SJ$=QMHBYL<(90JQ"3+%"ATQ6<] DL/&@3:+'= MFL)L!S>9S7)DE$LVF^(8+]-L'OYPO*%R_["V9@ALA[,_" .TX6TC0R;M.U=+44R1][5/),R''RZ MZ>9>J2'9\9<]>?_7#O^]G1OSMO;[U<\7[7G+0%4#]2*,3?JCKX9FSPS[ZL,[=KP(:V._>;)*Y[GD3=JZ'9.DDDS MK@F:2WWK^HQY6:[-7ZZ;DZ7UI^F?F:1J)FE:="EI6JL9V'+;MG%42RT0D@$S MQ(CR. 9$D' &V< O#GTQ*9E:#^\\_&LZ4RM@3YCD")1R#E@T!JQF :R7C GM M4 RNRM1B1+BNI%TM@\MNAN@&AHR*@H)$PD(B M+ M*. ]182\YUE80N82TJ_4EL4UFL/6D+\.LXTY30SQ-Y*4-"8&861+N36$'*[*=QR03LFI #MK 8F1+(_ MM77 '<-,)'F=MJ=<&9VVD2ZY59OAA;IE>I7RW+(@L,(Z,DNQQ2)=UWHGL691 M?T?8E/2JA^* J?0JK9G'*O=+DY@ ,]B!D81#X-%P2KS7TB<.:*5/*L'FL-M4JA57U"$A)'"-$# 1$5C/*"!. M76[#(ZU"N1,/;3.M5X+>[KM3SX/%?G7"^*(MSR*M>.I) UIJ!Y5RBW4TD)CC M%E?'FWJ;%I4()_O3.V.Y8$F'ZR3;5(R81B6L$Z;J+4$O>TO0GR<$)]Q]:R91 M-JCZ-JA7TR@*;7 LM3 @DN;O:A,MXE<. KF=CA9MOI> M(W(JMU@H?JD4SZQ$B>4MX]BQP)SUPF'C*4&.":5LH?CF4/P,&R18&J()%I2S M(9$\S=';*'&^-")('KRT<;5(_B6=R[SG37E1S7? M6,[)-Z;O0FY>ZR;5%$;9V]0RG\S0CUKC02N'F/@)T$JU;^_ MF5'NSGUR&OJCJB_?T^'3@#7HZ (0;+UEVG*%[-9V7>74"I8;&&AE+2(DDHB0UBP]KY9> M^X"14U8I*MD<8!ZEYTT_%50_#*JG\F@8U4%;%\%ZSX Y2D&A0,$RC#3E7!*A M9Z'ZUD%7301TN4:YQL81_D/Z1>],\U=-M=C]'#Q\"<-!H?_;BKIIYZFV4@5B M%1B1:^5ZB\$PXR#-+U6.(>-SD[JJ0AGYM4'B;F/"-%Z>#8>A[\/P.ZZG18(W MFG(V5J[Q ->8XT!P]7:W6Z;)<:VYU\QZZ62R8;$50@J>#!QGK>;X9Q9-/>[( MWP?#&+KC7-NI>!UOL9^]G\Z:HYSY(*@&;H5.NUFV9 (/0 Q"AD<:G,5;VUPM M8M#\8"-YZ&".#8/TM&)=$,]U*-9I-!=U.A^:9V2&">(#$GFV)%+ B&6@L+-@ MTXHC6CKD1>Y3H]83SDVYQL;32@,,X4(K=Z>5*:.7AAA8< Z0%@X8)AZL%0H0 MBE02)0B+J#FTLC%!%M7*!YN7?K9TOZ[]5OB-VE5^V356:=>882=@%03E6$)(LPUI$2!0,D90U)!< M1=G*:)NW;VS.T=CW[(5N95GGH&S?'08W'@S+,=E&.WL>TG:XO:^G4/=MJ/O# MSK3@#\A8)AP!9YT%IC@!0[ "[45$$D?*60Y69=,>GKOE@Q7O<;G&JEUCTXF^ M 4[]0O2W)/I9 6S:4R6X J8I N:% N,0 S^7%_P*\W>?GENQ?W6@+*;K6_[(\/GEPW)-+U>N&/%^=O7_M32YA(SYC& MX_>3MZ_WT,'K ]S9/6!OG_[Y=[Z_SNO]3^DSYV\^O/C0>=U)UWOU3HL@HD<6 M.&,,6"X]I+R1@ D-/#HNHS%IV)U:IV'8JH(6OQTZ)X0TV'])V%-2 "6-'7ZB0;@3BBM M@O(:XZUMRMH:E4S!#,\>;$4D M83I2)4RS2+9X,JU/O<[LB3_G:P19I-WMR'&JE9:P1 @7@?'($SFRW& %<_!:R\AQ3)3),CGR MPHJ%%0LKULB*BA#ON6)*37A3\2C X:0GN4/4A429A)(V1T5,%MHLM%EO?@]*YEQB2>PB"UX8:822 M,K$GXEPX76BS(;1Y4VEJP[QRW($V(=&F"P24XA($E9X:3&T(=FN;$]EF8N&L MGO6AS>+ JZ$@L(J),:B31#G,7.(*ZAAG@8>0S%%"T-P>O*-A,*.SX?DD@&[B MSKOXPN+#JX\\IBH >RV,0QH!85$"B]J 040#M4*(1/U:&YK(HXT);0L^W7KL MUI%T:\ <17 5P57'$?#=R'-:<L5A.=])8R M*4VQ59O"F5.1;\D^3>LYF:3FQ?"CZ[];3C!W.2/5Q[&A82PX7S?=P%< M1AY)GB\]&%7E:1\/0\^,NQ_#KY^Z?GQ\">PK'[R8 _3M(\:F$3\;?_\C-\;H MCG<\YU5JXSR,?D9Z)#\H7?2&5_.Q7X;0,BZGJYG^>5J4K?Y@G*X^'F2>KQ!H MQL&W8K=O^JYK>NG^TA^JDLHWJJ)<^3<_=D7+(L<..>>,-*HZ.2?6V6354AO3 M#\&\(VKK\D/'PV_%A]X'L,-@_@:3(\D?F]XG67UIZ>=;]U^ M?Z!C7-I 3^8[[5Z#814,__@L=Y3,[TJW8QIS+ZWC8=[6__'SB4M;PU&FTIS/ M^"0K@FI!F.U9BV*9]'C?>&GM=UX>[3Q[MK?;^NW5_K/=_<[3UO,7A[NOGAR] M;*<7GSR::VM8Q4=_N\3$^>?GIY^&Q_=^?ZWMF+1^Z?9;X^/!6;J(']W/B#D'8[9==9NGG=N*:OBR^&&.5"WCL$AB^AJ-,ED,9(U)QYMZ8CGS MB7/&:BOV!I]&K3@N6=WA/ MM'L?*V(V!CIAW.I6&=W]T]ZQ$?R&T]Y[,]9-FVY\-![(YS M\OMJ.*X/GUPZK@^^=(X<.GCZYE/GZ2O:.7KQ]YLO?_'#IZ_8P=&K\S.W]#TMT>_75^L/N*''QYT>U\^;U[\.$@O?^O+P='CKT]^IMT MCCJ]FX[K@Z,_/[S]X#YW=O<_=8[>?.D\W:<'K_?/#[[\V>WL'GSN?#GN'1Z] MP0?D/_%K"M1+]/G@R][G]'WOA'36I D#9K0&IKP'JT0 @Y1'!$4<)=W:9KI- M)&M0P?F:JET4/EI3/M*!><4X)QAI9FPP40E&C-+4A:B5J/B(7/(1*7ST0'ST MY28?6J&GP3L9?_GG]SV2 X'0YRW57?LN>U6P1-T?W+5/?5*I1-7A&[X32M M@NZD0:'I^Y8Y&:1;^S+YPR#F)9 F?GQ>O9C[?Y[FY7.G,BT-+#BU AKZZ@SM M]/W.E?DIFUA=F]C7)-DKFQA"S#OB)7B':5+6DH#6P@ -+NJH"./!;6UCTN9D MX>H"S1/5!=%+4Z$%T?>#Z"E9ZB-#UFL+)HC<,4(IL-8Y($IZQ*3ABJ&$:-RF MBW=.;IXLG5>,/"@N=V[(CV^JLQ?,*+2JX8)!A+/TBQF-POC[(G3%VC"L@!8Y MO)R-9WDR7N2[.HRO1F$G3\35J=O[G+M)KDAJU$K067=:H!@?G?",@A$H6=D^ M"13K$ ),8@PX(DZQW]J6;8JG$TH?K@_\AC=;60%]4E#^@"B?%BU&8R># (Z8 M A:P Y7;]B%F,254$V-I5;I6UI7(\R":954=*#<%2[<_-OWW7=O[@7=LXTVJ MVH7)U5DXC/M?YZ"BK.+LKX^@9AP^&D)H<%R#]R$",\:#C2[)$,L206D!!X. X>! (Q\@*8Y$T3A2GSMG M)% C+1L$ZGMVE31'=B3J#^7,_,D3\Q.W^]>S,BHL-4MV.KPR;0$D3D72R4;"1N;V,I3"9IP"PX' M+HEAU B_M+@N#T"G^<8H%'&7M+;+9*!(4..U"LH10(B?A-# 9J:',8LQQLH3: M0BY<];=X-YJ+Z&7$(O\ T06TMP'ME**0T4=*L =*I06&G ++C02"32)DSY0D M=FM;\(7[&Q3?Q>U1EQMBMA+:1F92*:/&$-/5-73NN:GI=2ZZ;%%ZV$]&S67I MH\-XZ6@M9#1_-L31SG0'/\R3AN#&0A Y/8MY#H8G14%MLG644)%XE]B(+M)[ MM'@F&@S8VL5# 6RM@+W9Z\-C9K@+#*2T'IAF#@R)!GA@%//H@XQH:UM/YRX] M"%XWQA71&?2KM*11KHO9RN790G]4N>>*)^+>M$+5+^0W,PK^R94)*#Z(^@AI M;X:"T (A%B-P$A,A627 6JX@;2116BT-]LF>H6U&%P[U+$Z(YH*Y=AU1P'P/ M8+ZI+I*FB%I$#1QA DSP" 8'!(Y'I86+7@1<@1DWR:/X$Y5Q65DOW6SX,?[O MZYT;XT\Y'!^'83MG;1>?R3WFPN11OU"D^U7J? F'KYT]#Z:E$!*>F&@Q2"YI MDD(T@%7( 5(JV.!CB"AW VIS,NW<+>Z4QF+Y?E70*#UO^ND6F"ZPO1UL;XH> M;I".N4159#J)'FT5:*D#,,I8,E\H44IO;4N-2HS'_8/OR;'IOT^7Z_8OU]ANKRKTTFZ%SZYWEI^JE48WN/2606P9]]^S[L3Y>+=:,/-:?@]YC3IU M)*9-7@:7Q\^Y,%#H?LS%L3=,4=ZOH/S.+I1VGMQJ,NR&R?_O]R\GYL77>2DB ML[[=ZM4,?YOP!B-!('KF@4D;P5+*06'!2=K)7% \!_W(DEJ]@FU:8J1WPK*#D*J)<%ZBFOET3.5NU$)4F@]DJ#1I*!EY%AAK"R M6B0[0K3I0EJC'/-M@GNF\DZ7HG<-4D?5C'PMEU7J4M3-J.^G95(@5$7/$YEB MG,MA20J&:0Z!I]GU@2*?/3.LS6B3LD6+9V9ES@#G17D!\NV ?%,:&1-E] J! MM4$"2\ %;9T'GQC;&B*Q5;F\MEC8VBF.F$6.@D[-^9W/@3;#8'N(@Z#GDUDI M6J,^BOI[5MZ68BA8#2$*!BP;;I9P!XPK;ZC%V&!266\:31\#/8CU5MPQS=,9 M!=,/B>F;L@-IFW <+"#I$J:5E*!H9* U4MY)RF6L9$>;J2:E4FR.EV/_H@V5 M^1RN!J+\>Q$ALA$F4>T1SK,I(C)XN=8/?U10+TL4-_4'EIZ&[S)QS\N@9KDU 6* M;-(>/%>J],'S>%$I>^'"-,7K<><3EBMQS\7MT0BWQW4/[+-O\U,(JS["FI%V M+E&:-Y>X2AAO@4F-P!*B ?NHK=>8:ID(BY VI]-5P(L#I+$X;Y8 *>B^'W3? ME","66P=3A.GC8*D.0(HJ2.@0)TQGK.@:&VF5/X88'XH:;JB=2JZB*!)C+];R1(J",D9 ['B'I-)/4Y68#;;)X M6_?[XH::/#1-D$)R=H)ZED&Q-_@T:L7AX*35[7\,HWE5T!P#,=<,/71V^NUO M2YGQ,#?DR7YNVM[H_5>V)RN2BT4%B<4_)S(MZ0\"X(B M2GA$W'.+K/<4*4.T\DJ$:'))9MXP_"&%1.K#V I3]^.#O)JZ?PUUS_BEJZ1C M8 )%(PA /IIK!$F!M*66<4Z-= &H&S>8?$C9D>H=Q-X.B(3.O],'3^Y'N?$K M67**IXF0N\A]F9&*.QY"FUP6M4S%G7\J#V_MF*Y"_N%_GU*09QOJA,C#VT'_ M\-( :O*]$_E^'37?7"5?>%XW_O?CZ=ZG<.0HEWN''[NM]C_[\%[HRV?6>K?) MMS_]]:U)6]]:M"GV/KW]UH)YA'\3O.]+HB8:[B0"58\BKK!!-M<*BQ&$.R8F M"!LS]<]0?HF+[[*M%BY!ZFU5T6UUT/QBF(Z*&(U$(B!4K//(4.D0K&Y43OND M-%Y9F[.K.KTB,Y5R=^5MT"@&<7@4\UE+[)Z>2QO@RK4M[DF4L-?GTJ851]OI M,A'60&VA)#EC<4]14)PT[@715- M[\_(,#SHPZR%B0O((U2/7EX;TI-BD\FR9/"_ XNRG7Y@0ZJYTQVXTYR4),$; M#-PH(9+@#W>: Y)"@7C B<>:Y53DBA.*N2Q7YN!J^Z<6I/P(Y+P=8 1I6.& M68R4U]EEQV> @4&+()H:8X4G) ?5+5/0S3,X+5]6S\*YV<_SU4UM M?W"9?9;KL35U3ZZ]^A^!J9[-B53V*CH1!O]\N//C MH;$;PBMK(/:H['M.Z'4DU@0*&(RJ&!%7U"#'#0%^$0\\#J$988%I;1!*5*/N'-ED0."!,$R6&8I5QP@ MK&XH\A 7@5_" TM\^\, M]J0TD>]#.XF!"^&O_<8,_UJ[Z M)]W]*;^0?= \4/[0#B_GL'=B!,W!]P_AW:=9C>CU1_#T43\SS'(;VQ%H&JG3 MLSW?L5WH'_QP-:Y[[(%VZ>_^X,)/^&M$;A#M-V03C/*5[9[8T^'*'U?G!B9F MTBM.5[.I]W9;\.8Y2^G1YFR\=,"G^SEI"- -<(,XR*V@.[8R?2GV!UG4_4]' M4B^3]]XJ"R(O)$V==X#TF4OP(=HO:F6MG5E+/LA_DZ5DN;;V5EN9T KMY6*K MM=->?_]^;FZWV3K']MGBSOO/?XNW[ M[4\[Q6^[K?7=C2UHT\AWM+=:NYL;OQ?/=GZ*WSJ]8K3?/X:'A.'O\UC7(XVV ME-H70K>$"3#JKCT:QE?3#W].C\\ZO;+OY4U_3KHQD=3B:-8.E=\WOGS!,5?Q MF&M.[&&3-T\NKY:7KJ&:\34%G)?=?!FODANO_>BQA*Q*8N[UV!]?$X_467J[ M#DULCM= &-&E5)JOM-XA_\PO;'K#0/BR#N16]V1-GJCYKS$SM\Q1^L?T72D% MN T2/Q:'T&Y_6,1>SE79M ._7S#2N*+/W&6B?F*&N:W:4_&IRX;.VZ2N^NEP M7]:G) 7?1[13L. M#HOW?=M[B(_8,S4T/U-S\L+=N3_&H\F.VD[-&#K'AWE7M;)IIC8;+\YL/">7 M6\36"&8S'4B%!.(VY13D_" 0-#80&V"/Z)2S.G%>(!?#8O[-^YW?#=> MC8:;G*S4)32?,C:NY%)UD=^%,ZO=.76K)&4B@RBA#4:P+0RR)@2D:<28='C9.KR?G1R/DZ]O">BTBE1=KG8KBY9(-+P2)K-:9* M)J\LS\$=2E0IN./%6* VHAL5G>'PV/9\A*$.[YEW_T7$[CY::J#ME-=A:[(, M;_(JU&GW%\*1/L\"#,ZUILY1Q&+PB#-OD':.P9)Y084.7DB^L+3[U;/8/'-R MKD3 V5QZKNGV;G0[DV55RT1#,HBR%!#/&;QTH!AYK+WW1EF;Z5;2BE2S?4$V MC$[/=XYLMSBZ=)S5[?>^HE$^TPI "B_,;%&90Z RU/4]+$4VM6:>5&L[B^-1 M<_*\$Z-$BLXBYQE'7*B$M(H6):8=%AQTG9SG734PK4@(;&VWJ#RHJ.GYU]'S M3+X?GQA-5",3/=!S#!(^18JB,UYA3UPJHX$:\D'!0'4MGQ=@:9D/D\:^8+'H M1CN,1=]!)\N(C)=FA7E2Q/1VO CO\QJ<+]-4EZN9Z)V8Z)R\AT(ZEE(T2$=N M) MK+(..1&2$4PR'4!^PW)6@V!?C*5EHY.3 _1"]@;IA-JF\B0'-=,UJ#6O1?&@ MUL;Z'-"@A>22,62RNQKW@@+[P0Q)$W$PL&(*VY4UQAO CZJA>M6FE,KCAIJ, M'YN,KT,)2H$!ZZ21Q9$B'BA "1(HD+$+6&E-@F9 QJ+!:47(^,48)"X5^T)E MVI=CO+@^.TT6K!. ?48/&M./N)DK X8U!_L<@HH M8P) CZ00)5HDFBBA*F5W>44KXBY?6RR6"'G4%/[K*?PZ*E'18Q(X1P!!,%"X M=\AH%Q'54LED5,):YF,=C%DU*/SY'^LLJTWF8SPZ'OC]\O0FP5 /#_NY#WW_ M[8799ZJ G][V!Q?KL9W>E*NQDQ>C=J==""]MSJ(EIS$E3GAD*0,-+X6$M'0" MX:0(,SX9XN/"W&EK<\U+!$VW)>L:)SV0MJ_C)"L\=9)BQ+PQN9Z#0H8PC[17 M6"6NA/5D98V;AIY3\:JVWCPF8>X<#P8Y6=?@.NPH[(D=A&'A3HMX>-3MG\8? M9!>J-;U?A45*S[U#E#X!*QLDJ75:JMS8_*X>9D-)&, M1,F<0PHGBK@R%%E,(W*2)%CG2(W/9^"J0<0"SL!O34Q+9#AYR0SBE]<2)(! 9A1$.(!809/3J#>#$VF!(8 M[=O>UYA140F1SQHE-E>_O_FQ2)]C,/1H./S MF3Q<6.^%JS]<:ODWC+P/?-(//"J9C)+S&2N0[1<^A$VK45$YT!PYBVR7AI$.;$D&,V5M8B2*$,X]ICJF M$*TG/IFH.:5?MC*#)/1GQO8'\<6:S2V.S4Y\U#(:[TDDC@2!@QNKL#4G7"9...-/EIP(2@>4 ML (5%A8;64"TB *@%9PY8IG,G% U.)M-PEI%3OCL"^3N'!\==6/VP+3=(G2& MOML?'@_@^=FU?5H\M^CTQG0#R[2@:KD,%B3TCUTW5K9<[JVZ^&(4HG-/Q)S_ MJ@C'@VRZ'>W'B1:4&>NK>^V-VQZF/>4S%NIPRJJ\S%NY:#F(SX<8%YX;8ILW MQ&>#RQ8>A#/=07\#GP"F44.NA4&N]IR$*3BEX(1)R&-%$#<"U%">&"+!&6N# M59KKE37"&W*._]K2'QK47.F9(^(Q!T602:2Y M4<@'3HED4GHG2JY$S6R6E^=QNE%UF.?[A[$8V>]QV"AZ@.U!WQO$!&-[:1'+ M3XN5\C*T\RK4C&GAC&EKCJW>"N!&$2,'H@5QQS5R6&J4*(DL4&F-*\8O-@H_*=?]F#^C?D+'PUC8 MX3#FXDIN9*%A&; >)^[RF1T6_:,XL*-L.?YIT:4'"ZC*S=2=CXB?IVJ_^**; MN1_;:7<8U_/VVYYLOJW>-%+C;7^P/=UX9=V:]QWK.MV9U"*UD'Z(D)Z3*TAC M3BF *T0X#8@S[9$) +YAF96(1@<2YK!;:8"Q$[O=G)?Z8N.7 MZ9'ZO5XM1'O[_.:O5Z,NEO^H<.6%9^_QM8 MKDXH];Q^KSV @:68>=94V^O$2VRLUOL6Q>/FQ.*3@ DE $ML%RRR M1@1AM-;Y@"HM<6 M*6QILMH*;;(K;4.K9WBD7'UHL]LK(T^F*>++"*6C^?:43IFK:VQ/L=[#Z$>Y M;ONI==U86TY^&<1Y8X\Z(]O=_'X4>Z$SRF%E4U;V^GC4ZH\^Q](?M^9KB^-K M<^+3+8 8)[%$FN13.,$X,E+[7,Y=:>J)"2&LK-$&([,IL&LKR[,A[X6#F9J\ MGX2\9^PQ E;58H^N??^.=))XSVIP1PZ:[Q&U[ABUNL&_:[QZ.; M;SFT@Z^=7AGN>ZT.B(\Y8F1"UFO_<8,_UL[GZ7IW;_F47\@<:!ZH>&B'EW/8 M.S&6J.\0WGV:?=@E M?Y+4R^2]M\H"W86DJ?,.\!%S"3Y$^P78YO2F_<%T[$?V:T1N$.TWT"E@:E[9 M[HD]':[\<75"838G0U$4QGJ[77OS-*?T:-,\7FU@XOVQYOKJ.!?$RZV@.[8R M?2GV!UGX_<_/ETVMK+4S-\IJQ9LL-\OM8-?F;8E+2U&53;_5VFFOOW^_N5&\ MWMUZO['5>E?\_7%[8_=->Z=1;+7>K-Y(Q54906N[O;E3M+>+-]NMCDE[Y MRH]Y&]$_HK''X> MR?!VV]//[0^D>;@KMC]M\>WV/CQK2S3;W8.]=Q\/ )=UXW\_GNY]"D>.<@GX M[SOT$##9!]$ZV]MO;>R> H8#W/<5L"#TX^#;]^U/K6][[UJI>?"!;'_X$BDW MU@>.L+04\< (PGA&Q8#KFQ*_!JL@UQPY:>0\+ M&;P65JB5(@) /LIT.C@&WKK]\=UZ:VMOO;VUW9K"N72C5?D MIZ^[EYQY7,[6 _G<[8+$?GWTBC-1QUXWLE^O]L] M1?V3[(PS/';#3NC800<&\QL,MYO/T/Z-W=,<*5D::3.HL,,R#X6PZH49P !0Z. M!OT^0)FO#0 T@XB&L%A'YU\O+GZU X @1>CW!\-&,;"=7O'U> 3WP[>33B_T M3PH'P,!G"Q_-S/A1JS(6Z\(MEK M"1A&)P!GR-BJ3*'9/X0-6D(MEY<07EH ERA1&/0CS]YXIX[#1G9!AX4K)8,9 MKA9MN#R9U4G\0"P/-0_[L,"C?=B0-RK!Y4O@EX4D9<27O0R Y& ';:?WDS> MYCOQT,QOFZBT^(6QP59[\^Q+\B3XS 0%%[DDB W(^N003SQD5Y\88[8V\5F/ M[V*Z7,-S>IS2;T9EJ>-CT;FR<]Z N'%?#^/7+'D7:[_=:KV=J5(V MV>4?(ZQ"J:OOC-]\-9$>S(C/=IV3_B 5'BQ^[_97A?;[=WOS?;GL^;!)FVM M?XE*).FL0#)JH ',,=(D*82Q-@QKJH@':NCWXBPU#,XGO9BL-P#YL10HJ62U MV $!-;(EGP4)D:7#9$==;C:]>;+-LE0$!@QB+(PW6N:^L*/_!>I"SHZKC%ZZ M&Y[X+TB@_O'P@L=/>/9E-M\#&LG:-8 4/Q9.T'W;&924/(B'_1!G9,'E]F5* M92#3;SE\[)P QB>DY>-'L+F^E\8K78M/!]WLC'36'0^Q,9#4#* M^DQY(+;SF./E2;O4 YC:&(M6'XB1-8J/\=\(> W^]?VOO%G.7$#A#8^O@,$>#/WZ 9><"#E=%T3J]SN+@]X.]P\S> MNIV]C5:W!6QM>P/86COW&U@C;8KFN]VSUN$_H.GL"F!K2A#,#N:SL[6N];6VZTW MZZUVL?[FS?9NJUU:-;;?;[W9VMRYA_+S\QY<[;$1@5D90@HV\.P"$+B*5J;D M0^ LQU2-(57& 2#R78P -[J=PQ)MA]4?,Y(7 MMN=++K&=K@F\TWKWM[Y^ 9 DC#$.&4H9XA)K9")-*"G&I+:1B]Z@)1V<%J"4%ND M#.:/+HL.N&&B!1QW1Z7HZ$\M(.-.7*)HN'A!Z=/3V?+)HW*"@'H[AY-,PL/I M:X VBS=QD$/CKLQA?G;J]T?Y6.]*RNKQM)3&L@O_KXEUZ2S#:4O'R/AY=LF5=L5_EH:^7M&K/K96[JSNKQ;OU M]7.;Y9A3Y=T.Z#F9-O;6 &Y MO 99O[0A_K_C;,F 9Q^5&M%HLLX7BWB^QF-MS\4\O3",;K2EB?=D'SH[@"^3 M^(6#X]ZE (8L$NQQ*.?YYXL[G=W).?!^'$3HV>5-\K<=C(JM+5#%X)Y"-^;3 M7W[.I00W0!L;=F0;4QFUW@.TV2W&QI*LJ[V%T8*"A_[O^4Y/G6P:*4ZC+?5- M>/D&T%DVLHP],1C)%FE*S[=*^>7\.9=LW* E=[)-O)R.- MTO)1;&Q O>$U-W"?U[9;;O^=_1A'!?QFBSQI,%$G\.(9\\'M5\(=CR9,HSMN M-"%C>&@_+\\5T7]Y6PVRF3]"KS\FGX@:_[>/!.6N[2'PSY9?3+3':'\18 M',+3]H>3/=&T []_9:5825=Y@J9\>7PF$#J^=(FYSHQA>[M8Q.]'T4\84SH> ME7F8SOL!%#K(YO^*3V)I)*%Y0'?;:9VQ/>8J_<#6'?I!QXVY0%D\>*+A7V'R M$QU_;+@9CCJ')2,_'MO&)J+BB@R\=;=6B^WRN*0\MA@O6#YSSVMY.&$K<.?U MOIR>]SMDYML_:8R9V"6VWNL78VE0KGUI5?[)X"YE\+]I"Q;3W;EE5#\AFQ/1K&5],/?TZS771Z M97_+F_ZE5I M=N-EO$KN>8UI?J\[?]A9LKU5E)5ADUMWKL3Z)T?I#?<>R352FGX;FG9C22\\ M6]6KNO%JZSN[&3P1A$&?G 9^%I3W[H7P:%C-6QZ93A6"/WQ$/8"H/NG3K'Z/)9RJCT71(P5Y^ M^<5S2T3I%M,I70LN0%@!ZD"IA)Q31]9I)A8 H(-Q^HI!5J/Z4]5FXG00XUT?C%CX7<^_[J?5B*>T56\/A\8_,%=F' MK/@<1U/#1K5MN9]B:<8N0X3+X<5_;?=X;(XNSXE._V^V?Y&N7AC]5 M/8?%[E$6H<5O*X"S5WZ?2M>['*<"8FA-(P/O<-^K9V@CHF252OT(9A=-[V=Y M^F%GV:K$:EDZBU<%6YK.JE5":H/6/Z7B.^AWB_7!()]_7S49/< < M6?GYN2-Q/>>M3L@+[_6[(JM>@ M_^_4SVTX[ ,MCZ;N97Z\\_QDYW7'FQ.:CSV8CH92]LE\T8E?)YZ7 X:U,ZWRZW/8A9G44FLV6B==CDS7?5LGS8/=L^;!9[QWD /+ MO]'/9U]/]MY]$)_;KSO-L_7OT!O\^>QU:IUMGC0_?,'1"".21$&IA'B0$3DA M)*):)0W_A>39;-2E@A611E B.*')4*JM94+%1%+0]KI7W\?-?S9;NYO%Q\TW MV^]:6_=,,_/SMU[MI;4X2L>8H=)RP8S#@;(D@5!@I@)/E;/>/WH@UD\HH5(! M64]##R=?O(6I2;: M,K3CY"+(I@-MXW!4A C 'EZ2X__+6!:;_?D;&1%1$&TS^$W9Q@0/W!G/"?C]/\!M/PA;$_ M>\[(\K4_."V?>!':TXNEY+T2G3E.0S$)E2K%Z7#LU+[ZV,)EXV(=RU1FD[&4 M1\HOFI*^?A$.<^>M1(0S@[C7%FF80Q1,!'""15(NSF0N\X1%I32/SG**C:9& M.!*YL5PF$?R\4,B+,[W)RD_VRCC;!^R6\_P9EXDNW$PNQ6_E3NH? RL/P]]? M%??)B?:S@=S5Q>77'OMIL6HDO\^I']>KZI;^RW?RX6:K(/D?X-%;+6V\ZK72. M&_$S8V#+<")\6?E[]9"=?J>P@$L"AU\LU5$G?>?J:S^Q(&]^ MGQRSKI?G93&T[?>EJ-1T7QO9N%+381,WSUYWFNVMD\_TP_?6Q@>\UPZ=5J[4 M=/BQVWKWS[?61NCN'>2^7:W4]/GLPUGSW=;WYL'K@[V-3=S:@/9TB^9*37OO M=O'>IP^X1?\Y;'UZF\ZK-.W@[\VSS>_-]HB@_XR#_8+]&QO*/;M.N9&F%"BEXW(> MW!B"#*<><>RI4<)1(.:5-46K0;1/L?O_SV-$1-=8YYEB'1R)D2IJ:YSD26D3 M4V!:6T8CH=:P.Y>BK+'.TW), M=3AM<%RELI0UUED\UL$X*!62LM%&3E,T7GNC7/)*&9&$_0FUUUCG,2F77:=< M[@2/+$0D .<@+DQ"%AN'J X 3JG.)9, ZU1$0:DJUJF>-6U96M[9ZI?*_Y;1 MZG>]0,Z-^^I'4F3.\)==BLRK79XDH8Q2)S H7L):X$Z:2,Z48H&SVCBV3&*G M]6;6.)9BU#1)C7C4''&E$W*"1)2>M!,2/2:>R6(-8II M0TQRM2UIR3C,C"U):ZZ$XA*IY CBU 9D M)--(*1ZXP(HI36IH4%N2JF))6E;_L3?G-97O94%ZAN<0LS!16JYX2I8 6.!. M$.?@D48I9W',P5^U!6FII,W.K 4IPMIJPBU2A&+$8P!%U/*$L+):!2LB=W9E MC6#3,%7QU*B/'!\))T9L(A.6Z209CTX:0I1P4D:F/5&&UR:D)Z3<&1,2-0X+ M3Q5BWCO$.5/(8L^1I<"D59+41P.4^V"@^+R/'&N.<6]P0$-T25!J$HZ<&VR# M Z62^\2$TT::VH:T9"QFQH;$E)>868$\"PG @2=(&\P0\4H)[!S!(:VL:=D0 MNB)LIJ;T1\(&7"5&),$T< /_8T9SKAF3F'!,DL6U#>D)"7?6AL1Y,![ +?9 MX3I10/4B6.1 =<-6Y(Q%39BM2Z2+_3N)*TZJZ& MV-LEE7QN#OMW&WRU6MMSXIR9 MSCZJ@B/)*4$<]'9D!$](!>(MLXI%[5;6F&P(J:IQIET[HCQ6,%/. .B$Y,P$ MKAPSSA)&HI()$XZ8IUVC!.C M'#=$ 4U'ZW6@*=;&VR5F[>[NM4L8@)JC9SN@,&OU<1VAJ#5U64SPDBA_5, +("(A1;Q"EAR!@ MXC%@XS'A(D4/6KXP#8;-8@]C%T!IM7-&];C(?.<,:AAH\T1R4.E)8MIHJ6CT M0HF43_QKT]\3,H59TQ_'1CLL4%"*(QX,0'N%$_)218#VB0/VSYDE<.V=43F/ MV!K@U0#O+GFF>=!<"$JPX=9%F[3DU&K@UC$!CZZ-K$O&RV>-K#IJP:1%@.$P M #QJD99!(XEQU)()ZG*Z6J%5@YL%1S/5 ._E #S8148QK%4B@ELLK:'1""- M=10F3.J[U0;>OYIASO/7AWUQX-XZOIAS^G MK^[TR@4N;_IS\O2)Z)KCW%>^;WSYSY-.&.V_TF+52)XYYL0F/7GQ^"I9+9GI M-4H97^-Z55%SXV6\2FZ\]J/'$K8JC;C78W]\38J;7WK?SJI50]B2]'7I)E;? M]JE+P1?JEL^IY4].\>[KHOX4<& ^*+I0'LB%]G!%,_HI%IJ5;I4:=WM_$&-Q M".WVAT7LA1B*IAWX_8*11H40TBUWVHW*G[F^?+?"L15?NVQFOXV9\C8C?G$S M1RNTNY>EY3/B]Y>3A;UZ="*J[G,6\UUL?_I\,GN\L$Y:!^LG MG\]@++0I6ANON\UW6V?-C;V#[7=-&/-GT=SX)O8.7N>2ZC-.9=PDGI*P2#D; M$(]6(:T51MI1(6(BDN3*),SP!N:L&E[B=63'8T5V).PPM=X%GH#(G='1*Z5% MHCYRHW#M^?6$E#N;"I$:;IFU*,E.46.=9XIUN$Q&<$%D!)'HE3,R@6 T)O)(78IUH95EXY@S_E74,6I4D,B1 M9! G(F,=;A"L9 B4,BY$+M8K>98QU"H\62*\*UR<$RQG"EF:8^A*2C MJIV@GI)R9YR@1"Z1Y(U .00!\8 MV=AML#,"4X5QHYS%;GU AL6J%42.U8795DN8=V:DT;.Q\086%@=I&W.["\)1L80CKB/05A&G/9D9>W!J1\7 M0[-5!=DUP[A_O38AB1;4LF@3)\QHB9FG&!B%P<:2G^GD-32H&H>9L<#QQ(S3 M3B,I,66\HV6&6<87%<]40X,GI_3YT( H2K#UU(*(H2&G MB]1,1Z9HLEAS51O@GI!P9PQPV& !$$ C9J4&0* 8,HE81%D(E !S!L2P@ RS MSQL:5,]B4[=\3BU?C"?B.SL MCZVO]W+TO8,3[GF9&4V@B@N+(_6<$F)IIX% MKPDW!/MD;&UI6RJI/">LD8MPZT'5L3%8NP-+VO(^S:X9Q;VC@)(XX.@DP@'/,K-;&G"NV MA@95H?2YT$#BQ*CS3'DK..%1R[)@FQ4NL P9:DO;$Q+NC*4M2:J382DG^"*9 M<"TRAC*$DR1$,&.B"74MI]K25K=<)DO;LGJZ?;*C.#@:]/L)NET[M=V$IPDV M(L1G]+EXVNN<5!\H7&J=T;0VH#7SQ)GT,C*3 M:E/;$Q+NC*F-)8R9LQ@(E^7\N8XBPYU#3.C$C/?<\+2 FC/^^2Z9A@/*)MN M%'&$$&8]#Q8;;P+)M3--]H(5MC:U+1F'F3&U*2H!YT6*<& ,<>4MTB$%!)@@ M&6Z-)]&5T*!,1E<%-E-3^B-!@QBU<0D0@56)>R>MX-%1)P*+RC%91Y4^)>'. MFMH2$80KC1S.T(#&7#;=2Y0 ZQ,#P(Y)NK(FJD&S584&U3/.U"V?4\L7X]3V MT79ZQ=?CT2C63FTWPVFOO32&TV2)XB1%K9771$HCJ;56UDYMRR65YV2D4S@% MKAA'V!&+N),"&2P2$C8JG^L3&0/,@:J&?GC-F_KDNBJ4/O_D.GLK**R8<)(G MZDSBT@8@?A]H4.1GZ2=K./V8A#MC:7/&24.T0@K6(B>D\\C&Q)"/ADHC7/24 M+<#2]KQ/KFN&<6]H0$VPRFAOJ,W)G(@55 7L8](D".]";6E;,@XS6R#36!NP M-8A*1A"WBB&-J4"!8LX-(]FK": !:PA>$0>9FM(?*WQ48N$,82)HPK&R%DL6 M-=5646R88[6E[0D)=\;2Q@AG1%.,/"P-XH1+!"A>(>8B4U8#WPZ+.(1[WM"@ M>K:9NN5S:OERG-HZO= _*5[#E5!G:KL13^.0.-6@<5-#>7#.8J$92%LA#79, MUYG:EDHL;U_)U/:-;&]L?=%"4*U30$Q'BWCR 5GG*,+4.>5=(B[YE34B&EJ3 M:IR"U2?7C^74%B-SF-,@."C/25FI5;(L$4PU=K&.'WU*PCV[3KC""2UEIE1/ M9"9<@XQCN8B+TX+A@%D4H A7@V:KBJ=KAG'_6@E)&*PE-X%Y+G!PG@9#@@"! M(D1DOC:U+1F'(=['Q>'V-7A=)O,+MI3&7*CFV::]"L5$K$<.6U-#JR M4)O=JF%VFQ003$$*S3P*WC/$&?5(:RL1YYHJ; %9<[X ;/V\C[%KAG'_-!,D MRNAS1D<7N 6%7$0?B5',:TN%K&-)EXW#S'BX^4B]4XPB2F5 G%"+(YX20S89@AP !&>8\YX"-*@+E%;"_%*W?)DM7XR'V_9H/PX* M=]SIYGX71X-^./:CVM?M1F0=HS+::FZ,83Q*HHVPW"FB". NX7UM=%LF =UL MKY?"N132[28(Z$W\)> D'+$629\XXBI;W6"%D>,L4NV,MQH8A2 -_/",R/6) M=E5(?7Y)X9A"LI;45K4JF+KFF/<&QR$9"AAB@J0&3QHH2-F) #'$(Y* M&5QM=ELV%M.Z#@ZL\BKFW)"!4X$XU0$!$O2(!RM2Q)$2:E?6.&UH6GO"/QM2 MGPL.LFV=8(\-)XXGIQR+N:B2CTH+;.//?%MK>_JXG?]0^;#?[81BVO^?"N%YD_*D7.A_'V_\U6:_=] S6#)& M87^Q51ZVDD81KR8.*#@.'<#1X M);4QF-?VRR:/VQ"9MA3.<8F^BT])S:16)F(:?Q3G6\*MRG'C&S$N( M5M$DCP*/VN MN,8)>Y8=L&5BDOXLT6@-OQZ7Z*_#+R>P45/[,?5ZW#=LFY9MWQD/^Q*:]QC%^S:X_K&NIB) M>_@O>?B7,R&=DS$I2CC,1[Y2'W8L%_!NSAYV)!&E=S0A(;A!7+N$;(@)22V>3#:$K(A_1NU4]5C!C,)Q*A(G3GGNF-)8<$)=H(I(H7GMW!&O/S=JJJ.<:]P8'Q##82#@9+ MPQ,E5D:'8XHQ*L4!']2F^&5C,3.F>!P2P=PY1).@P&*41)9IE3VNG64 !1,A M*VM4-+2L/:Z?#:G/3S"*:6"2:BQ]1H7):2-8PBF2% (CHK:G/RGE7@<'D0@) MZX21 &X,].HD,C9PI( W)Z:%D%XNH)C/\P8'U3/*U"V?4\M?[7']I 1WQ>G: M#N'S47\PBN&>1W?CL;QB,/S0/W;=6![?W7RP]X+\@1XV-=5FVW?)T>H4QH0X M+HCGD7L7I"1B=C$-(@8K.KD+4,N5P/(5%KB,+4 MBY ]M85I,/S@?!$+)++:BZAZ#&2NUB,,4S%$C*F*7 OK M7P(6"IX8*I4[\^ M+3^8U7JP<%9A!,OE$&<\(A,Q0\P+8V)P@>0$;[ 1:C>BRGEQUX"N!G0_,3A' M'C07@A)LN'71)BTYM=HP'Y/1LC8X+QL#GS$X2T^-)=8 QTX&P7)KI+$0"!99 M>$,ME8&NK FM&MPL./2N!G0O =!Y::3ERB6;,+>:6Q$U3@QS2HG45-=F["?E M!S-GW$P[34-6\'Q"G,,?ZX IB*0=4=8 .Z UH*NMW'7+ZK8LK=Q_C"R(5/@W M=/Y=*XDUL^5.[[ADG&O_@9^GSSBT@Z^=7DF#II1ROYAP*/X_8Z(&MM\?,_97 MP"GB(+=:69LBQ2*CPM&PL+U0O.]8U^EV1IUXD;ZW'&BUAC46EID:^SU@K&!)#G1N$LH/P"&N?G#8M.SQ\/!OE"_ [R(0S+ M=X[[7$Q&,.J/.S+1&5:+>4.W@_%[0+@$>&K1+_V.RX?WSAOEW^%>V%\A]G(_ MX%,I@.P(OKRV70M0H]C9C]#XVFNZ%_NOF$-<5[;D#VEOLEFX@-UTU!^6,_=J M$'-VG'_CGR>=,-J?PJY+=TV@,[ZXQ3KH^?'HYENN4L-E(9K1$\"V,7VL_<<- M_EB[)4W=^)1?367JVHQ?^KL_F';F"" B MY-F*PLMO-Y\WCSNE)V&:_[&5Z4NQ/\B:P/]T)/4R>>^M CU A*2I\XY+S5R" M#]%^42MK[2RU,D?)7!^V%+!W>_-VK,K^VVKMM-??O]_<*%[O;KW?V&J]*_[^ MN+VQ^Z:]TRBV6F]6*S^"UG9[[.YV6KO%+_MMM9W-[;@^N_S"'"NZ+,61^D8,Q1DH&#&X4!9 MDK A*)>!I_M1V1/(\)_+Y$OR=RJM0+,M6?88Q62)!H*WE$19X V'.]C;;VU\ Y7_ MZ\G>NP_B\]@$\!UZ@S^?O4ZML\V3UHW,=OL&VOKQQ2T TQGYY Q_W?/_PJ!OS3Q<8-=\T M2V/+$PBBU:J6(K.CB0/3Y,43 M@+):,W7L:KY,9K/WHLT= A>:_'_OB:9/>[\Z>=-;=Z[$^< MQ)8IW'*^3>YN@QIO]TH-JVD'?K]@I%%D\7&'X=UHQE_6F=B(/F:C^W0RZ)7) M6)"[8W7SREZ3&W4VV<<:?[6-[G3)>)T938DHYYAT3ZLO6 M[5P3;\2GK3AZ 4?6!V_A.;NT^>F?P\_M;Z=[T+?FNW_V/Y_]L]]L?_S6VEB' M^W?%-CSO^A%5\]-?!WOMS]_W/NWM;[?_@K:[)WN?WAZT/FU^;[W[@)L;@'?; MWSC@WW3N?WBY&"PHB]8YC9A+$F7U AEC,6)<":=$C(SY,GX:\P<7OUFR9&4U MOZOYW?42?L;P%"-1A'#N,=4QA6@]\%W9]?Y70@V,ADE M\EX:Q&54R,7L<4EL2(XK&[U96:.FP9-B5:P*X,_NG//(FUV%EM#IY[>* M8*QSVU_-=!;&=#JS(,LX3S'V&@&'*>L'.:0]CRCQB)V@GO#$5M:(:K Y3.?W M&_C-XR&E.[CI/7/:>TQY7]/>8]#>C,#WD@@O!$8X6J"]I#RR 01^(HX$;K%. M+M.>;F@]&T[^F+1W@U_1Q2G08QT*=5S>D,/1<+T7-HI3G?I4IS[5>9:G.E=\7$K .T<(U*<]M?7SD2T1Y\!S:[(9YX/- M%Z /'7Z@>^V/74"?9ZUW6]#/#]_A'@'Z4&?[$^A$!Y]%\W#K>_-PDUW7A_8V M]KJM=[NGK8,F_GSPUT%K8Q.0:Q?TH2VQ]VD3?O]V^OE@\Q3&//? )RD*R\<\ M*$ 7D%U(,CI8! UR?,<4T:P7UFCRC3,4E0+JT]\:IY7X1.?FN?]>IXW8P.2 MR0E!O$.,$@NJNS)CU5T$%R@GR6B1,L]C#:67YI3[N9SZG)N@BCBQ03W/,Y]? M#+3F6/;>]WM?VW%P6'.=Q7.=.:<^VAGMO))(4"U0-M0"TC(4669!>%B:*S.O MK!$B&Y+>\:RY/OM9"L%?T^ OIL'9TY]$8M#)(0I\$W%*,#+6"61IB$+K%#"Q MF08Y2/XGH,%?G4'UZ:1\NS^RW7M5*GII>5\>SP/D8_2Q\V\^6QG.L*'MP=^# M_M>!/:P9TN(8TNDL* !NQ+W%"GE02A!GWB/K(T6.62J(2%YC4$68 5! Q+*H M(G4:J&5")C4[>#)V,&N9H,D('!RR43'$#0O(""&0#I$QC).AV [T+HAY((S M ->6B9_1Y/LX'+XJ7D_#RD?](H=VU]:)!<&1UV4&FBG+N<2-:I:S*);3>C,' M@:C$9!(1!2DEXDD&Y!3WB(1@35Y/SU6.^#$-J>]8?:TV2RR-\*^)[U<0WXR\ M9SA["DJ-<(A ?-@2(#Z1D->,8F>U)*$,M],-?->,_[4]XJ[E7,9IV:9I8Q:: M=Q?_*/7NRSHM7L0$/1OVO2@7FGFNV[MY.V_#Q$P1Z\L()OQ5W'R.+XT@((PM M2$\MERMK5#8,_27E6^Y$5,OA:U.SUYJ]_GIOG9J] M/@%[G0'+D05+4DJ(^*B!O4J*C'0)21PCK(L#HRK(X,JR/#ZLBPYQL9EA.]QAD?W*M)E,_EP4W1 M8\5OUVH&W!0Y7\=6U+$5"X\GFZ>NS2#8%QMX-C\ MM"N:[=!IM;?8]J==#JBVVSK[C&>2;[S;I:VS;Z?;[S9%*VMP[SY_WVM_^]ZB MT =XYEY[?Q_:L-;!Q_G9!;71B1*-G.,<<6,YLEHG9&&!E>/."*+K[((U/ZSY MX4)CS6I^6 U^..N.CIWA1 HD,76($X61)L2A:*VCPEN7C*NS#SX-H;Z>6S[$ M_P@CWP(-7TIE. .)GX?SRJ_,99@YW'PK9,W-'IF;S0EP$Y0#&],184\(XIH* MI"V-B$1"!",!YEFNK)D&(;.GGW56P^7-:EA3X1-2X0RF2-QQ3((".,%RC6$& M5,@20\H[9V203$BVLJ8;6OW:W**U+UGM[% [.RR!^:QV=OCE;'Q.8"!S-MF$ M!;)" AM//B!-'48F.0M;SMLD5>U+5ON2U>QUR:QQ-7M] O8Z@Y(5%<('BQ'% M28"NZE1VT%$(5%67DK D&OH2?_" MW':EMJDMK7:EB\-XU:9^#D762^U@7/9T>O!_I0DM.L/B: #D-H!Q%:/]7#1X M>-PM2PX# <-J7.K:\+QON8;J41R4U)O[#*W[#E:C+/,[G&@&-Q16/;*GA[DN M]Y4"QJO%QO$@OVVT/XBQ.(1;]X=%[.6*Q%>=-QK%R>7*QL7_WH&_WO1OAT5)W9XI;!UWM\S)'1:N$G=:KAC M/I6L%I\RB8;BU^VUK=;;F M SJ+@_Y+WEZB^>&+B0*#+/0H,.M!UX@,&=!<"$JP MX=9%F[3DU&K#?$Q&RW)]Z71]:;V^C[N^P5JBO0F(\!@1![)#+BD)<^^X99%S M&=F=UK>FWVJMKU2()M2 M0-R LF*QIB@EPQ4CS&E)5M9Z_1GA?X\?1A?X$4#H:=$Y7Z&B"TL4RU/N#'$' M%SD"KL+O"20/4\P:?XY;B_Y@C"5N$T#P=,K(QWAH.UEAOXKO+X'[03P"'2%/ M5CGN ;QL0FV@2(QU@0OD#T\H3O8[, \G_<&W8A\ 6:\_ CT"E(C)"V"F2E^# M[R5.R\I#_!X'OC.\Y%Y0](_&+\\MC_HC>'O'=F&Z03D!5;"\MEJLWZ0(-YRK M%Y/N_7VQ7MOGRU6K'/-YS@?17/]"F3;!6&#P6@$F)%PC*[Q$43*1N$A$>9=5 M#K[*;M0Y2M4@?C^*L$EALPQAUH?I]-*FN8F,\DZ^8$-3M06VSO#8#4>VW."@ MDL.?R3X=QALV8/]?T*KS1@;"&14_"I4S%E@I=P+@D0(6ZXRQE$>'C4O66"EO M$2IWJUVW6=GNSX 7ZX7Y>0.CG>@[R MR[OW;7_P9A!#IT1I<5B9X,[3R28];.*]3\U<3[+S^?"O_>;9QX-F>TM\_O17 M9V]COP.;4.QM=+O0YO3Z)OU\]A'>F^M)PCL.-\]@(W]O'G3WX3G?MM]MG;;: M7=CH_T";OU+S[//)%P'0VF3W=65Q]G(B +8Y2A8O M+'$J! <#BMAI;>1TD CP4)2JIFZ'@KZYN/FQE:[>+^]L[.Y,V.CO;+'KVWQ M\8+\]'W5PU;; "GCA#662+,$&N7N*P[C:+\?H"-?3TO09+W/&&5X"8-F6VT M]MOM'\']Q\,L7?8[PU%_D*WAY9,'G6RG;113A ;RI=<_'),-;.USP=,'<9'A M;3?^"Y*FR*RY/Q@6,$+[-99 &&X8=D(<#"]:@7B;.H1>#,.7-#/!S:4P!+C2 MGTH]D&=?^[F?\(3N\43R98!8W@60<+0/LS1V.^V7LP/CR>VOXKRI[1A>,+,S M'I,W3-;@(E78?&Y1K6CP7\\POG\AA-#H-4-!*X>X TREB4PH.;BB(A HEI6/ M!7^S;WM?8^D,G??B!6UF>KRRSY]/C+@DJQRS^\2(*[U*M%A\V+59E>1VCWWV MP:JOI^<2)7_\RX+\&YP6-P0QWV74S]2EHW;*^%'ZR\NR:Z-_[$;IN#LKX9;$ M)>-^0F[BDO&!MNC>0>O@K\-\']RSWVQW.Y_;_QPTSS9)Z]TN@??3UN'>X767 MC-;&9[8'_6P>9N&X!8)Q\_OVI[_V6Y^:9\WV+MYK_P-C_0SCV$O-.8EHN4XA M:*T1L3IG3\N'G"8XI)74@%!<\"GF\ '!%^7P]B1NS:G\;PG=FM_D>G4 =3.2 M[@,"'?3_[0QA\N]5Q6/.+"Q)9,4O=*FX)YOZNUR@K1[ ,CN,&W'\;\V\%L:\ MYD2V6RMS(2&"% \<\:0XTHYC9*A@*3"E4B K:Z0AU8,#VW_ 0.J8C)NH-CL: M_9M- ,,\T.Y8/\^*=!Y)J7H_I!A1S<8>@8U=+%G-G>["G>9$9CI'A.*2("*X M1]Q(CFP4*1_K1$M3Q"P'$\A%Q9C7N.HNE+A^.#9FG@PZHU'V'TWIA4&JNP2K M/A$S^@2+$[=36I;@U65@5'.BGKSUC$?#$;9)(RY2+H_J-&*)6T.$=22P#*/H MG*"GVZ<8JQZ"JBYWNFIG^W&NP#KNJHZ[JEQ8:VWB>QKV/J_6%(Z<4B4E$@+ M*&5R= FA,/SF=51?UAJJZ\& ML0LM_XV3HZH)55VZ:S)@?'&+=3"VX]'-MUP]:)Q[ #>>>S?X8^V6GIHW/N57 M'V#J:ZY!E_[>P2E(GCL%[0\NDF-\C<@-HOV&;((!OK+=$WLZ7/GCZK3 G$PZ MI"CT^':+,^!Y_4&Y&U^5(6NY%73'5J8OQ?X@"XC_^?FR@6Y; MNB%D!).]SW.$W7_^L#?OX:ILVJW63GO]_?O-C>+U[M;[C:W6N^+OC]L;NV_: M.XUBJ_7F9G_IJHP@NZKM%.WMXLUV:V.SM0-#@4\[V^^W-M;;\.7M5FN]]69K M_7T!(VUO-C=;[9WBM]W6^N[&%ES_?1[55M,?3SR^/]Y6[]\X'&47I*HXU+0Z M4S=1:-/>PI_I[DGSH$GVVA](\^ SW]OPI-6&'ARLB\^'GT^;!W_M7W>H:;W[ M+)H''P_VVNNGS;-_NJV-7")D_UOK;)>T#EJ'S8UN9^]@Z[1Y^#;ED.\O4G@* M37/? LP5["S!N9,)>YY+;77AL)R%(0H^B, M!][ZSG^+]1;LUOQA\\/NUC_K[_/F_+$W7M7<=N:[!_YT,M;>V.'^.*HC?XC_ M[QC0<;<,3)Z$C!;[\);N:='MP+41N'+I]T1OOY!^ ]90!";P3?@ /! MUBT&V3]NT!E^&WO: 7KJ]&PWAW]<.(4#^CX>C*.W2^?N2[$CT*Z;/>+L)+X" MIBJW.3H&K=0.XVK1+EW!+_=F',XPCE:P1T>#_O?220^Z_A1Q" 4AOV/[1[?4OMXZHB$7TWTS8.O^ LGBFKI(U*><% ==$+& M.HF8U(;CZ"F).03:J-59S>$\!CIONKLL^SW=2^IE7\RR?_O^)4H;884=8@%C MQ -/P.N-RCXBB=E G>198S3DA\M^8Q*(O"'FA[4WT,BG+EBF:TP^-!Z18\;(R=DR<'BL#6.KWQNN90F#DZWHSDN*42 M8BH>F2 ?'PF]Z_?#":SN>B]L]4:V][63'9#+P,.-SM!W^WE1J@*2MG>FA/-! M-,_^^@;/Z;3H/X?-@P]GS0TOFO2OP];A)FFVOXGMMB?-C="9(9R-;V?-PX^= MO4];;._3Y]/61O,$P!"\)\?D['[?AGN!B$Y:]*_,+[]OKW\A+%%G@T9$YPQB M# =DG0.V"9+,.VDQ87$&)G%ME=*!6QPXD]ZXB&4($7-E<(XBO@:3WFW__^Q] M:5,;R;;M7U%PWWW1)T))YSRX^Q&!#?:EPQ)M6VX'?''D: 0"<25A&G[]VUD2 M&)"P$4@@09XX;4"EJLIIKUQ[YQZV-[YLO7]?4:6M9FN]^6[K]?M[Q2S\^M77 MFZJ9H,IR+KR6'(# <&>P4$GC9*VJ IX7BXW]3*V^6,^/Z<'_R>_%<-*)V^GB M[2]98)H?O@(;]H: 2N$"!HK!#099H0+^"43@:+%59.$=]7/")%\YZV=??3^B M&5>B>K^-)KN*S7T.;OH$XU4\M*--7.[9%3'; N77=CK5%O.2B[EMYS"^ESP ;[I'U6%6SM4P32&["UP&ZA%_ M/A[+_,UG[[AQ0>IJOT$_^OW_@%(VBI(:*KH/\^$8/RY]0?X9O^K\L_&]L#0& MCY7DH"IR*[2QH#I**XUT5AO![QI>=;$6W_7&LCPMJHO%/76049'TK%]\/&RV MH$VMS5/X?6_G?&^OL?$:_GO;:6YTX#F[[>UWGT]ONEC ]T7SW0YI;OS3:;36 MX?>W^]OO-D\;^;\OG_%VUF4.M_ANZ_5$5U],1/+"8B1%<(@+:I$.+B!-O("I MQ"(8P$ F1)U2.>^:4DN8%+P VTL MH1CBH(G!E#&;:#&44&2P89*J7E,!=B> M&MC&,G9'(E10,2(GC4'<,X-TE QI0Z+&/& E[,J:UG7&QC-2%5PKN/82<&U6 M\? %U^:%:V0L-LL(S*(WB/A]+NQ3 LCS ,>R]@-3.PFA"?993EL*M0%).WB$?,D<'6 MY?$UFC,'O%JLK!' *O[@LBDSC-*Z)Q#=H33H"Q5I$Z0/R;OHF>(R."<3@Y]< MR12(M7B.(CTA+7B1YCM)\YA*193BT="<-QX4*6ZH1U8;C8A*L:K\8')9D?_[ M7QH8XQ]%G)^O.,\\J+KLT(\DT^/JA%3>B$"12SF+5A !F9Q&F3#/'1:$Z*@7 M<(=^]L=Q/S^.?O$Y9N:F(U3C/IX+JZ#,G5%F4B!O)$+@7($L&A80)S0@&ZE& MSE!B&!!!YL+*&A5J@3+*S,C>6F1V[DK +3);:,/,!'I,%6 P08Y@AAAW#FB# M$L@FSY&(+N)D J$85 %1IVI6ARM%I!=0I.>F"!21GK=(CVD"'"N-E<&(4\+R M'DT0[,X649C3!/]WP;HLTH+-JL)Q.3RXGU_>S[,J36.F>,!A[U+C%M4I,DJ< MMMAP9JEC&CMMO*71*&G$79,$E7//^<#3A(RY.CC-.&/(.*ZS/P?/)@M@'%I* M9E*2.(F5-29-O9*)F5@J%L.A8X9FR9]/#D\Z56W?\;+/+^SL8IJH.L!T#4AA(9+ M31UE'AF;%&@F)B";.$&<".R5PT'F0D0*US'F#\A"7>R@"TPX9JQ?3"G1Q$$-"DK>>)X]$H%F]$J!>P7Z,1&1>FT DUVQE MC1I3QV3&EJ$'R^Q-LPY?-P#.>I!$R[KE-BP?S*LF=.OTO-7=W0Z73],/=Y--0\C;.%9-LBN'?[(\5\[M/#,4$4S#DN07"U/$N'KX8;1HSYJ296$^4IF MYH']MQ9S'?+'>1Z R>=4;_L5&4J @E.^P1:%1,\)FLB5RPYR03UUOAA M\!2]\-J>(OW+WZ/"*J,ZB="']1_#N1Q5*QX]ESC UC9\UFCMG#?V&[2Q_M6' MZ+!U%$FB&% X99&-3*(@F06^S8U6@$I\0@6+(2)=E+'XL7@N"M[D]>[CL.Q$ M5;7BZB)>K;V]M1P%++9OME MNTR%\N9**I3;RY(M!)Y\ ;'-Q8@NNYO'[XK#@STZ.@&(.+LJYZE[TAOLU?[W MQ/8& D &_!!+;7S*J^=1=O+M8G@1Z<-5]NY;%'LP53UX6%7']T^"@#F@VYO MM?9S;XL1?(6JFM($H#NM'G_D3WH]^!)\#C"5I^PX@V 59MVOBIM4WX/.U&R_ MW_7MZFU5@:;\P*NIHF%:O^4&U']5*!KF)5X:I M&HDA#%Z451DA(<$+O2I^5ISA1X416/U'MF$#B._;W^-8R9.JN.&+ M+M[P[:N/GMF<\M0%!GJRA#$UC D4@J(X"!ZL3DM1O&%8CZ$2J!&EZ7YOAPS0 M<+$*&;E9U:$. /T#2^ S8(SG0Z'.$ KMN:ZW8/:]ZIB4:J "AC*H=V'7WT' MD"'C6?O'*K]G+8AEJOQ Q:KAVB4&[UQWJE[\QJ*.Y0\>D9 M#>D5>]/%6%[JB65$[S.BS3BH1O(U*-?5+U5)X-F6'+OS^=&"C]7HOP2Q_(.0OS\ S^'ZZKPT KZZRTJ:NL# +Q;($I.O>T?FE.$LPUF& MLPQG&#Z\F$0^'_>;&^NX>?Z![YQW M]AJM#Z<[7S[PYF'VK6T>P'UG.Y7?;>=PS*?V70,W-CZPYL;>_O:7S7^;&Z_W M=C>^T=UW;_<;] /=:?W5SGZWVU]V)Z;Z=L('9H5%+-@J@#XB0T)".#H5G(O< MV5Q0EM\C7&M^ 0._B LHR/'BD>.*#>6J^:1@R0RQ9"R8B1KC&?4:&:D"XCPJ MY(Q/2%/+F+!42$Y7UHC@=2(+EA0L61(L:<9!P8T9XL987(^-PN:H<<2TH(A3 M19#5P2#"(TG$^T1< MPPO*[%E,G,"VX4W)B(&Y8)DU3PT0K,C<'A$YV%A=$VNL\2(AHU0.GY:@O5C#D38F*&4,#0F#]L)T'1?D M*,BQ+,A1M)?Y8XD8RPL:+2.>8^22J6HD460M54A&[#6Q6GB9BQ]S45?9&ZU@ M2<&29<"2HKW,V(+:N*AVTFH ;FSBKRXRCHG6R(0 Z@L.P#]D8"@1K7Q@V 2> M:[(:6F=4/SYPS,B_91F.E[K?XY'-J0".8'T/NM"AP^,XN-UG[WEF39T"?P!9 M/ 78\9X9+EDR0H1<&EPE1J(0L9SA+!P"3:BU%+GUAF.-6 P)<>\#,C%$Y(W* M:1,C=BJ?X9 ZQ:5B:Y'F4@[L98[QBS M-*?4)'4\+;\H\EWDNV@+#2,)% 6G1DEM2[G#XLES6/G#U)@ MS*C$2 ML$(\B(HNY0R00JV0$9*8$F#>N:U.DN4AS.1-8;/D>.Q/P,8$02XXD MY39[)C"D$S4(PYZM#?4B!I?#T^M8/S@]7)'\\>H*+9^9OM6S(1[:WL$PA^4@_YG% M9"P09 +^/&^8X2Q*YD/@3G" &:9-4HQ08JQR(>@24K%X0#.AP*@&_1Y'*9#$ MDB+.I$5:8XURT2+0%S -.#L24%''Z@G. ^^9M*+(X,QDL%#Y^4OE>*45V&5X M)!Y138'*1Q>0M08C&IQ)(7@6L5I9XZ0N2!'*%RB4A7_/5@#'+-]&.2&5$DA@ MIQ!/EJ%<=P7^-!A'KUF(H$MK5A=RX5UU7YP ,D<3D0&>8S07('4Q4IT$:%/, MD1B+N7H117#,7&U2I!Q'A[PA$?; F)"51")GI9;$>Q-$/GPBIB[)PKNX%AF< MO0P69CI_J1QW/">"4@>R2+C#B)-HD7,.=L=@B>,6.ZQI+FM5EZPPTQV9R]QJZ MTNE^*_[:MY9")PSV!^-) ,W)8VHP$]9JSG)MN)A\,1 O'-Y,*)'N/0W>)8Z2 M\ W1N=X=V^0X-@'0J.F4E;^G)(]N(QE.55^T=)<"/W\Y7O,U$PT2QCF%-FH M),BWRAEQ0@1"SX.S@8G@9>4U(NDB'307^5X^^2ZZP6QE>"6Y%S%07#A,#6 M:5;LWPLHS./I8A23,5B*+,V)IEAB2&.@X%;02"S\SW-1;1++%)4\VQ+#SZ=K?WG(WBM=BJ# MH0K=DUS[^Z)==RZ[L-Q9IV8X#L\&7!,@*M,D^VX)GHS7B=&4F%*.><>$*F<0 MBX:]VQ/R_E.80"6)0#!]"G&%/7(B'WDZX8SC27H65]8$E77#I@U=G9G0/&JN MO()Y!?.>$/.*PCA_%!S/K"-IBI%;Y# ((_4(^TD$%".6=3< &LDH# R56?3 M^EX5%"PH6%"PG&<]+>*-G6<)'9G'5")+"$=<4XQH2 MDX)X!?%>-.)%8S@0!*) 6/()OHXI1.N)3P;H :7EV&\!,6_LV ]P+6F6HSY3 M3OR A4;6<(=2E)QRF30HPZ#K8E,'E;A@7L&\@GGSQ;RBZ\X?!<<.1QDWU"G* MX.=$M8'8'Y4U V>UBVQH&!!P8*"1==]VC..L?-E:0,) MTB?$8HHYLE(B9P+\F03C1&-IHL_*+JMSM7205QU$_SZP\%+X&=K?URYZT#PY M!/GP:W_"AQ?M/;2];^VCJCFFPL)'EC]:9?[:B[5O6=^I>=OKG<$(U.QA]^1H M4.NF6OM2//KPN^]%VX^A9H^/>]U_01P&L7-6^S_3Y QQ"F-"'!?$\\B]@Y5 M;& 4>RZU=E\W*FL5P01--%N)*43Y;QB/+GPZ;/5&'/Z\FW3+Y93N3OR?CV>[ M7\*Q Q6JN7%PWCC\V-[]LL5VO^R<-3<:I\WS WC/#DAIENX#T3S_?-JD?Z7& M_F?6^/:51"."DQKY(%U.K0ETQ#"#HG?8"45;%V#UT[:.*@O97:V^[/7A.+\(B'$X??%RO]>'IS>X@UHBJUUY?W/GFVIV7 M4'$IC'E!MH].JB]<$\>16' !VPC=&SU;47CYW<;S]GZG-+=^#X>O]QE;S7>WOC]L; MG]^T/M5K6\TWJPO?@^9V:_-3K;5=>[/=W-AL?H*NP&^?MM]O;:RWX(^W6\WU MYINM]?2 -[ O>'NIIF@RG(NO)8\4&>X M,UBHI'&R5B5S2_GUW?N3WXOAI!.[Z2?[^-N3P4DO7K5);/Y['(_Z ML5J?+6C/ZT[7'[RX'?O;O\W3KX1*HURNC>D]0UQKA:Q-"?E(O$W4!B&!RT2@ M-<=YA?=.XOV@ M/N(/^04W_5#S^X:71UN?4*M;8RKU<9X0RD:7M-L53)ZZV6\ M2FZ]]K/'$KY*I+[38V>4,6-QG7>'JQ@60-XR,^(]Q!-ZR8U7=^KBL[%+/88G MVOCV=[G>MF'WS*"V YCV HQ7^YU.X\O'@^:[!FNT/K:;^Q_WMK^\;3>_[/!= MV$!WOX J^^6#V'WW =\T7FU_^?QO_GSGW/_;?+=%F^\VQPW6IV M=EO^W]V-SL'NQL?4F.B@JV&?)111;SWB-BFD@?N@J%*$^',A.*Q.AB.E;1(8)YM MY(XC;6)$3'/X'X4)CZ'*/JCYE";R!&]]VC;ZW8.]R(;K @O@FDT1Y)T^%GNK._);:__+.W\^5M9W?CP]G. M(4@&W3JOGK;Q66R_RSZ]^3W7?1-V6[OMQOZ!V/WR%N[]YZ"9W_5EB^WL-W++ M<;-UP'=:F]".MZEQOG7>7/_*%1-6$8Z4(0%Q;1+2(E$$6RR7 =!.JS0$1UAL M,:QG3")*L:29-49(KIS0U'I)@B$L>B*$N.G+\'Z[^0ZU-C\V:AN;KUOCJ_GJ MR?Y$'YA?OO"Q?&"V4[5D%LBGY6G6S8>O.#FI %]0-$0C3B5%E@"2ZNAL$E$S M'L?6P<+YM&0<0+#O'L(F[@9YU?3;_>S8TDU#/Y3*9R7[O/QVU5GESMXHC^Y[ M D1G%0_)SK3.)Y*M8GV[@\F]G4_D*N?L7H_]^37!;G_I@QHK9^$I,R7I?U)> M/)G13->IH:_50G5KO9_%^-*7?8K^W9H?=+F'8B/Z>.AB;VPT7N):GB;*:,%G M=Y(;V\-6]_,:'#K-8I^M_;BB!T_1[4_QJ-WM58$W_2IL!\9!UVM'L8H8.SD: M.>H"U:F83[O?/[%'/L*(] <56$P3,*9TD#0D&ZC(]%H8[U44P2G)K9 NW=4F MF[GUUE$?R.(A+*3//QJYT>[[[#2\%':1^S+RD5VDN=^D.V>-+[M[C8VMLT;K MP_D.A;:=[YQMM_R_VQL-W'C7$-G6_NX>9I WXV-YK[N]"V M)K2A>;X)S_APNG/>:>]^^2L?+)_>L(M\#^_^X>%__NKLTLYWMW]\T'@'6L'Y M =O^TL [A\#^6YMDN[4._<]VG0]GS=9?>W"=['8T:ZQ_!?9(I!441>L(: 0$ M(Z,IB%%0F!%JA7$Y05)=Z_$4XC6@U5,M.1&T,E)(2AWC.ABGJ4]&:2DIDX*% MNT89ER6WM$MN>_TK"9@Y8RARC$7$==3(1:N1(8X*8/*2B;2RQNJ8C<="UFN] MV#^./L<-=LYNA./<\?3@I:0Y>'C_G\W)P*SVNJLFR((Q,\28,7,_L28Q+@C2 M+ H B1"14T2B))G'UA*:JGW)J#HALZHJ]T1I6Z:N?''O?KQH='NFT#8K3E6@ M;4[0-I:%&:B/]4YCI+BCB MJD+8.HX2#(%IJ9D0NVV-DW*#$^^Y46U&6- M=Q]H\TMV9#C N_N?\>[&1QB3!FGLY_1/'UASOW.PNQ\.=J'/H 4Q:1TGS"( M;@LHP#%R*(-*TRE1(V.P7*'K?,F*6FBC$8F M;$E1O)_[DJ/-;U^I]#ZKUR@&+A$/(B$7B$:!"&5XT,Y9EY>D MU,J:7*5WP*X[FVI>:&@R9S))!5@,9(!3@4TDB5@F:>#!:VR*#>>)I6O,AF-S M+@.<$I)"P\[.HT2&:X=PY"2ED#&2KJPI7L=JVB*F\PPXGM'A?Y'<2^NK-#:7 M+!$J4FX2T8%2:F+BW'%"4CGY?FK)':\_3*1S!#NDDL&($^.0Q=H@'310'(:C MSP<0BM:-?NZI I[.RXU3FGPL#SP0ST/IQK]W)9B#QQ&8@0:B1+LDH(^' M?;20(1 ,6IT73 5<&/!32_JG7YY4DN;^VT[S\.-^8_^ ;G_9Q(W6WMYV:Q?^ M7B?PW-/&QL?#G>PJ_ \PX'W_E24BDTL6"0%55M5,X( M!ZTZ>KFR1E?'6YE"D89Q6S!KN>VY++ET6 6 M-24YL2QH[QA4>"LI1PDGQ5GB20DW+781;"E6P2E +=!U8/=+03H28M)1&YP* M=CW#A000!73'<*2$!.QR7B##N$4$U@'VB6JFVYY8B,:L/8[ 5FFM1:H*!$DY0#$2@:+5AIH4@N)A M98W4S;0E+8N_SOQMJTKYZ$&W]U9Q:J@UL",F^"!)A:43Q4+SQ-(V9J&)FEL3 MA8.EXR+B%GND XU(2BF(9LD# 7DR:7NHM\Y#3*D/"QI=:BF>5?+6(L5SD>() MP9/:\V!@UI 3.3V<,A1I+CD25&MA(M>/:^3PE;D9A-$-1,PN]CU_+/5RO=6!? MO\.V?D<>-4H:S& H0OUQ<]*CDK)K9 "TVD#\Q3)4XFXP0XY8@42TH5$H[ !!U#6 ,LI'6=/#U+69B!#RY'_JJ!I0=.G M9<4%3>>"IN.F+^V5QL$B8F).;,*!&!O'4#(,YP+R7 D]1%.8WF>#IGU;Y?><$:%5>M.->^\BWCVVG7@.9Z??OD#RM7K,_ M*CX,)9&1>O8[9S7;B_GJL)Y+_Y[57,8SW3]Z?1>A5KF0]RGOHMFJ9'3V%5/X M*I%Z%A53EK]PZW!EPP+(JW!2488'!UDM/U]\GHQO'OKSCXWPXR4\;J>_+W#Q MOX6T?SIL;'W#C_"/P1-@U]_?:\!/O'$)[ M6SOD)C=LGD-[J)(+?YZ'G(N- M-%M'37A]ZS1VOL=&CM7K%YB9&EI)C>)1)Z#"17@#JEC/)X$K_":!]? MV8N]:-,@]@J[>2#(M-U$@#E;SZ-;P&3F8#+!-I,\XR+'LP:CLN$7-"4;I$2$ M*9,\((U5;&5-*5R'[ST1B_GY.7[^.Z_*]M&)'29XR.>=U6*0U,ODO;?*:BY" MTM1YQZ5F+L$OT7[-K@\_/20E^A&.E=7$8^7F=FNSIFNH-F=/A1Q^$^/;]E$^ M>'X?;3_V%\4K8?O-2*CV/XN<)W9G?Q?N^Z?=//_ =S=>MW=:F^>[[YH'S?V_ MVMOO=G!CO\%N>B4T6P>GN^_^:C?AG;M?MEAS8^^@\>ZOO4:K>;!#/T![MOCN M_H>SQGE((!!GC?6O'#O,?71(81\0%XGF!%L;%\!B3NGT<>R 31]_*M,*T*LJYT DC9:-' MW,($:PZ@EZ)4DE&?L,X-='+ECEF2> N>]*#;W53S9WT853Z_2L>-J]JI[87LX<-#/2@"W/2[<%W M3WHYL@'&&9A-54,$)"[3%;ANJZ2.>:/\7NE,F<;4/&QV%EY\W.N&$P^-.(T7 M:2+KE^WKIM3VL09S[T>W]6.G4ST-WF##8?NHW1]DR?X>K[X@-^OD^+C;&U0- MN^A%O;KMXLW?AP5/^C@[7O#^!KT-2#3CL-A@\?=>/R':L3MNH)G]PB&J,ERK-7T7&WW\[? M?M6+G6H41LY$(P)[Y:Z1*Q+^<8MU_6[G9'#[+==E<**+U+")KO?[727YUJ<\ MMFP3?"/9U95_]WH_F-NWB!QH.0>H4G1>VNO_'Z]B]"_T<,5A;??;4!O M[WA*<^OXWK<5$6X%;S4VO]_?O-C=KKSUOO-[::[VI_?]S>^/RF]:E>VVJ^ M65WX'F1>_JG6VJZ]V6YN;#8_05?@MT_;[[4\,ME9IK$RH??=BA M10Y_G/R>7^Z@-]ZC96!,4NNHXYRHI%,T2G.X6WIXAIT;NS%!L1!]SMN>QT9CM0=+3IB:Y%K;SDN?\30?V\G:"YF1B.MN1F";: M<,&':5(03AF<'X-#IT&*F:1N6X2#ZK$#I!&,9G)\A]5R_SR1CSR63[JZ)I]U MEN%\GL.Y[&/Y7+QMFMTC-$J@]FCT:!GFM_3_9??_Y:25NW1B>.J]8IE6S.6@ MC8Z^*U1>WS88(V-JL L'@N'LUI01C2RT3#$ M-?/(4!L0$T%A[ST/DE6EH>5"N8T79"K(]!BYZ0HR/18RT;'\ )Y*$8) UEJ/ M>%0":642HI;FS'4^*,4!F62=J.4M?;T$3'OD _YR]:QK+X6'>-3^%^VU0XA' MKXI4_TRJ/^&SL8SLFF$O14184HP FP.R&(1 9VK9>H$E&6:2>B$+^M!+J&QO,]O> MVI-,[T%*:012DBG$,4_(84X18=0!Z63"V9AK,-25G'$)AN=2KZ9 V\N!MH>R M^0)M\X.V,>8>J'9)D80"\09Q(2RHS3I4239UXLX))@':1)W,[%2Q%%:^HP/P ME1#)EVO3GZ?OV"-\]=FG<;R[=+57E]F70(+8G'+RI M2*,T*2$I#&@01#ED;/"(T* $Y9$Q0U;6J*S#JEOTD[<"&TL!&_/Q&2RP,4?8 M&#<\>!8 *[(156K$ ?N1(UHAZP*S&F##Z%C!!GFRO+4O(CQG>&9>PG-F0&73 MT/W@7D3V_D-;2B7,P76K[ 7SV@L:K?7!956$5@/V@DW\53DEM),YY9E.B'M! MD&$FH. #XUQ*1[R%S: N])3^(\L0VE(D>9Y^8$62YRK)[1N2[&( %5![)(DF MB$N&LR1')).76AII'(N5).-%DN3E.S$JV1;*B=&RJQXE,\ ,,@,4-6/)U(Q; MC$X W;XPE%DSE*UQ70.F40F< N@:1"*>:$2&;ZI<5CE!>!NKN!J$^+1$J13H$@X31T(M&0,@SR;NM*+ M),_/SL-A&D/R,]4\WC[ %R" 1_#G%M0>1ZHW!AG61:+8 V@LG*)(^ZH U1. M!FD;G)0D.1?4RIJLBQ*.NW 2.%Y I@CB"0!S"FZ@ P)!MGD8*J""S;Q*MB4:[DL$5D%X K +297+0 W=X"[ M24RU"3I8QY"*RB+8H 1RUDE$<5(61Q^D=0!PO*YG9H!_FI!3LWP.!%^J/V) M%IIDO\5:+Q[:]M&/X\9![!V^FJV%[\KD,!C^T#W)U1EOSLYL3][O\"X_ MG/.21&AI8SN7R3(UL=KP-/K+SX[E+G!M?0AK'R]0K;K8 DPCUS;]G,CT53CI MG47;*]O\';;YG0GG[#KGA/86817R8;N*R ;MD-"4.^RH\T*MK+'5RSU^M #6 M:GG4%QETEDN$IF'(182>5(1N,F6N0/$WQJ/@O4> ?Y450" =O$LBI1@"6UGC MJ_@.(O1,SYOCW3G*,SUT?N3B6LL%?O?G#U,C,B81)!4E0@9+;?29/>A[LX>7* [WYP)%'!Y5',9L9HXEYZU"6)A<&4 2 M9 3V2#/E@E<\R"2R.,C[,H'ISUX7EQF,&;%"N^^A0X,:T-EX%^O5^4:-3)D3+EGF'+?-@ MG$$R;9,2TB-'>,KUBR0RT7'8-Y42*A$F(\_*LWS3_NPC]5$)_OT/E M(O2/+_1C3H\4YB,E@:*6''ARBD@39Q$%ANP)8U$*G86>3YFG?>F%_N6<7DYM M%RQGEX]W=OG"H@[G22E_8I$I>\M#]Y;]"4F*G)3:P[P@F"^*>%"PMV@-K%(( MHJPU%)NTLB97%R6SR=-O.@4]%I:;%O28,WK<9*914LRI)@B(:,YSI@C2/!(D M@J78:>=8H"MK8E7-RJE[Z=&CHJR_#ZSK1/@9VM_7;AJW_X0/+]IX:'O?VD>5 M1Y^IT..1.T#Q?P\'%X2NVZO"?E_!I,1>_M;*6B5HM3?=_I6:?%67?G):PYW" MF!"@"<3SR+W+.HP-C&+/I=;NZT9%% @FZ+93S.JU^:VM/(PM>/3K3M6RV3HXW7WW5[N91?;+%FMN[!TTWOVUUV@U#[*0-@ZW^&X6 M\/.0W9#_;9Y^#;FB QF,8\D'O)-?#7JPEN;+6VHNU2H9J+G:Z MI[7C7NP#HO=K'@3?MH]J[:/A65W>>GJQ Z ?:H-N;;!W$D;>?O[KZXOZY\-P[ YUSUQ83@Z]K@?7UW\\D=H]X\[]NQ5^ZCJ5'73'Z-G M#5'JE3@>USNS" XO_W':#H.]#"VK>+C1CO3?T9M'EU>K2S=0=7B-LU7)Y*V7 M\2JYYS6F^;WN_%ECJ5PUZO;+B]580E8E,4O46,KN^M@)C/=B*0/0Q\7XYAV/ M^18K,][4L169NL;>0E&ON&3>S=>L%1.P?[G::7QK_-EN-\]TOG\\;&Q_P[I>_ M\C/V&H]M?FJG1'J_PYD50P0B%I)4$\4@(.88&H)1IQJA@RG@F$C<).)(:9?7;H5.7-7OR%>U"#:>@ALTWX_JO MI,#HD[8( V\':D@YLHE'I&#NI!=>P92"_JNFS*-SS1R_&)XA@(1_SV.1_U8'_YU%&=2:O1Y1I<^,@F\F*?-X0R5K6.:K>/3 MA(,/*X,Q 2.F1K573\M2":14J> M]-0'RR_];/GY'B_/G#:64^79;VT37&Y,!@?LP^" MO04&B>N,3+F]E6(^!>6>&\K-G+47E)L'RHT1^$2,D4$HQ&3$F(4KS ?L3 MQ2E?\?%__-??&!F\JGD>B*TCWSD)\)+OMM>N@I:O1D1W4^W_3 %N7C&:I,81 M.!Q74E@L S W[57 CG+]*PHG;H+;/Z-&30ER,IS+R]D$\TVC!=[-%9)3G?.>%!3H(P^$G$;BU+:K4R\A36:[W8/XX^>RQUSNK5Y_V];F^ 96P8#V;Y.5A$"Z M@CT=:*S>,6_*8I,W^LS)FR N**>,M8+R8*7%GKMH."7:&2E"V]XAIYIPWBN8B<33XB$G0B(DAK.9O.SL ET9IC+C"(O//:&^V"I 9$6!M) M"Q6?XVQ&)3'GT2"28$OEEB: 7^H1%4DIGT04O(+?<2K^"/"[O GFMJ'?O=K6 MCV1>8VGF1HG-AN[^U;K[97*S11N GZ0SZY\<'W?B(?QN.S5O^WNUE*_?DMUL MF+.L=CV+S)U2F(E)^3H>/:F9T:N"Z?OD-%-TE9O[I0G[18XLC?4\$GJ9.V?> MFJZQ=\X^MCQVP.>1VND7:YA3CO>!KU5:>ZA5S SP$HC:2:_B=9>=O3%/E=8! M;M &WX6V-%H-UGSWX1SZ=-AL'?#MU@%KT&:G>;C#MK^\38VS40F&*YXJRHI( M6+"(.ZH09R&7;W$>"1EQ\H%82W,P8%V:A?$V_X7_7(&-Q8:-.2>&*K Q!]@X MOPD;VE$O/5.(<0&PX15')OB$#$R@3M@HAX'8R#J74V; >W&N:B^B!.&M5##= MK3;ABT^V\"A1LB/HW#YZ/U(GSPI.3H&3E_7QKN(D84JQ (LU$HFX$@;9E#3" M,>8,*K#_94?@J0-F2Z:491+>1XF]+<+[4.$=(SF-A7,E,G_WVC 'Q[;S0PDL$'AW"/PT MSE]PD(PF89$6E&7^XI$!#$3>P3QRI8S*X9J*3IGIK23\6&[2403M@8(VQC6" M#"9(H!DP)1RX!E5(&Y V["PGQEG!87[68#871= 6E%.,E\>]ZN5WMT^N^+F- MI(]G'[3Q)+R7]33_^[ICX,AQ#?^XQ;I^MW,RN/V6&[[MDQSJAA/L>K^OW=5# M_K:G/+:/8@[EO^94>N7?O=Z/M?HM(M>+]@!T9&CL*]LYM6?]E=^O=Q'Z-WJX MHO#VNPWH[1U/Z4F\4_^T"].6VEXO[QC_U9;4R^2]M\K"SA&2ILX[8&7,)?@E MVJ]J9:TJFYP=#][DS>8HYYVQMZ_'15F 6\U/K?7W[SE!<[NU^:G6VJZ]V6YN;#8_05?@MT_;[[F=37;A7*=_)IV?CV"# M\=D!)X9:Y9?S-BMTCUFH_"K=NC3I-.S@I <_7WSQ\NT/7TFT0K"HD M.(>YD M1#HGH0X1H"MYG9QF8\7(YUUD!WU3JYBR VCT-70G-3N]0?P[_=8.XNVUZ\B M<095>K?1-WKQT+:/LFUI^(6+0.Q;$_-.JD=_[7IN:B\[%7:'3H6PF8>X&J^;RC)PGDM3BV_+RO.YN,PMG8X2G_;WN"LQ"O="S]R&'<9 MNGOGB!XNP$L4G@9^ES^DZF.E.<%\9LUE4LS@@QV3%@Z6ITZK^CR]S!,W@FEB MF..")^-U8C0EII1CWC&AOFY-[UYP:^?%PM]7@C8UU^-[Z:9.^[4!;V>[&A[.Q<])]_^_NN[>'N_O? M^.[AUK_-=[N=QOFWTP9\%^YG.U_^.=C=#P?-C;]R5>(QAP0&LXH=XT@H11!G MTB%#C$-4,BYU4##M>F6-UIG@"^^653)$EPS1#W;S()8R0#'+D^:1:&>U#C)A MQ51DRLJ[XMQ/3=<%[QX+[\;\0G!PD@K,D,=1(DZ2089Z@U0*PL6HM#6 =Z2. MI5[N3-(%# L8/A0,94S18J #7,#_$S61)Q4-3TXQ1B,M8+A48$C&RL\1S*P" M'"0R1,2CS$5++46I9X$#R+9 _4J<%#0L:OG0TG)4*7-!P(="0W41#@J4@ M/F*DL'6(JYRV6;& : S62\D2P0[0$'3AY:DR\ESJ)X-D\1%G9;@0LHCF MHHGFH^K1133G*YIC6C2//BGK"!*&6L0IBTC3%!$0)!RS)DVCK[1HQ?'CB^:S M]] !T1$E[==3:]#96-)LE^"JU\7+*+!O @\1Y3 MRF,(/BG0PF%"/>*1>F04L]E=C7'.O-$RK*R).A7EF/L9"_=3Z/=%N&UN MT>-;W=?Q;]L.ZWF8BR9_']R8$.TMF*=R0)'F^G0K M:]-ZM18S_<)KWUG.?KJ%WR)O1?>>A1R.UX=4@28F8B;G''%.++(6)-(1%7!D M5I(HRS'VH@KC0Q7F60AC8=0/DL@Q=5ESS$FR&$G8 A&7)B&#HT(22^I3-%IY ME1FUF-9QM,CC4I#0(H]/*H]C&JX,G(,J2Q#+2="X2QCI8 P* 1M0?&VR.2L+3EK%]-J,>WA M0\&^&6+?>%0\)YHY0Y#3@2$>X!_'$RQS2V'16T)5"BMKK$[EE*EU"O05Z'MN MT/?83A4%^F8(?>/.%!Q+ZXE%0-0MXB12I*TB"/@?MY(FR8U?65.ZCO&L#ER7 M!?N*^K>0?A@%#V:(!Q/2#!J8/IKCG!A!7$>#M-$"<:Z-3S;QQ( *Z5RZ9&GP MX+EX9V0)>55;/X0Q'/1KO7C2 EDM&+(L&66X=M[%E;5QA/G/ MXIU%+=-7EUK\'UGZKS.1:_)?O$=F PMC[$-+8IUD"0DI@7T83I$56B$+ZF;B MA(.RXI_0>^39GX[]A&&T<]GXV!^\L.C/Q^01E:6*,RG/*##W! :? G>/ 7>7GO07<"=%<,1&C!@P,<29M,AB:5!, M6FG/3:Q*,\FZH>-. $\"=]/9=H;":!:9@OT]I%RU[[9S$FO=5$LG@Y->?(#+ M4C%-SX60%22:'1)MCA,O;+Q53'C@7#G*5V")=*#YG"IGPI4^.B=SGA_"ITW. M\33'3XMO'+J7':F@RX/1Y18&5/!EEO@RQG02EB1P;%#"/.1Z6@F9) DBD443 M,/:2\)4UQ>N,39M0^XG/LYZ+&>K-2:^7F5#707/L2!IA9(<4Z$'>VDL(3 MC MB!I-2X&GV<'3UCC]29IYZWP.$*$2\605LCE^B[K$ O4T,EJ7XH;^.S&8;%A M>5&X9K-[Y LLSQJ6&^-T4UIL* X&<9[IIF 8&1HXLC)&9JU41NEL]Y\Z*'EV M(E/,<;<%YQ1T+NC\-)RYX/-\\'F,-CNM+"4QH&BM -H<.3)8$03HK'!RUA$) MM)GK>ULKGQ"@*X+]^\#"2^%G:']?N^A!\^00),1/_CNO\_;1245<)WT"#QHN M-DF]3-Y[JZSF(B1-G7=<:N92=C.V7R59N7AQOFDT,(>V]ZU]-.RWKG!WOK*N M;LHZS;+>W&YMUDP-U?Z\-@37I9P[N)D0D''B>>3>!>F)#8QB#_W4[NM&)>4$ M$_1#W&_0+]ON_9./G#?:?=_I]D]ZL=^"%[SN=/W!TTHM;7P:2>WA!]$X[^SM M['\\:+2:>XV-CX>-_2W1S#\//Y^"Y/&=UA9NM#P'">S$__EXMOLE'#O*Y>[& MP?GVE[?MYKL/_S;HYFGSW7M[C?T/_S;/]U)SXX UU[]2 M:WRBT:' "'"B*!G2(>7$219C(P3!"0_A%A9=#.L9^WS"@EG)?!2>$Z)M\MH& MAVE0#)3;N%*+ (7',/"#WDE<67N[OO6Q]L_Z^\^;M<;F^J?/'S<;F\W6I_$% M/Y+=:I'>6.K#R?GUFZ^W-!GEE<3<),>YD]HD8PDQ)'@B.#QAY39A,(\@"V/[ M'LC"$%5@1^GVJFZ_J@X#\K=6UM;[_3CHU^Q1J%WL36UX;P,V*UC(H68'M;S M:_\,G2J.:K;V,>:=*WNVOK;]=O_Z""]6SU?6MHYJ\(RSFL\''W5H??8.&4[^ M(/J]H_;_0K=.^M#30;=V..QU+>4>#]U(VD>^VCXQ,8J-3K'M8.3SJ# M]C$@?2=^CYU^]C49[%V[;:\-NW[/[YVMUEIPI=,]C?W!\.OYVWW \G8"7#\: M#!\,%"+;%:#Y_>I1QQWKXV%UAC-\=O8EOMZR46.K+[6/JB]=>>O&235#U;-@ MY+JA7QNY),=0SQ_#PT[S/T?=VJ ' YQBKU]S<7 :X]&DGN1-:-3?U46>\CLL M]I\M;N!EO65:WV^ 'UB8?EMUK5[K'P-QS"NKTSFK=?,\9_]S>_2MG9E)%O-. M-F)UVM]S_T/5JMC09^RG?82K(:>?4-B1@C]5K>AJM^;$20$!=[UR[1JB_> M#N*W;@^&,>1'P;_=H8#\6@ZA!_F+ER@QE%\[0LG;Q^ET#\2F>P*C?7@,GU92 MF>_J]T<"&MJY5? ,:%VO=Y9[.;P3V'\M6K]W(>FC=\$ Q\I[\]KG50"'^J,/ MF^$ ] ,0YBN-6*U=]?W,D+=72]#E"O?>5WUFPVX.I_QD '"?QPC>=8$_54CD MA&?W+R'E:EL'N6I;[1!6Z1XT"00MW#I=>7+J #FU "3XJ#NH%D@/AA' ^<>8 M]43D%5P$JU8:VOBQ?6T=]($+771D7L), MNMY?!,7XV/Z>E158?AX%,\"%0.T"H*T3D?AAP?-SK_EL-X-5%$N"_ MD7SW][J]P="4#]^"A5V];+BJ8>VERV%N_QCF(11<2J\=Q?K 37X$PIW+\X$0 M'0C9D#Q<[,.M?.%]%V8@-WW]]7M@4M^['=#P[M7+^AVZ^=WVVM7P]O)WCFSE M#WN!)]] =G_1L0QHW0L#QNC0H])+43>ADQ]"FEN9GWGE0"1?ZL(0YC5\VA[L MW7A6OF,XRG'DE9('X31V.M5@P'>_1^ "X E) COS5R3V_SS#"Y@3O MS/-5\QUH<[4=#'MP&<4U D]Z"_W*V BR\1UN^W[+VOG9UG&Y0W5A'^U5 @*+ MLG<0\[8QM UENEI)2.[W<2^/ZA4B>Q@'>[ 1+S38 5.IE*AO>3A!G^JW0QS" MWG5Q[[6S^&62/?+>CK9WU(6-^<)O^U*"8:EDRGISF5W(HO6P9OKMT5K,8]>[ M,M0PL9>,.^^4'7_2&-0$6 1#^H9CDU@T_O6Q0?O"/+=.=779ON,<# M23H!O<'Z0;?7OXH)[J2?^3ZLLW;_H&HB3.Y^K"Q/%S)YMS&[?6F=U2X(P8V- M_7H?ZI=#<)4QV=IP0O-C :7LMPH[+GLT? 0LT A,8U#K^WB4+\'#AE,$K3B" M-7Q\U2U_M79]D4XT/@W7Y]J?KO?[VJUK>K2VN(#%=]P=3O2K7NQ40OC':3L, M]BZ,OE?N&AGK\(];K.MW.R>#VV^Y+CQ7+70^:U.]E3LU]XY/>6RA)/3&?%SY M=Z_WXQCE6T2N%^T!JDJA>A?Z.'*PIOO]N WM[QE)Z$>OUI M%Z8M-:#7Z?^M_->O#;%J9:U5;1P@H!EHA[30WKX>%V4!;C4_M=;?O]_:;VS>U1>E!MC-_JK6V:V^VFQN;S4_0%?CM MT_;[K8WU%OSQ=JNYWGRSM?Z^!CUM#:V4M=\^-]<_;VS!]?],$L")=LJ[V1T? M?1 (A4&8MY']D]^+X:03M].EN7UH4U@_"E?LEA>6G>VC2R-E9<.I9.,E&^4; M'[Y22K%46B.-(\]^L1AI31/"F-K(C$N$\9NF;L>953$8G)-(6"><#2YIC+UR M07@NQHSR5PVG%4T#, KQ*!,*^*TZ :LXQFO;J:C_I[UXH3]DFT" Q_7:+A,. MU_T^LE "JT_=3K9CU'ZKG@KL V[H_^?5SXW]D[<<46TY$P7LE[U=^[,Z:[MQ M @RUK''_?CJXI<_@',==^S9J_91)2G537^,VC!B()FVW/1KRX VO/QC[US% MP_USY$8W>O/H\FIUZ<:QY/ :U:M4BULOXU5RZ[6?/5:M8JWN]=2?7Q/L]G>6 MMI:VEK:6MCZ@K4;>Z:FS37I8%S!N$48P8)QL\6X9Y]OXX<_SM 3XM5= M%M"#TOD_=;A]:61I9&ED:>0#@OS5(B/ZF^PUF_W-OMO.I#R1$_JUW,&?)7SS M9^&;>3FL'X7\8_/'HI@0\[4489SW/7L>AG'N?R:-PX_MYOD!;M#-<[AW?Q?N MV3G\ )__<]!X]_F\V?KG8/O=!WXSC+/9^GRV^VZ+;;<^G.^TFNWFNR:\K]/> MW8#/OWPXW6TU2/-+#B7=2XVS\:HGB5D6??((?M&($QR1C?"G\C$P(H3A4:VL M$:/JADQ9:?+Q(^4+A"P%A'#8$D5@,A#KN9/$I&04!1BQ ?MD4H&018:0L5*U M7BG%?"[5R#1 ",V%DZA7R+A(?&#9AO17U M91$A1-R$D!!!0Y%8H$0% ]K!+++&TL:#N8(=(+LK,B9;($$)0X'#% M*\*I""MK#-(::@7P4>TJ)GX!4^2,Q2,R6/MBE\',.="1V0Q(G N4;)TX"XHAQ9)2,2&CN<6 I6N'ONFFO+?4F6.Z_S M_'K=?43SG3FV3UY)9IE!T6 !YFLQ,MXIY(,E(J5U"?$'0&N[+E!SL#PT1A<\KK>?;[LX^1Z M%7Q4D[I\="RPY9X1BEC"$?% +;)4.&29]Q1'8K62;V 9?//F.Z_CW'HQ?"3+ MG3FU909,U$N&E&&P_]0I($TT0R2HJ*7QPN'[AJX_JNG>0Y> BD4^MBTULJ9. M;"O!F9MKT[Z1PM5U7>J[GT%7N%G'X#XFGGZ9/8P67G*:3Y]UR/Z Q 3*%:@1 MPTI):;63RBVM4JJ6#;NK(_ZQRTW?*\"N1J+7BD3S.E6OD>@ID&CFC-W%$)Q6 M! 6@VSDL)B G-4'>)&9I((QC?T\]A!J):B1ZB2$)-1(]!1+-:BOD%&C/!?8 MYQ20"5JC%+6F,B4?"&D@$VWOF< 48U$-1*]P!"HVD?TV" T$PM%*&R@+:9(<@H@ M) Q'6AF)D@9J&Y)QVMU7!/C14>@-E>+JM*UK=]K#=IQ;/2X&O1YZ(]>)BURR MIVYEWSY3WD]/E+_&K."DYL%WX<%7%./2"L<0A0+>JR7B/!!DJ1*($.,B MST&L!B^M&JEK#<@:*Q8HT/1>6%'OI>>!(3/1IX%$&%6GD4LQ5]'A!#D=+5)< M*@ 1F[!(M99LC2.+&"9:X\BSXN1MIRXG 7GS7,6Q:B!Y!4" MR;QB(6L@>48@N1P@B8F7,K&(7/ ^.T(8LH(0E%+05-,D!/4Z\)"4,I\0,(X@3C#$MED(C(T 29)[H4.&7HPX0LD-UDKQ2YH MT,AMS7>&=%Q82BG@:&9,P9HS8*Y"1F*&O%2I<\->P&Z?3:?%^-^F^^"!A[4YON(YCL3 M54!,D-0ZCQ*38+Z!,62XHDA: [,UZ;PCJLWW#9CO_*N&U>8[?]_5S'%^PCA0 ME0+"N> \IQ@C!YB+'*:)!BN]H_<]A:OM]R79[_SKE-7V^PCV>_D4G;K .,_K M;U0![%<99+2,*!IIB37 F[RH[?<-V._\"Y75]CM_^YU5Z/'44FP3HCARQ'FR M2 O&D?')K9"[>EB3://KAU:#QO([S MIS"XEG!\3&R^HO(9PX*QY *R+,#6R 4%J&Q$SI\( ,M18UN>ZQM]/U7K.1C, M]J&GI?J)N)@K N1SLP RPTY!-4;Y'5S,.OBG!-@)]& M\S"=R!KL:K![+6 WKU"1FMP]&>+-Q(Q($0F+"<".1P6()SARV'(@=P)HG;2< M$7&_F)$:[VJ\>V5X-Z? FE_A70UI=X&TF4@:Z131F$3$! %(XX8BQXU$)C+/ MDJ=)VOLHA=2 5@/:*P.T>84:U03NR=!N-O H.BM]4"A0#2S.XIP^; 0RBF(I M!(413?=*^*OQKL:[5X9W\XK-JKUS3W(0,1.D92+Q-&B34Y-"WJQZI)5*68)% M44TU(>*!M7YKM*O1[K6@W;PBV6JT>QJTNQS29J*(J:S?*33\DX]<'2$),<^Q M,2%YB5F-=C7:U6@WS[B_>B_[=) W$P6HL5(L,=C"&DD1-]PCP[5&(I$8>=2< MX_!"-[-EH.#O0PL/72W;[DNAI%&IC@1_">V?J_\+_TQ:?&#[/]K=LD&FQ,(G MMC^:[>]+C$6S-XR%6"[>V\%N8;NA^F'COZ/V3YCLW>%@.=M$<=#KQZ+=KRYU-I]7R_=_@03=.[_OP@J9T@RA2Z-:#.BA*WNY^A'_3Z\V#L[ M: ^^=GL.ANMG[IK-[N$(6@'-\?"M\MU:T*YWG9[??YD8TXG_^0Q8$ X=Y7)G M??]TZ]L'P(E/QX U1\V/VR>-O7V<_[O3>K??7-_=;>Q].FZ>[J;F^CYK_/AN MI7014XQ2XAQQ$@+2F!,DI&;*ZB0Q=4M%!" ^A/Z'P88-X<*950NFOM^UW1]Y MUA8))D?Q,\^.HI=*L_"]JTNF%;_9XJ_X,W8*!E^$J?&OXLB":0S "CJ=WM&@ M^*TTK-X(6A<&__KCXAR_NALN12-[>&KL0\=4MGD1/Z&#.O9P$/^8_/#OT!X< M=NS)'^UN^9KEE_X]OOL8;?,#+H,_K$.ELC1POC'F5_M8>[LZLAX.+"^+@ MXO)Y)C19WNLM\/4ULDV_LIWUSYUFZ\,^7$.V6A]V@;/#,W?VH07'C;W&4>/C M)W&9KS?6_]G;:87]YD?@_-\^PWK[532^?8!GPOL=?(*WW3AIG*[!$$X_E_>CZ,Z;L3%8T:&R\V5MQU97/>?/9 M7DOE_[V<5KO[Y$QWMM2ZX"X+:[/_A>@[UGX[AQ M?!B[@]<2T_1$2'M%Y=8@$HV4"V2PD8B'D)"Q +PX4:EQP,9Z#$A+\$-Q]FK$ MJ''V=1'ZM0-H_7!0'-IV*(;9Z]+IQ/Y;DR7^[3G0]J%T]QK$_1*'PTYYDS006!S>PX:#=;0^&_>IH,5;[VT$^<1*=&]#I%/!U>(U\89'ZO8/BH!=BIS@$X\FW!'.,_2[TT@ >Y_.LZA