0001558370-24-011080.txt : 20240806 0001558370-24-011080.hdr.sgml : 20240806 20240806160554 ACCESSION NUMBER: 0001558370-24-011080 CONFORMED SUBMISSION TYPE: 10-Q PUBLIC DOCUMENT COUNT: 74 CONFORMED PERIOD OF REPORT: 20240630 FILED AS OF DATE: 20240806 DATE AS OF CHANGE: 20240806 FILER: COMPANY DATA: COMPANY CONFORMED NAME: TopBuild Corp CENTRAL INDEX KEY: 0001633931 STANDARD INDUSTRIAL CLASSIFICATION: CONSTRUCTION SPECIAL TRADE CONTRACTORS [1700] ORGANIZATION NAME: 05 Real Estate & Construction IRS NUMBER: 473096382 STATE OF INCORPORATION: DE FISCAL YEAR END: 1231 FILING VALUES: FORM TYPE: 10-Q SEC ACT: 1934 Act SEC FILE NUMBER: 001-36870 FILM NUMBER: 241179142 BUSINESS ADDRESS: STREET 1: 475 N. WILLIAMSON BLVD. CITY: DAYTONA BEACH STATE: FL ZIP: 32114 BUSINESS PHONE: (386) 304-2200 MAIL ADDRESS: STREET 1: 475 N. WILLIAMSON BLVD. CITY: DAYTONA BEACH STATE: FL ZIP: 32114 FORMER COMPANY: FORMER CONFORMED NAME: Masco SpinCo Corp. DATE OF NAME CHANGE: 20150213 10-Q 1 bld-20240630x10q.htm 10-Q
000001633931false--12-312024Q200016339312023-01-012023-12-310001633931bld:ShareRepurchaseProgram2022Member2022-07-252024-06-300001633931bld:ShareRepurchaseProgram2024Member2024-06-300001633931us-gaap:CommonStockMember2024-01-012024-03-310001633931us-gaap:CommonStockMember2024-04-012024-06-300001633931us-gaap:CommonStockMember2023-01-012023-03-310001633931us-gaap:TreasuryStockCommonMember2024-06-300001633931us-gaap:RetainedEarningsMember2024-06-300001633931us-gaap:CommonStockMember2024-06-300001633931us-gaap:AdditionalPaidInCapitalMember2024-06-300001633931us-gaap:AccumulatedOtherComprehensiveIncomeMember2024-06-300001633931us-gaap:TreasuryStockCommonMember2024-03-310001633931us-gaap:RetainedEarningsMember2024-03-310001633931us-gaap:CommonStockMember2024-03-310001633931us-gaap:AdditionalPaidInCapitalMember2024-03-310001633931us-gaap:AccumulatedOtherComprehensiveIncomeMember2024-03-3100016339312024-03-310001633931us-gaap:TreasuryStockCommonMember2023-12-310001633931us-gaap:RetainedEarningsMember2023-12-310001633931us-gaap:CommonStockMember2023-12-310001633931us-gaap:AdditionalPaidInCapitalMember2023-12-310001633931us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-12-310001633931us-gaap:TreasuryStockCommonMember2023-06-300001633931us-gaap:RetainedEarningsMember2023-06-300001633931us-gaap:CommonStockMember2023-06-300001633931us-gaap:AdditionalPaidInCapitalMember2023-06-300001633931us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-06-300001633931us-gaap:TreasuryStockCommonMember2023-03-310001633931us-gaap:RetainedEarningsMember2023-03-310001633931us-gaap:CommonStockMember2023-03-310001633931us-gaap:AdditionalPaidInCapitalMember2023-03-310001633931us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-03-3100016339312023-03-310001633931us-gaap:TreasuryStockCommonMember2022-12-310001633931us-gaap:RetainedEarningsMember2022-12-310001633931us-gaap:CommonStockMember2022-12-310001633931us-gaap:AdditionalPaidInCapitalMember2022-12-310001633931us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-12-310001633931us-gaap:EmployeeStockOptionMember2023-12-310001633931us-gaap:EmployeeStockOptionMember2024-06-300001633931bld:LongTermIncentivePlanMember2024-06-300001633931srt:MaximumMemberbld:LongTermIncentivePlanMember2024-06-300001633931us-gaap:RestrictedStockMember2023-12-310001633931us-gaap:OperatingSegmentsMemberbld:ResidentialMemberbld:InstallationSegmentMember2024-04-012024-06-300001633931us-gaap:OperatingSegmentsMemberbld:ResidentialMemberbld:DistributionSegmentMember2024-04-012024-06-300001633931us-gaap:OperatingSegmentsMemberbld:RainGuttersMemberbld:InstallationSegmentMember2024-04-012024-06-300001633931us-gaap:OperatingSegmentsMemberbld:RainGuttersMemberbld:DistributionSegmentMember2024-04-012024-06-300001633931us-gaap:OperatingSegmentsMemberbld:InsulationAndAccessoriesMemberbld:InstallationSegmentMember2024-04-012024-06-300001633931us-gaap:OperatingSegmentsMemberbld:InsulationAndAccessoriesMemberbld:DistributionSegmentMember2024-04-012024-06-300001633931us-gaap:OperatingSegmentsMemberbld:GlassAndWindowsMemberbld:InstallationSegmentMember2024-04-012024-06-300001633931us-gaap:OperatingSegmentsMemberbld:CommercialAndIndustrialMemberbld:InstallationSegmentMember2024-04-012024-06-300001633931us-gaap:OperatingSegmentsMemberbld:CommercialAndIndustrialMemberbld:DistributionSegmentMember2024-04-012024-06-300001633931us-gaap:OperatingSegmentsMemberbld:AllOtherProductsMemberbld:InstallationSegmentMember2024-04-012024-06-300001633931us-gaap:OperatingSegmentsMemberbld:AllOtherProductsMemberbld:DistributionSegmentMember2024-04-012024-06-300001633931bld:EliminationsAndReconcilingItemsMemberbld:ResidentialMember2024-04-012024-06-300001633931bld:EliminationsAndReconcilingItemsMemberbld:RainGuttersMember2024-04-012024-06-300001633931bld:EliminationsAndReconcilingItemsMemberbld:InsulationAndAccessoriesMember2024-04-012024-06-300001633931bld:EliminationsAndReconcilingItemsMemberbld:CommercialAndIndustrialMember2024-04-012024-06-300001633931bld:EliminationsAndReconcilingItemsMemberbld:AllOtherProductsMember2024-04-012024-06-300001633931bld:ResidentialMember2024-04-012024-06-300001633931bld:RainGuttersMember2024-04-012024-06-300001633931bld:InsulationAndAccessoriesMember2024-04-012024-06-300001633931bld:GlassAndWindowsMember2024-04-012024-06-300001633931bld:EliminationsAndReconcilingItemsMember2024-04-012024-06-300001633931bld:CommercialAndIndustrialMember2024-04-012024-06-300001633931bld:AllOtherProductsMember2024-04-012024-06-300001633931us-gaap:OperatingSegmentsMemberbld:ResidentialMemberbld:InstallationSegmentMember2024-01-012024-06-300001633931us-gaap:OperatingSegmentsMemberbld:ResidentialMemberbld:DistributionSegmentMember2024-01-012024-06-300001633931us-gaap:OperatingSegmentsMemberbld:RainGuttersMemberbld:InstallationSegmentMember2024-01-012024-06-300001633931us-gaap:OperatingSegmentsMemberbld:RainGuttersMemberbld:DistributionSegmentMember2024-01-012024-06-300001633931us-gaap:OperatingSegmentsMemberbld:InsulationAndAccessoriesMemberbld:InstallationSegmentMember2024-01-012024-06-300001633931us-gaap:OperatingSegmentsMemberbld:InsulationAndAccessoriesMemberbld:DistributionSegmentMember2024-01-012024-06-300001633931us-gaap:OperatingSegmentsMemberbld:GlassAndWindowsMemberbld:InstallationSegmentMember2024-01-012024-06-300001633931us-gaap:OperatingSegmentsMemberbld:CommercialAndIndustrialMemberbld:InstallationSegmentMember2024-01-012024-06-300001633931us-gaap:OperatingSegmentsMemberbld:CommercialAndIndustrialMemberbld:DistributionSegmentMember2024-01-012024-06-300001633931us-gaap:OperatingSegmentsMemberbld:AllOtherProductsMemberbld:InstallationSegmentMember2024-01-012024-06-300001633931us-gaap:OperatingSegmentsMemberbld:AllOtherProductsMemberbld:DistributionSegmentMember2024-01-012024-06-300001633931bld:EliminationsAndReconcilingItemsMemberbld:ResidentialMember2024-01-012024-06-300001633931bld:EliminationsAndReconcilingItemsMemberbld:RainGuttersMember2024-01-012024-06-300001633931bld:EliminationsAndReconcilingItemsMemberbld:InsulationAndAccessoriesMember2024-01-012024-06-300001633931bld:EliminationsAndReconcilingItemsMemberbld:CommercialAndIndustrialMember2024-01-012024-06-300001633931bld:EliminationsAndReconcilingItemsMemberbld:AllOtherProductsMember2024-01-012024-06-300001633931bld:ResidentialMember2024-01-012024-06-300001633931bld:RainGuttersMember2024-01-012024-06-300001633931bld:InsulationAndAccessoriesMember2024-01-012024-06-300001633931bld:GlassAndWindowsMember2024-01-012024-06-300001633931bld:EliminationsAndReconcilingItemsMember2024-01-012024-06-300001633931bld:CommercialAndIndustrialMember2024-01-012024-06-300001633931bld:AllOtherProductsMember2024-01-012024-06-300001633931us-gaap:OperatingSegmentsMemberbld:ResidentialMemberbld:InstallationSegmentMember2023-04-012023-06-300001633931us-gaap:OperatingSegmentsMemberbld:ResidentialMemberbld:DistributionSegmentMember2023-04-012023-06-300001633931us-gaap:OperatingSegmentsMemberbld:RainGuttersMemberbld:InstallationSegmentMember2023-04-012023-06-300001633931us-gaap:OperatingSegmentsMemberbld:RainGuttersMemberbld:DistributionSegmentMember2023-04-012023-06-300001633931us-gaap:OperatingSegmentsMemberbld:InsulationAndAccessoriesMemberbld:InstallationSegmentMember2023-04-012023-06-300001633931us-gaap:OperatingSegmentsMemberbld:InsulationAndAccessoriesMemberbld:DistributionSegmentMember2023-04-012023-06-300001633931us-gaap:OperatingSegmentsMemberbld:GlassAndWindowsMemberbld:InstallationSegmentMember2023-04-012023-06-300001633931us-gaap:OperatingSegmentsMemberbld:CommercialAndIndustrialMemberbld:InstallationSegmentMember2023-04-012023-06-300001633931us-gaap:OperatingSegmentsMemberbld:CommercialAndIndustrialMemberbld:DistributionSegmentMember2023-04-012023-06-300001633931us-gaap:OperatingSegmentsMemberbld:AllOtherProductsMemberbld:InstallationSegmentMember2023-04-012023-06-300001633931us-gaap:OperatingSegmentsMemberbld:AllOtherProductsMemberbld:DistributionSegmentMember2023-04-012023-06-300001633931bld:EliminationsAndReconcilingItemsMemberbld:ResidentialMember2023-04-012023-06-300001633931bld:EliminationsAndReconcilingItemsMemberbld:RainGuttersMember2023-04-012023-06-300001633931bld:EliminationsAndReconcilingItemsMemberbld:InsulationAndAccessoriesMember2023-04-012023-06-300001633931bld:EliminationsAndReconcilingItemsMemberbld:CommercialAndIndustrialMember2023-04-012023-06-300001633931bld:EliminationsAndReconcilingItemsMemberbld:AllOtherProductsMember2023-04-012023-06-300001633931bld:ResidentialMember2023-04-012023-06-300001633931bld:RainGuttersMember2023-04-012023-06-300001633931bld:InsulationAndAccessoriesMember2023-04-012023-06-300001633931bld:GlassAndWindowsMember2023-04-012023-06-300001633931bld:EliminationsAndReconcilingItemsMember2023-04-012023-06-300001633931bld:CommercialAndIndustrialMember2023-04-012023-06-300001633931bld:AllOtherProductsMember2023-04-012023-06-300001633931us-gaap:OperatingSegmentsMemberbld:ResidentialMemberbld:InstallationSegmentMember2023-01-012023-06-300001633931us-gaap:OperatingSegmentsMemberbld:ResidentialMemberbld:DistributionSegmentMember2023-01-012023-06-300001633931us-gaap:OperatingSegmentsMemberbld:RainGuttersMemberbld:InstallationSegmentMember2023-01-012023-06-300001633931us-gaap:OperatingSegmentsMemberbld:RainGuttersMemberbld:DistributionSegmentMember2023-01-012023-06-300001633931us-gaap:OperatingSegmentsMemberbld:InsulationAndAccessoriesMemberbld:InstallationSegmentMember2023-01-012023-06-300001633931us-gaap:OperatingSegmentsMemberbld:InsulationAndAccessoriesMemberbld:DistributionSegmentMember2023-01-012023-06-300001633931us-gaap:OperatingSegmentsMemberbld:GlassAndWindowsMemberbld:InstallationSegmentMember2023-01-012023-06-300001633931us-gaap:OperatingSegmentsMemberbld:CommercialAndIndustrialMemberbld:InstallationSegmentMember2023-01-012023-06-300001633931us-gaap:OperatingSegmentsMemberbld:CommercialAndIndustrialMemberbld:DistributionSegmentMember2023-01-012023-06-300001633931us-gaap:OperatingSegmentsMemberbld:AllOtherProductsMemberbld:InstallationSegmentMember2023-01-012023-06-300001633931us-gaap:OperatingSegmentsMemberbld:AllOtherProductsMemberbld:DistributionSegmentMember2023-01-012023-06-300001633931bld:EliminationsAndReconcilingItemsMemberbld:ResidentialMember2023-01-012023-06-300001633931bld:EliminationsAndReconcilingItemsMemberbld:RainGuttersMember2023-01-012023-06-300001633931bld:EliminationsAndReconcilingItemsMemberbld:InsulationAndAccessoriesMember2023-01-012023-06-300001633931bld:EliminationsAndReconcilingItemsMemberbld:CommercialAndIndustrialMember2023-01-012023-06-300001633931bld:EliminationsAndReconcilingItemsMemberbld:AllOtherProductsMember2023-01-012023-06-300001633931bld:ResidentialMember2023-01-012023-06-300001633931bld:RainGuttersMember2023-01-012023-06-300001633931bld:InsulationAndAccessoriesMember2023-01-012023-06-300001633931bld:GlassAndWindowsMember2023-01-012023-06-300001633931bld:EliminationsAndReconcilingItemsMember2023-01-012023-06-300001633931bld:CommercialAndIndustrialMember2023-01-012023-06-300001633931bld:AllOtherProductsMember2023-01-012023-06-300001633931us-gaap:AccumulatedOtherComprehensiveIncomeMember2024-04-012024-06-300001633931us-gaap:AccumulatedOtherComprehensiveIncomeMember2024-01-012024-03-310001633931us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-04-012023-06-300001633931us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-01-012023-03-310001633931us-gaap:OperatingSegmentsMemberbld:InstallationSegmentMember2024-04-012024-06-300001633931us-gaap:OperatingSegmentsMemberbld:DistributionSegmentMember2024-04-012024-06-300001633931us-gaap:OperatingSegmentsMember2024-04-012024-06-300001633931us-gaap:IntersegmentEliminationMember2024-04-012024-06-300001633931us-gaap:OperatingSegmentsMemberbld:InstallationSegmentMember2024-01-012024-06-300001633931us-gaap:OperatingSegmentsMemberbld:DistributionSegmentMember2024-01-012024-06-300001633931us-gaap:OperatingSegmentsMember2024-01-012024-06-300001633931us-gaap:IntersegmentEliminationMember2024-01-012024-06-300001633931us-gaap:OperatingSegmentsMemberbld:InstallationSegmentMember2023-04-012023-06-300001633931us-gaap:OperatingSegmentsMemberbld:DistributionSegmentMember2023-04-012023-06-300001633931us-gaap:OperatingSegmentsMember2023-04-012023-06-300001633931us-gaap:IntersegmentEliminationMember2023-04-012023-06-300001633931us-gaap:OperatingSegmentsMemberbld:InstallationSegmentMember2023-01-012023-06-300001633931us-gaap:OperatingSegmentsMemberbld:DistributionSegmentMember2023-01-012023-06-300001633931us-gaap:OperatingSegmentsMember2023-01-012023-06-300001633931us-gaap:IntersegmentEliminationMember2023-01-012023-06-300001633931us-gaap:CorporateNonSegmentMember2024-04-012024-06-300001633931us-gaap:CorporateNonSegmentMember2024-01-012024-06-300001633931us-gaap:CorporateNonSegmentMember2023-04-012023-06-300001633931us-gaap:CorporateNonSegmentMember2023-01-012023-06-300001633931us-gaap:RetainedEarningsMember2024-04-012024-06-300001633931us-gaap:RetainedEarningsMember2024-01-012024-03-310001633931us-gaap:RetainedEarningsMember2023-04-012023-06-300001633931us-gaap:RetainedEarningsMember2023-01-012023-03-310001633931srt:MinimumMemberus-gaap:RevolvingCreditFacilityMember2024-01-012024-06-300001633931srt:MaximumMemberus-gaap:RevolvingCreditFacilityMember2024-01-012024-06-300001633931bld:AmendmentNo.4ToCreditAgreementMemberus-gaap:SecuredDebtMember2024-06-300001633931bld:AmendmentNo.4ToCreditAgreementMemberbld:DelayedDrawTermLoanFacilityTwoMember2023-07-260001633931us-gaap:RevolvingCreditFacilityMember2024-06-300001633931us-gaap:RevolvingCreditFacilityMember2023-12-310001633931bld:InstallationSegmentMember2024-01-012024-06-3000016339312023-10-012023-12-310001633931bld:InstallationSegmentMember2023-12-310001633931bld:DistributionSegmentMember2023-12-310001633931bld:DistributionSegmentMember2024-01-012024-06-300001633931bld:InstallationSegmentMember2024-06-300001633931bld:DistributionSegmentMember2024-06-300001633931us-gaap:RestrictedStockMember2024-06-300001633931bld:EquipmentNotesMember2024-01-012024-06-300001633931bld:SeniorNotesDue2032Memberus-gaap:DebtInstrumentRedemptionPeriodTwoMember2024-01-012024-06-300001633931bld:SeniorNotesDue2032Memberus-gaap:DebtInstrumentRedemptionPeriodThreeMember2024-01-012024-06-300001633931bld:SeniorNotesDue2032Memberus-gaap:DebtInstrumentRedemptionPeriodFourMember2024-01-012024-06-300001633931bld:SeniorNotesDue2032Memberus-gaap:DebtInstrumentRedemptionPeriodFiveMember2024-01-012024-06-300001633931bld:ChangeInControlScenarioMemberbld:SeniorNotesDue2032Member2024-01-012024-06-300001633931bld:ChangeInControlScenarioMemberbld:SeniorNotesDue2029Member2024-01-012024-06-300001633931bld:AmendmentNo.4ToCreditAgreementMember2024-01-012024-06-300001633931srt:MinimumMemberbld:EquipmentNotesMember2024-06-300001633931srt:MaximumMemberbld:EquipmentNotesMember2024-06-300001633931bld:AmendmentNo.4ToCreditAgreementMember2024-06-300001633931bld:SeniorNotesDue2032Memberus-gaap:FairValueInputsLevel1Memberus-gaap:FairValueMeasurementsNonrecurringMember2024-06-300001633931bld:SeniorNotesDue2029Memberus-gaap:FairValueInputsLevel1Memberus-gaap:FairValueMeasurementsNonrecurringMember2024-06-300001633931us-gaap:SecuredDebtMember2024-06-300001633931bld:SeniorNotesDue2032Member2024-06-300001633931bld:SeniorNotesDue2029Member2024-06-300001633931bld:EquipmentNotesMember2024-06-300001633931us-gaap:SecuredDebtMember2023-12-310001633931bld:SeniorNotesDue2032Member2023-12-310001633931bld:SeniorNotesDue2029Member2023-12-310001633931bld:EquipmentNotesMember2023-12-310001633931bld:BaseRateBorrowingsMemberbld:AmendmentNo.4ToCreditAgreementMemberbld:DelayedDrawTermLoanFacilityOneMemberus-gaap:SecuredOvernightFinancingRateSofrMember2024-01-012024-06-300001633931bld:BaseRateBorrowingsMemberbld:AmendmentNo.4ToCreditAgreementMemberbld:FederalFundsRateMember2024-01-012024-06-300001633931us-gaap:AccruedLiabilitiesMember2024-06-300001633931us-gaap:AccruedLiabilitiesMember2023-12-310001633931bld:ReceivablesNetMember2024-06-300001633931bld:ReceivablesNetMember2023-12-3100016339312022-12-310001633931bld:Acquisitions2024Memberus-gaap:CustomerRelationshipsMember2024-06-300001633931bld:TexasInsulationMember2024-05-312024-05-310001633931bld:InsulationWorksIncMember2024-05-162024-05-160001633931bld:GreenSpaceMember2024-04-182024-04-180001633931bld:MorrisBlackMember2024-03-012024-03-010001633931bld:CommercialInsulationBusinessPciMember2024-03-012024-03-010001633931bld:BrabbleMember2024-02-152024-02-150001633931bld:SriHoldingsMember2023-01-012023-06-300001633931bld:SpiMember2024-04-012024-06-3000016339312023-06-300001633931us-gaap:EmployeeStockOptionMember2023-04-012023-06-300001633931bld:VestingBasedOnServiceMemberus-gaap:RestrictedStockMember2023-01-012023-06-300001633931bld:VestingBasedOnMarketConditionsMemberus-gaap:RestrictedStockMember2023-01-012023-06-300001633931us-gaap:EmployeeStockOptionMember2023-01-012023-06-300001633931us-gaap:AdditionalPaidInCapitalMember2024-04-012024-06-300001633931us-gaap:AdditionalPaidInCapitalMember2024-01-012024-03-310001633931us-gaap:AdditionalPaidInCapitalMember2023-04-012023-06-300001633931us-gaap:AdditionalPaidInCapitalMember2023-01-012023-03-310001633931us-gaap:TreasuryStockCommonMember2024-01-012024-03-3100016339312024-01-012024-03-310001633931us-gaap:TreasuryStockCommonMember2023-01-012023-03-3100016339312023-01-012023-03-310001633931bld:Acquisitions2024Memberus-gaap:CustomerRelationshipsMember2024-01-012024-06-300001633931bld:ShareRepurchaseProgram2024Member2024-05-030001633931bld:ShareRepurchaseProgram2022Member2022-07-2500016339312024-07-310001633931us-gaap:TreasuryStockCommonMember2024-04-012024-06-300001633931bld:ShareRepurchaseProgram2022Member2024-04-012024-06-300001633931bld:ShareBasedCompensationArrangementByShareBasedPaymentAwardPayoutRangeTwoMemberbld:VestingBasedOnPerformanceMemberus-gaap:RestrictedStockMember2024-02-210001633931bld:ShareBasedCompensationArrangementByShareBasedPaymentAwardPayoutRangeThreeMemberbld:VestingBasedOnPerformanceMemberus-gaap:RestrictedStockMember2024-02-210001633931bld:ShareBasedCompensationArrangementByShareBasedPaymentAwardPayoutRangeOneMemberbld:VestingBasedOnPerformanceMemberus-gaap:RestrictedStockMember2024-02-210001633931bld:ShareBasedCompensationArrangementByShareBasedPaymentAwardPayoutRangeFourMemberbld:VestingBasedOnPerformanceMemberus-gaap:RestrictedStockMember2024-02-210001633931bld:ShareBasedCompensationArrangementByShareBasedPaymentAwardPayoutRangeTwoMemberbld:VestingBasedOnPerformanceMemberus-gaap:RestrictedStockMember2023-02-210001633931bld:ShareBasedCompensationArrangementByShareBasedPaymentAwardPayoutRangeThreeMemberbld:VestingBasedOnPerformanceMemberus-gaap:RestrictedStockMember2023-02-210001633931bld:ShareBasedCompensationArrangementByShareBasedPaymentAwardPayoutRangeOneMemberbld:VestingBasedOnPerformanceMemberus-gaap:RestrictedStockMember2023-02-210001633931bld:ShareBasedCompensationArrangementByShareBasedPaymentAwardPayoutRangeFourMemberbld:VestingBasedOnPerformanceMemberus-gaap:RestrictedStockMember2023-02-210001633931bld:ShareBasedCompensationArrangementByShareBasedPaymentAwardPayoutRangeTwoMemberbld:VestingBasedOnPerformanceMemberus-gaap:RestrictedStockMember2022-02-150001633931bld:ShareBasedCompensationArrangementByShareBasedPaymentAwardPayoutRangeThreeMemberbld:VestingBasedOnPerformanceMemberus-gaap:RestrictedStockMember2022-02-150001633931bld:ShareBasedCompensationArrangementByShareBasedPaymentAwardPayoutRangeOneMemberbld:VestingBasedOnPerformanceMemberus-gaap:RestrictedStockMember2022-02-150001633931bld:ShareBasedCompensationArrangementByShareBasedPaymentAwardPayoutRangeFourMemberbld:VestingBasedOnPerformanceMemberus-gaap:RestrictedStockMember2022-02-150001633931bld:VestingBasedOnPerformanceMemberus-gaap:RestrictedStockMember2024-02-212024-02-210001633931bld:VestingBasedOnPerformanceMemberus-gaap:RestrictedStockMember2023-02-212023-02-210001633931bld:VestingBasedOnPerformanceMemberus-gaap:RestrictedStockMember2022-02-152022-02-150001633931bld:VestingBasedOnPerformanceMemberbld:RestrictedStockAwardsGrantedFebruary2021Member2024-01-012024-03-310001633931us-gaap:EmployeeStockOptionMember2024-01-012024-06-300001633931us-gaap:RestrictedStockMember2023-01-012023-06-300001633931us-gaap:RestrictedStockMember2022-01-012022-06-300001633931us-gaap:RestrictedStockMember2024-01-012024-06-300001633931bld:VestingBasedOnPerformanceMemberus-gaap:RestrictedStockMember2024-01-012024-06-300001633931bld:EventOfDefaultScenarioMemberus-gaap:SeniorNotesMember2024-01-012024-06-300001633931bld:SeniorNotesDue2032Member2024-06-300001633931bld:SeniorNotesDue2029Member2024-06-300001633931bld:AmendmentNo.4ToCreditAgreementMemberus-gaap:RevolvingCreditFacilityMember2024-06-3000016339312024-04-012024-06-3000016339312023-04-012023-06-3000016339312023-01-012023-06-300001633931bld:VestingBasedOnServiceMember2024-04-012024-06-300001633931bld:VestingBasedOnPerformanceMember2024-04-012024-06-300001633931bld:VestingBasedOnMarketConditionsMember2024-04-012024-06-300001633931bld:VestingBasedOnServiceMember2024-01-012024-06-300001633931bld:VestingBasedOnPerformanceMember2024-01-012024-06-300001633931bld:VestingBasedOnMarketConditionsMember2024-01-012024-06-300001633931bld:VestingBasedOnServiceMember2023-04-012023-06-300001633931bld:VestingBasedOnPerformanceMember2023-04-012023-06-300001633931bld:VestingBasedOnMarketConditionsMember2023-04-012023-06-300001633931bld:VestingBasedOnServiceMember2023-01-012023-06-300001633931bld:VestingBasedOnPerformanceMember2023-01-012023-06-300001633931bld:VestingBasedOnMarketConditionsMember2023-01-012023-06-300001633931bld:BaseRateBorrowingsMemberbld:AmendmentNo.4ToCreditAgreementMemberus-gaap:SecuredOvernightFinancingRateSofrMember2024-01-012024-06-300001633931bld:SeniorNotesDue2032Memberbld:DebtInstrumentRedemptionPeriodSixMember2024-01-012024-06-300001633931bld:SofrRateBorrowingsMemberbld:AmendmentNo.4ToCreditAgreementMember2024-01-012024-06-300001633931bld:SeniorNotesDue2032Memberbld:DebtInstrumentRedemptionPeriodSevenMember2024-01-012024-06-300001633931srt:MinimumMemberbld:SofrRateBorrowingsMemberbld:AmendmentNo.4ToCreditAgreementMemberbld:DelayedDrawTermLoanFacilityOneMember2024-01-012024-06-300001633931srt:MinimumMemberbld:BaseRateBorrowingsMemberbld:AmendmentNo.4ToCreditAgreementMemberbld:DelayedDrawTermLoanFacilityOneMember2024-01-012024-06-300001633931srt:MaximumMemberbld:SofrRateBorrowingsMemberbld:AmendmentNo.4ToCreditAgreementMemberbld:DelayedDrawTermLoanFacilityOneMember2024-01-012024-06-300001633931srt:MaximumMemberbld:BaseRateBorrowingsMemberbld:AmendmentNo.4ToCreditAgreementMemberbld:DelayedDrawTermLoanFacilityOneMember2024-01-012024-06-3000016339312024-01-012024-06-3000016339312024-06-3000016339312023-12-31iso4217:USDxbrli:purexbrli:sharesiso4217:USDxbrli:sharesbld:segmentbld:item

UNITED STATES

SECURITIES AND EXCHANGE

COMMISSION

WASHINGTON, D.C. 20549

FORM 10-Q

(Mark One)

QUARTERLY REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934

For the quarterly period June 30, 2024

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-36870

TopBuild Corp.

(Exact name of Registrant as Specified in its Charter)

Delaware

(State or Other Jurisdiction of Incorporation or
Organization)

47-3096382

(I.R.S. Employer
Identification No.)

475 North Williamson Boulevard

Daytona Beach, Florida

(Address of Principal Executive Offices)

32114

(Zip Code)

(386) 304-2200

(Registrant's telephone number, including area code)

Securities registered pursuant to Section 12(b) of the Act:

Title of each class

Trading Symbol(s)

Name of each exchange on which registered

Common stock, par value $0.01 per share

BLD

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 (§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 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

The registrant had outstanding 30,166,212 shares of Common Stock, par value $0.01 per share as of July 31, 2024.

TOPBUILD CORP.

TABLE OF CONTENTS

Page No.

Part I.

Financial Information

Item 1.

Financial Statements (Unaudited)

Condensed Consolidated Balance Sheets

4

Condensed Consolidated Statements of Operations

5

Condensed Consolidated Statements of Comprehensive Income

6

Condensed Consolidated Statements of Cash Flows

7

Condensed Consolidated Statements of Changes in Equity

8

Notes to Condensed Consolidated Financial Statements

9

Item 2.

Management's Discussion and Analysis of Financial Condition and Results of Operations

21

Item 3.

Quantitative and Qualitative Disclosures About Market Risk

29

Item 4.

Controls and Procedures

29

Part II.

Other Information

Item 1.

Legal Proceedings

29

Item 1A.

Risk Factors

29

Item 2.

Unregistered Sales of Equity Securities and Use of Proceeds

30

Item 3.

Defaults upon Senior Securities

30

Item 4.

Mine Safety Disclosures

30

Item 5.

Other Information

30

Item 6.

Exhibits

30

Index to Exhibits

31

Signature

32

2

GLOSSARY

We use acronyms, abbreviations, and other defined terms throughout this Quarterly Report, which are defined in the glossary below:

Term

Definition

3.625% Senior Notes

TopBuild's 3.625% senior unsecured notes issued March 15, 2021 and due March 15, 2029

4.125% Senior Notes

TopBuild's 4.125% senior unsecured notes issued October 14, 2021 and due February 15, 2032

2015 LTIP

2015 Long-Term Incentive Program authorizes the Board to grant stock options, stock appreciation rights, restricted shares, restricted share units, performance awards, and dividend equivalents

2022 Repurchase Program

$200 million share repurchase program authorized by the Board on July 25, 2022

2024 Repurchase Program

$1 billion share repurchase program authorized by the Board on May 3, 2024

Amendment No. 4

Amendment No. 4 to the Credit Agreement dated July 26, 2023

Annual Report

Annual report filed with the SEC on Form 10-K pursuant to Section 13 or 15(d) of the Securities Exchange Act of 1934

ASC

Accounting Standards Codification

ASU

Accounting Standards Update

Board

Board of Directors of TopBuild

BofA

Bank of America, N.A.

Brabble

Brabble Insulation, Inc.

Credit Agreement

Amended and Restated Credit Agreement, dated March 20, 2020, among TopBuild, BofA as administrative agent, and the other lenders and agents party thereto

Current Report

Current report filed with the SEC on Form 8-K pursuant to Section 13 or 15(d) of the Securities Exchange Act of 1934

EBITDA

Earnings before interest, taxes, depreciation, and amortization

Exchange Act

The Securities Exchange Act of 1934, as amended

FASB

Financial Accounting Standards Board

Green Space

Nate’s Insulation, LLC d/b/a Green Space Insulation

GAAP

Generally accepted accounting principles in the United States of America

Insulation Works

Insulation Works, Inc.

Lenders

Bank of America, N.A., together with the other lenders party to "Credit Agreement"

Morris Black

Morris Black & Sons, Inc.

Net Leverage Ratio

As defined in the “Credit Agreement,” the ratio of outstanding indebtedness, less up to $100 million of unrestricted cash, to EBITDA

NYSE

New York Stock Exchange

PCI

Pest Control Insulation, LLC

Quarterly Report

Quarterly report filed with the SEC on Form 10-Q pursuant to Section 13 or 15(d) of the Securities Exchange Act of 1934

ROU

Right of use (asset), as defined in ASC 842

RSA

Restricted stock award

SEC

United States Securities and Exchange Commission

Secured Leverage Ratio

As defined in the “Credit Agreement,” the ratio of outstanding indebtedness, including letters of credit, to EBITDA

SOFR

Secured overnight financing rate

SPI

SPI LLC d/b/a Specialty Products & Insulation

SRI

SRI Holdings, LLC

Term Loan

TopBuild's secured borrowings under the "Credit Agreement" due October 7, 2026

Term Facility Two

$550 million delayed draw term loan intended to be used to fund the acquisition of SPI and was terminated in the second quarter of 2024

Texas Insulation

EOAKIS, LLC, d/b/a Texas Insulation

TopBuild

TopBuild Corp. and its wholly-owned consolidated domestic subsidiaries

3

PART I – FINANCIAL INFORMATION

Item 1. FINANCIAL STATEMENTS

TOPBUILD CORP.

CONDENSED CONSOLIDATED BALANCE SHEETS (Unaudited)

(In thousands except share data)

As of

June 30, 

December 31, 

2024

2023

ASSETS

Current assets:

Cash and cash equivalents

$

463,221

$

848,565

Receivables, net of an allowance for credit losses of $22,718 at June 30, 2024, and $23,948 at December 31, 2023

859,725

 

799,009

Inventories

393,810

 

364,731

Prepaid expenses and other current assets

43,550

 

36,939

Total current assets

1,760,306

 

2,049,244

Right of use assets

191,048

204,629

Property and equipment, net

267,523

 

264,487

Goodwill

2,090,788

 

2,042,568

Other intangible assets, net

583,141

 

591,058

Other assets

10,187

 

10,865

Total assets

$

4,902,993

$

5,162,851

LIABILITIES AND EQUITY

Current liabilities:

Accounts payable

$

461,139

$

469,585

Current portion of long-term debt

45,665

47,039

Accrued liabilities

176,753

187,217

Short-term operating lease liabilities

66,953

65,780

Short-term finance lease liabilities

1,739

1,917

Total current liabilities

752,249

771,538

Long-term debt

1,351,969

1,373,028

Deferred tax liabilities, net

243,790

243,930

Long-term portion of insurance reserves

60,402

58,783

Long-term operating lease liabilities

132,529

146,213

Long-term finance lease liabilities

3,318

4,150

Other liabilities

1,422

1,554

Total liabilities

2,545,679

2,599,196

Commitments and contingencies

Equity:

Preferred stock, $0.01 par value: 10,000,000 shares authorized; 0 shares issued and outstanding

-

-

Common stock, $0.01 par value: 250,000,000 shares authorized; 39,561,321 shares issued and 30,584,176 outstanding at June 30, 2024, and 39,492,037 shares issued and 31,776,039 outstanding at December 31, 2023

396

394

Treasury stock, 8,977,145 shares at June 30, 2024, and 7,715,998 shares at December 31, 2023, at cost

(1,215,829)

(699,327)

Additional paid-in capital

919,317

906,334

Retained earnings

2,674,023

2,370,919

Accumulated other comprehensive loss

(20,593)

(14,665)

Total equity

2,357,314

2,563,655

Total liabilities and equity

$

4,902,993

$

5,162,851

See notes to our unaudited condensed consolidated financial statements.

4

TOPBUILD CORP.

CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS (Unaudited)

(In thousands except share and per common share data)

Three Months Ended June 30, 

Six Months Ended June 30, 

2024

2023

2024

2023

Net sales

$

1,365,612

    

$

1,317,262

    

$

2,644,329

    

$

2,582,500

Cost of sales

941,690

895,462

1,833,257

1,790,485

Gross profit

423,922

421,800

811,072

792,015

Selling, general, and administrative expense

213,530

184,697

386,172

355,481

Operating profit

210,392

237,103

424,900

436,534

Other income (expense), net:

Interest expense

(18,568)

(18,558)

(37,363)

(36,597)

Other, net

11,350

4,605

22,632

6,528

Other expense, net

(7,218)

(13,953)

(14,731)

(30,069)

Income before income taxes

203,174

223,150

410,169

406,465

Income tax expense

(52,451)

(58,750)

(107,065)

(106,195)

Net income

$

150,723

$

164,400

$

303,104

$

300,270

Net income per common share:

Basic

$

4.81

$

5.20

$

9.63

$

9.51

Diluted

$

4.78

$

5.18

$

9.56

$

9.47

 

Weighted average shares outstanding:

Basic

31,324,833

31,599,744

31,483,144

31,575,337

Diluted

31,524,063

31,731,807

31,693,524

31,722,660

See notes to our unaudited condensed consolidated financial statements.

5

TOPBUILD CORP.

CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (Unaudited)

(In thousands)

Three Months Ended June 30, 

Six Months Ended June 30, 

2024

2023

2024

2023

Net income

$

150,723

$

164,400

$

303,104

$

300,270

Other comprehensive (loss) income:

Foreign currency translation adjustment

(1,836)

4,283

(5,928)

6,037

Comprehensive income

$

148,887

$

168,683

$

297,176

$

306,307

See notes to our unaudited condensed consolidated financial statements.

6

TOPBUILD CORP.

CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS (Unaudited)

(In thousands)

Six Months Ended June 30, 

2024

2023

Cash Flows Provided by (Used in) Operating Activities:

    

    

Net income

$

303,104

$

300,270

Adjustments to reconcile net income to net cash provided by operating activities:

Depreciation and amortization

69,291

64,652

Share-based compensation

9,759

6,886

(Gain)/loss on sale of assets

(131)

621

Amortization of debt issuance costs

1,440

1,440

Provision for bad debt expense

9,874

4,031

Provision for inventory obsolescence

4,892

3,290

Change in certain assets and liabilities:

Receivables, net

(58,411)

(37,247)

Inventories

(30,758)

54,623

Prepaid expenses and other current assets

(6,595)

8,897

Accounts payable

(17,480)

(8,806)

Accrued liabilities

(13,348)

(13,872)

Other, net

(2,509)

1,012

Net cash provided by operating activities

269,128

385,797

Cash Flows Provided by (Used in) Investing Activities:

Purchases of property and equipment

(35,974)

(30,672)

Acquisition of businesses, net of cash acquired

(88,123)

(45,948)

Proceeds from sale of assets

2,150

782

Net cash used in investing activities

(121,947)

(75,838)

Cash Flows Provided by (Used in) Financing Activities:

Repayment of long-term debt

(23,873)

(18,829)

Taxes withheld and paid on employees' equity awards

(6,059)

(6,350)

Exercise of stock options

3,224

1,497

Repurchase of shares of common stock

(505,241)

Payment of contingent consideration

(300)

Net cash used in financing activities

(531,949)

(23,982)

Impact of exchange rate changes on cash

(576)

281

Net (decrease) increase in cash and cash equivalents

(385,344)

286,258

Cash and cash equivalents - Beginning of period

 

848,565

 

240,069

Cash and cash equivalents - End of period

$

463,221

$

526,327

Supplemental disclosure of noncash activities:

Leased assets obtained in exchange for new operating lease liabilities

$

20,180

$

26,310

Accruals for property and equipment

277

1,449

Excise taxes capitalized to treasury stock

5,202

See notes to our unaudited condensed consolidated financial statements.

7

TOPBUILD CORP.

CONDENSED CONSOLIDATED STATEMENTS OF CHANGES IN EQUITY (Unaudited)

(In thousands except share data)

Accumulated

Common

Treasury

Additional

Other

Stock

Stock

Paid-in

Retained

Comprehensive

($0.01 par value)

at cost

Capital

Earnings

(Loss) Income

Equity

Balance at December 31, 2022

$

393

$

(692,799)

$

887,367

$

1,756,665

$

(21,920)

$

1,929,706

Net income

-

-

-

135,870

-

135,870

Share-based compensation

-

-

3,135

-

-

3,135

Issuance of 95,012 restricted share awards under long-term equity incentive plan

2

-

-

-

-

2

32,594 shares withheld to pay taxes on employees' equity awards

-

(6,350)

-

-

-

(6,350)

28,840 shares issued upon exercise of stock options

-

-

1,028

-

-

1,028

Other comprehensive income, net of tax

-

-

-

-

1,753

1,753

Balance at March 31, 2023

$

395

$

(699,149)

$

891,530

$

1,892,535

$

(20,167)

$

2,065,144

Net income

-

-

-

164,400

-

164,400

Share-based compensation

-

-

3,751

-

-

3,751

Issuance of 18,768 restricted share awards under long-term equity incentive plan

-

-

-

-

-

-

4,762 shares issued upon exercise of stock options

-

-

468

-

-

468

Other comprehensive income, net of tax

-

-

-

-

4,283

4,283

Balance at June 30, 2023

$

395

$

(699,149)

$

895,749

$

2,056,935

$

(15,884)

$

2,238,046

Accumulated

Common

Treasury

Additional

Other

Stock

Stock

Paid-in

Retained

Comprehensive

($0.01 par value)

at cost

Capital

Earnings

(Loss) Income

Equity

Balance at December 31, 2023

$

394

$

(699,327)

$

906,334

$

2,370,919

$

(14,665)

$

2,563,655

Net income

-

-

-

152,381

-

152,381

Share-based compensation

-

-

5,127

-

-

5,127

Issuance of 51,236 restricted share awards under long-term equity incentive plan, net of forfeitures

1

-

-

-

-

1

14,965 shares withheld to pay taxes on employees' equity awards

-

(6,059)

-

-

-

(6,059)

5,757 shares issued upon exercise of stock options

-

-

1,020

-

-

1,020

Other comprehensive loss, net of tax

-

-

-

-

(4,092)

(4,092)

Balance at March 31, 2024

$

395

$

(705,386)

$

912,481

$

2,523,300

$

(18,757)

$

2,712,033

Net income

-

150,723

150,723

Share-based compensation

-

-

4,632

-

-

4,632

Issuance of 2,022 restricted share awards under long-term equity incentive plan, net of forfeitures

1

-

-

-

1

Repurchase of 1,246,182 shares pursuant to 2022 and 2024 Repurchase Programs

-

(510,443)

-

-

-

(510,443)

10,269 shares issued upon exercise of stock options

-

-

2,204

-

-

2,204

Other comprehensive loss, net of tax

-

-

-

-

(1,836)

(1,836)

Balance at June 30, 2024

$

396

$

(1,215,829)

$

919,317

$

2,674,023

$

(20,593)

$

2,357,314

See notes to our unaudited condensed consolidated financial statements.

8

Table of Contents

TOPBUILD CORP.

NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS

1.  BASIS OF PRESENTATION

TopBuild is listed on the NYSE under the ticker symbol “BLD.” We report our business in two segments: Installation and Specialty Distribution. Our Installation segment primarily installs insulation and other building products. Our Specialty Distribution segment primarily sells and distributes insulation and other building products. Our segments are based on our operating units, for which financial information is regularly evaluated by our chief operating decision maker.

We believe the accompanying unaudited condensed consolidated financial statements contain all adjustments, of a normal recurring nature, necessary to state fairly our financial position as of June 30, 2024, our results of operations and comprehensive income for the three and six months ended June 30, 2024 and 2023, and our cash flows for the six months ended June 30, 2024 and 2023. The condensed consolidated balance sheet at December 31, 2023 was derived from our audited financial statements, but does not include all disclosures required by GAAP.

These condensed consolidated financial statements and related notes should be read in conjunction with the audited Consolidated Financial Statements included in the Company’s Annual report for the year ended December 31, 2023, as filed with the SEC on February 28, 2024.

2.  ACCOUNTING POLICIES

Financial Statement Presentation. Our condensed consolidated financial statements have been developed in conformity with GAAP, which requires management to make estimates and assumptions. These estimates and assumptions affect the reported amounts of assets and liabilities and disclosures of contingent liabilities at the date of the financial statements, as well as the reported amounts of revenues and expenses during the reporting periods. Actual results could differ materially from these estimates. All intercompany transactions between TopBuild entities have been eliminated.

Recently Issued Accounting Pronouncements Not Yet Adopted

In November 2023, the FASB issued ASU 2023-07, “Segment Reporting (Topic 280), Improvements to Reportable Segment Disclosures”. This standard amends Topic 280 to require all entities to disclose, on an annual and interim basis, significant segment expenses and an amount for other segment items by reportable segment. This standard is effective for fiscal years beginning after December 15, 2023, and interim periods within fiscal years beginning after December 15, 2024, with early adoption permitted. We do not anticipate that this standard will affect our consolidated results of operations, financial position or cash flows and we are assessing the impact of adoption in our disclosures to the consolidated financial statements.

In December 2023, the FASB issued ASU 2023-09, “Income Taxes (Topic 740), Improvements to Income Tax Disclosures”. This standard amends Topic 740 to require all entities to disclose specific categories in the rate reconciliation, income taxes paid and other income tax information.  This standard is effective for fiscal years beginning after December 15, 2024, with early adoption permitted and should be applied on a prospective basis. We do not anticipate that this standard will affect our consolidated results of operations, financial position or cash flows and we are assessing the impact of its adoption in our disclosures to our consolidated financial statements.

3.  REVENUE RECOGNITION

Revenue is disaggregated between our Installation and Specialty Distribution segments and further based on market and product, as we believe this best depicts how the nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factors.  

9

Table of Contents

TOPBUILD CORP.

NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS (Continued)

The following tables present our revenues disaggregated by market (in thousands):

Three Months Ended June 30, 

2024

2023

Installation

Specialty
Distribution

Eliminations

Total

Installation

Specialty
Distribution

Eliminations

Total

Residential

$

712,827

$

237,604

$

(66,331)

$

884,100

$

668,172

$

227,254

$

(56,667)

$

838,759

Commercial/Industrial

138,156

355,222

(11,866)

481,512

140,883

347,234

(9,614)

478,503

Net sales

$

850,983

$

592,826

$

(78,197)

$

1,365,612

$

809,055

$

574,488

$

(66,281)

$

1,317,262

Six Months Ended June 30, 

2024

2023

Installation

Specialty
Distribution

Eliminations

Total

Installation

Specialty
Distribution

Eliminations

Total

Residential

$

1,387,263

$

454,001

$

(122,321)

$

1,718,943

$

1,313,875

$

451,579

$

(108,056)

$

1,657,398

Commercial/Industrial

262,463

684,619

(21,696)

925,386

262,270

681,283

(18,451)

925,102

Net sales

$

1,649,726

$

1,138,620

$

(144,017)

$

2,644,329

$

1,576,145

$

1,132,862

$

(126,507)

$

2,582,500

The following tables present our revenues disaggregated by product (in thousands):

Three Months Ended June 30, 

2024

2023

Installation

Specialty
Distribution

Eliminations

Total

Installation

Specialty
Distribution

Eliminations

Total

Insulation and accessories

$

685,728

$

525,242

$

(68,758)

$

1,142,212

$

633,924

$

513,162

$

(57,599)

$

1,089,487

Glass and windows

62,322

-

-

62,322

68,841

-

-

68,841

Gutters

30,371

49,052

(7,924)

71,499

29,401

44,088

(7,571)

65,918

All other

72,562

18,532

(1,515)

89,579

76,889

17,238

(1,111)

93,016

Net sales

$

850,983

$

592,826

$

(78,197)

$

1,365,612

$

809,055

$

574,488

$

(66,281)

$

1,317,262

Six Months Ended June 30, 

2024

2023

Installation

Specialty Distribution

Eliminations

Total

Installation

Specialty
Distribution

Eliminations

Total

Insulation and accessories

$

1,329,378

1,015,910

(126,267)

$

2,219,021

$

1,234,691

$

1,015,964

$

(109,572)

$

2,141,083

Glass and windows

120,438

-

-

120,438

132,283

-

-

132,283

Gutters

58,339

89,368

(15,232)

132,475

57,679

83,931

(14,736)

126,874

All other

141,571

33,342

(2,518)

172,395

151,492

32,967

(2,199)

182,260

Net sales

$

1,649,726

$

1,138,620

$

(144,017)

$

2,644,329

$

1,576,145

$

1,132,862

$

(126,507)

$

2,582,500

The following table represents our contract assets and contract liabilities with customers, in thousands:

Included in Line Item on

As of

June 30, 

December 31, 

Condensed Consolidated Balance Sheets

2024

2023

Contract Assets:

Receivables, unbilled

Receivables, net

$

76,198

$

64,882

Contract Liabilities:

Deferred revenue

Accrued liabilities

$

15,981

$

18,365

The aggregate amount remaining on uncompleted performance obligations was $385.8 million as of June 30, 2024. We expect to satisfy the performance obligations and recognize revenue on substantially all of these uncompleted contracts over the next 18 months.

10

Table of Contents

TOPBUILD CORP.

NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS (Continued)

On certain of our long-term contracts, a percentage of the total project cost is withheld and not invoiced to the customer and collected until satisfactory completion of the customer’s project, typically within a year. This amount is referred to as retainage and is common practice in the construction industry. Retainage receivables are classified as a component of Receivables, net on our condensed consolidated balance sheets and were $77.0 million and $81.9 million as of June 30, 2024 and December 31, 2023, respectively.

4.  GOODWILL AND OTHER INTANGIBLES

We have two reporting units which are also our operating and reportable segments: Installation and Specialty Distribution. Both reporting units contain goodwill. Assets acquired and liabilities assumed are assigned to the applicable reporting unit based on whether the acquired assets and liabilities relate to the operations of such unit and determination of its fair value. Goodwill assigned to the reporting unit is the excess of the fair value of the acquired business over the fair value of the individual assets acquired and liabilities assumed for the reporting unit.

In the fourth quarter of 2023, we performed an annual assessment on our goodwill resulting in no impairment and there were no indicators of impairment for the six months ended June 30, 2024.

Changes in the carrying amount of goodwill for the six months ended June 30, 2024, by segment, were as follows, in thousands:

    

    

    

    

   Accumulated   

    

Gross Goodwill

FX Translation

Gross Goodwill

Impairment

Net Goodwill

December 31, 2023

Additions

Adjustment

June 30, 2024

Losses

June 30, 2024

Goodwill, by segment:

Installation

$

1,901,160

$

44,573

$

-

$

1,945,733

$

(762,021)

$

1,183,712

Specialty Distribution

 

903,429

 

5,721

(2,074)

 

907,076

 

-

 

907,076

Total goodwill

$

2,804,589

$

50,294

$

(2,074)

$

2,852,809

$

(762,021)

$

2,090,788

See Note 11 – Business Combinations for goodwill recognized on acquisitions that occurred during the six months ended June 30, 2024.

Other intangible assets, net includes customer relationships, non-compete agreements, and trademarks / trade names. The following table sets forth our other intangible assets, in thousands:

As of

June 30, 2024

December 31, 2023

Gross definite-lived intangible assets

    

$

854,873

$

827,793

Accumulated amortization

    

(271,732)

(236,735)

Other intangible assets, net

$

583,141

$

591,058

The following table sets forth our amortization expense, in thousands:

Three Months Ended June 30, 

Six Months Ended June 30, 

    

2024

    

2023

    

2024

    

2023

Amortization expense

$

17,947

$

17,211

$

35,633

$

34,107

11

Table of Contents

TOPBUILD CORP.

NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS (Continued)

5. LONG-TERM DEBT

The following table reconciles the principal balances of our outstanding debt to our condensed consolidated balance sheets, in thousands:

As of

June 30, 2024

    

December 31, 2023

3.625% Senior Notes due 2029

$

400,000

$

400,000

4.125% Senior Notes due 2032

500,000

500,000

Term loan due 2026

510,000

532,500

Equipment notes

665

2,039

Unamortized debt issuance costs

(13,031)

(14,472)

Total debt, net of unamortized debt issuance costs

1,397,634

1,420,067

Less: current portion of long-term debt

45,665

47,039

Total long-term debt

$

1,351,969

$

1,373,028

The following table sets forth our remaining principal payments for our outstanding debt balances as of June 30, 2024, in thousands:

2024

2025

2026

2027

2028

Thereafter

Total

3.625% Senior Notes

$

-

$

-

$

-

$

-

$

-

$

400,000

$

400,000

4.125% Senior Notes

-

-

-

-

-

500,000

500,000

Term loan

22,500

48,750

438,750

-

-

-

510,000

Equipment notes

665

-

-

-

-

-

665

Total

$

23,165

$

48,750

$

438,750

$

-

$

-

$

900,000

$

1,410,665

Credit Agreement

On July 26, 2023, we entered into Amendment No. 4 to our Credit Agreement, which provided for a new $550.0 million Term Facility Two, the proceeds of which were intended to be used, in part, to finance the acquisition of SPI, including the payment of related fees and expenses. On April 22, 2024, we agreed to a mutual termination of our previous agreement to acquire SPI. In connection with the termination of the SPI acquisition, the Company terminated the commitments with respect to its undrawn Term Facility Two which was provided pursuant to Amendment No. 4. All other terms of the Company’s Credit Agreement, as amended, remain in full force and effect.

The following table outlines the key terms of the Credit Agreement (dollars in thousands):

Senior secured term loan facility

$

600,000

Revolving facility (a)

$

500,000

Sublimit for issuance of letters of credit under revolving facility

$

100,000

Sublimit for swingline loans under revolving facility

$

35,000

Interest rate as of June 30, 2024

6.44

%

Scheduled maturity date

10/7/2026

(a)Use of the sublimits for the issuance of letters of credit and swingline loans reduces the availability under the revolving facility.

Interest expense on borrowings under the Credit Agreement is based on an applicable margin rate plus, at our option, either:  

A base rate determined by reference to the highest of either (i) the federal funds rate plus 0.50 percent, (ii) BofA’s “prime rate,” and (iii) the SOFR rate for U.S. dollar deposits with a term of one month, plus 1.00 percent (Term Facility One); or
A SOFR rate determined by reference to the costs of funds for deposits in U.S. dollars for the interest period relevant to such borrowings, subject to a floor of 0%.

12

Table of Contents

TOPBUILD CORP.

NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS (Continued)

The applicable margin rate is determined based on our Secured Leverage Ratio. In the case of base rate borrowings, the applicable margin rate ranges from 0.00 percent to 1.50 percent for Term Facility One and in the case of SOFR rate borrowings, the applicable margin ranges from 1.00 percent to 2.50 percent for Term Facility One. Borrowings under the Credit Agreement are prepayable at the Company’s option without premium or penalty. The Company is required to make prepayments with the net cash proceeds of certain asset sales and certain extraordinary receipts.

Revolving Facility

The Company has outstanding standby letters of credit that secure our financial obligations related to our workers’ compensation, general insurance, and auto liability programs. These standby letters of credit, as well as any outstanding amount borrowed under our revolving facility, reduce the availability under the revolving facility.  

The following table summarizes our availability under the revolving facility, in thousands:

As of

June 30, 2024

    

December 31, 2023

Revolving facility

$

500,000

$

500,000

Less: standby letters of credit

(63,770)

(63,770)

Availability under revolving facility

$

436,230

$

436,230

We are required to pay commitment fees to the Lenders in respect of any unutilized commitments. The commitment fees range from 0.15 percent to 0.275 percent per annum, depending on our Secured Leverage Ratio. We must also pay customary fees on outstanding letters of credit.

3.625% Senior Notes

The 3.625% Senior Notes are $400.0 million senior unsecured obligations and bear interest at 3.625% per year, payable semiannually in arrears on March 15 and September 15, beginning on September 15, 2021. The 3.625% Senior Notes mature on March 15, 2029, unless redeemed early or repurchased. If we undergo a change in control, we must make an offer to repurchase all of the 3.625% Senior Notes then outstanding at a repurchase price equal to 101% of their aggregate principal amount, plus accrued and unpaid interest (if any) to, but not including, the repurchase date. The Company may redeem the 3.625% Senior Notes, in whole or in part, at any time on or after March 15, 2024 at the redemption prices specified in the notes.

4.125% Senior Notes

The 4.125% Senior Notes are $500.0 million senior unsecured obligations and bear interest at 4.125% per year, payable semiannually in arrears on February 15 and August 15, beginning on August 15, 2022. The 4.125% Senior Notes mature on February 15, 2032, unless redeemed early or repurchased. If we undergo a change in control, we must make an offer to repurchase all of the 4.125% Senior Notes then outstanding at a repurchase price equal to 101% of their aggregate principal amount, plus accrued and unpaid interest (if any) to, but not including, the repurchase date. 

The Company may redeem the 4.125% Senior Notes, in whole or in part, at any time on or after October 15, 2026 at the redemption prices specified in the notes plus accrued and unpaid interest if redeemed during the 12 month period commencing on October 15 of the years set for: 2026 – 102.063%, 2027 – 101.375%, 2028 – 100.688%, 2029 and thereafter – 100.000%. The Company may also redeem a make-whole redemption of the 4.125% Senior Notes at any time prior to October 15, 2026 at the treasury rate plus 50 basis points. Additionally, the Company may redeem up to 40% of the aggregate principal amount of the 4.125% Senior Notes prior to October 15, 2024 with the net cash proceeds of certain sales of its capital stock at 104.125% of the principal amount of the notes, plus accrued and unpaid interest, if any, to the date of redemption only if, after the redemption, at least 60% of the aggregate principal amount of the notes originally issued remains outstanding.

13

Table of Contents

TOPBUILD CORP.

NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS (Continued)

Equipment Notes

We did not issue equipment notes during the six months ended June 30, 2024. The balance of equipment notes, which were issued for the purpose of financing vehicles and equipment, was $0.7 million as of June 30, 2024. The Company’s equipment notes each have a five-year term maturing in 2024 and bear interest at fixed rates between 2.8% and 4.4%.

  Covenant Compliance

The indentures governing our 3.625% Senior Notes and our 4.125% Senior Notes (together, our “Senior Notes”) contain restrictive covenants that, among other things, generally limit the ability of the Company and certain of its subsidiaries (subject to certain exceptions) to (i) create liens, (ii) pay dividends, acquire shares of capital stock and make payments on subordinated debt, (iii) place limitations on distributions from certain subsidiaries, (iv) issue or sell the capital stock of certain subsidiaries, (v) sell assets, (vi) enter into transactions with affiliates, and (vii) effect mergers. The indentures provide for customary events of default which include (subject in certain cases to customary grace and cure periods), among others: nonpayment of principal or interest; breach of covenants or other agreements in the indenture; defaults in failure to pay certain other indebtedness; and certain events of bankruptcy or insolvency. Generally, if an event of default occurs and is continuing under the indenture, the trustee or the holders of at least 30% in aggregate principal amount of each of our Senior Notes then outstanding may declare the principal of, premium, if any, and accrued interest on the Senior Notes subject to such declaration immediately due and payable. The Senior Notes and related guarantees have not been registered under the Securities Act of 1933, and we are not required to register either the Senior Notes or the guarantees in the future.

The Credit Agreement contains certain covenants that limit, among other things, the ability of the Company to incur additional indebtedness or liens; to make certain investments or loans; to make certain restricted payments; to enter into consolidations, mergers, sales of material assets, and other fundamental changes; to transact with affiliates; to enter into agreements restricting the ability of subsidiaries to incur liens or pay dividends; or to make certain accounting changes.  The Credit Agreement contains customary affirmative covenants and events of default.

The Credit Agreement requires that we maintain a Net Leverage Ratio and minimum Interest Coverage Ratio throughout the term of the agreement. The following table outlines the key financial covenants effective for the period covered by this Quarterly Report:

As of June 30, 2024

Maximum Net Leverage Ratio

3.50:1.00

Minimum Interest Coverage Ratio

3.00:1.00

Compliance as of period end

In Compliance

6. FAIR VALUE MEASUREMENTS

The carrying values of cash and cash equivalents, receivables, net, and accounts payable are considered to be representative of their respective fair values due to the short-term nature of these instruments.

Fair value measurements were applied to our long-term debt portfolio. We believe the carrying value of our term loan and equipment notes approximate their fair market value primarily due to the fact that the non-performance risk of servicing our debt obligations, as reflected in our business and credit risk profile, has not materially changed since we assumed our debt obligations under the Credit Agreement. In addition, due to the floating-rate nature of our term loan, the market value is not subject to variability solely due to changes in the general level of interest rates as is the case with a fixed-rate debt obligation.

14

Table of Contents

TOPBUILD CORP.

NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS (Continued)

Based on market trades of our 3.625% Senior Notes and our 4.125% Senior Notes close to June 30, 2024 (Level 1 fair value measurement), we estimate the fair value of each in the table below:

As of June 30, 2024

Fair Value

Gross Carrying Value

3.625% Senior Notes

$

361,440

$

400,000

4.125% Senior Notes

$

441,450

$

500,000

7.  SEGMENT INFORMATION

The following tables set forth our net sales and operating results by segment, in thousands:

Three Months Ended June 30, 

2024

2023

2024

2023

Net Sales

Operating Profit (c)

Operations by segment (a):

Installation

$

850,983

$

809,055

$

170,718

$

172,278

Specialty Distribution

592,826

574,488

89,373

85,980

Intercompany eliminations (b)

(78,197)

(66,281)

(12,840)

(11,198)

Total

$

1,365,612

$

1,317,262

247,251

247,060

General corporate expense, net (d)

(36,859)

(9,957)

Operating profit, as reported

210,392

237,103

Other expense, net

(7,218)

(13,953)

Income before income taxes

$

203,174

$

223,150

Six Months Ended June 30, 

2024

2023

2024

2023

Net Sales

Operating Profit (c)

Operations by segment (a):

Installation

$

1,649,726

$

1,576,145

$

327,475

$

319,176

Specialty Distribution

1,138,620

1,132,862

166,951

159,313

Intercompany eliminations (b)

(144,017)

(126,507)

(23,600)

(21,169)

Total

$

2,644,329

$

2,582,500

470,826

457,320

General corporate expense, net (d)

(45,926)

(20,786)

Operating profit, as reported

424,900

436,534

Other expense, net

(14,731)

(30,069)

Income before income taxes

$

410,169

$

406,465

(a)All of our operations are located primarily in the U.S. and to a lesser extent Canada.
(b)Intercompany net sales and operating profit resulted from sales made by Specialty Distribution to Installation which are eliminated in consolidation.
(c)Segment operating profit includes an allocation of general corporate expenses attributable to the operating segments which is based on direct benefit or usage (such as salaries of corporate employees who directly support the segment).
(d)General corporate expense, net includes expenses not specifically attributable to our segments for functions such as corporate human resources, finance, and legal, including salaries, benefits, and other related costs.  In our second quarter of 2024, we incurred an acquisition termination fee of $23.0 million (see Note 12. Business Combinations).

15

Table of Contents

TOPBUILD CORP.

NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS (Continued)

8.  INCOME TAXES    

Our effective tax rates were 25.8 percent and 26.1 percent for the three and six months ended June 30, 2024, respectively. The effective tax rates for the three and six months ended June 30, 2023, were 26.3 percent and 26.1 percent, respectively. The lower 2024 tax rate for the three months ended June 30, 2024, compared to the three months ended June 30, 2023, was primarily related to state tax adjustments.

A tax expense of $2.1 million and $0.2 million related to share-based compensation was recognized in our condensed consolidated statements of operations as a discrete item in income tax expense for the six months ended June 30, 2024 and 2023, respectively.

9. NET INCOME PER SHARE

Basic net income per share is calculated by dividing net income by the number of weighted average shares outstanding during the period, without consideration for common stock equivalents. Diluted net income per share is calculated by adjusting the number of weighted average shares outstanding for the dilutive effect of common stock equivalents outstanding for the period, determined using the treasury stock method.

Basic and diluted net income per share were computed as follows:

Three Months Ended June 30, 

 

Six Months Ended June 30, 

2024

2023

 

2024

2023

Net income (in thousands)

$

150,723

$

164,400

$

303,104

$

300,270

Weighted average number of common shares outstanding - basic

31,324,833

31,599,744

31,483,144

31,575,337

Dilutive effect of common stock equivalents:

RSAs with service-based conditions

34,973

25,052

38,083

23,848

RSAs with market-based conditions

61,856

20,039

61,491

22,450

RSAs with performance-based conditions

10,885

1,974

17,474

15,503

Stock options

91,516

84,998

93,332

85,522

Weighted average number of common shares outstanding - diluted

31,524,063

31,731,807

31,693,524

31,722,660

Basic net income per common share

$

4.81

$

5.20

$

9.63

$

9.51

Diluted net income per common share

$

4.78

$

5.18

$

9.56

$

9.47

The following table summarizes shares excluded from the calculation of diluted net income per share because their effect would have been anti-dilutive:

Three Months Ended June 30, 

 

Six Months Ended June 30, 

2024

 

2023

 

2024

 

2023

Anti-dilutive common stock equivalents:

RSAs with service-based conditions

-

-

-

5,582

RSAs with market-based conditions

-

-

-

4,467

RSAs with performance-based conditions

-

-

-

-

Stock options

-

14,801

-

18,541

Total anti-dilutive common stock equivalents

-

14,801

-

28,590

16

Table of Contents

TOPBUILD CORP.

NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS (Continued)

10. SHARE-BASED COMPENSATION

Eligible employees participate in the 2015 LTIP, which authorizes the Board to grant stock options, stock appreciation rights, restricted shares, restricted share units, performance awards, and dividend equivalents. All grants are made by issuing new shares and no more than 4.0 million shares of common stock may be issued under the 2015 LTIP. As of June 30, 2024, we had 1.7 million shares remaining available for issuance under the 2015 LTIP.

Share-based compensation expense is included in selling, general, and administrative expense. The income tax effect associated with share-based compensation awards is included in income tax expense.  

The following table presents share-based compensation amounts recognized in our condensed consolidated statements of operations, in thousands:

Three Months Ended June 30, 

Six Months Ended June 30, 

2024

2023

2024

2023

Share-based compensation expense

$

4,632

$

3,751

$

9,759

$

6,886

Income tax expense

$

(98)

$

(180)

$

(2,107)

$

(225)

The following table presents a summary of our share-based compensation activity for the six months ended June 30, 2024, in thousands, except per share amounts:

RSAs

Stock Options

Number of Shares

   

Weighted Average Grant Date Fair Value Per Share

   

Number of Shares

   

Weighted Average Grant Date Fair Value Per Share

   

Weighted Average Exercise Price Per Share

   

Aggregate
Intrinsic
Value

Balance December 31, 2023

195.5

$

223.49

128.7

$

36.65

$

98.58

$

35,462.8

Granted

45.0

$

419.27

$

$

Converted/Exercised

(52.6)

$

229.41

(16.0)

$

82.64

$

201.27

$

3,312.8

Forfeited/Expired

(2.7)

$

281.40

$

$

Balance June 30, 2024

185.2

$

268.77

112.7

$

30.10

$

83.97

$

33,930.3

Exercisable June 30, 2024 (a)

112.7

$

30.10

$

83.97

$

33,930.3

(a)The weighted average remaining contractual term for vested stock options is approximately 4.7 years.

We have unrecognized share-based compensation expense related to unvested awards as shown in the following table, dollars in thousands:

As of June 30, 2024

Unrecognized Compensation Expense
on Unvested Awards

Weighted Average
Remaining
Compensation Expense Period

RSAs

$

27,675

1.1

Stock options

Total unrecognized compensation expense related to unvested awards

$

27,675

17

Table of Contents

TOPBUILD CORP.

NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS (Continued)

Our RSAs with performance-based conditions are evaluated on a quarterly basis with adjustments to compensation expense based on the likelihood of the performance target being achieved or exceeded. The following table shows the range of payouts and the related expense for our outstanding RSAs with performance-based conditions, in thousands:

Payout Ranges and Related Expense

RSAs with Performance-Based Conditions

Grant Date Fair Value

0%

25%

100%

200%

February 15, 2022

$

2,978

$

-

$

745

$

2,978

$

5,956

February 21, 2023

$

4,037

$

-

$

1,009

$

4,037

$

8,074

February 21, 2024

$

4,824

$

-

$

1,206

$

4,824

$

9,648

During the first quarter of 2024, RSAs with performance-based conditions that were granted on February 16, 2021 vested based on cumulative three-year achievement of 200%. Total compensation expense recognized over the three-year performance period, net of forfeitures, was $4.4 million.

The fair value of our RSAs with a market-based condition granted under the 2015 LTIP was determined using a Monte Carlo simulation. The following are key inputs in the Monte Carlo analysis for awards granted in 2024, 2023, and 2022:

2024

2023

2022

Measurement period (years)

2.86

2.86

2.87

Risk free interest rate

4.36

%

4.42

%

1.76

%

Dividend yield

0.00

%

0.00

%

0.00

%

Estimated fair value of market-based RSAs at grant date

$

503.68

$

270.64

$

298.20

11. SHARE REPURCHASE PROGRAM

On July 25, 2022, our Board authorized the 2022 Repurchase Program, pursuant to which the Company may purchase up to $200 million of our common stock. During the second quarter of 2024, the Company utilized the remaining amount authorized under the program of $154.4 million. We repurchased a total of 677,657 shares of our common stock under the 2022 Repurchase Program at an average price of $295.13.

On May 3, 2024, our Board authorized the 2024 Repurchase Program, pursuant to which the Company may purchase up to $1.0 billion of our common stock. Share repurchases may be executed through various means including open market purchases, privately negotiated transactions, accelerated share repurchase transactions, or other available means.  The 2024 Repurchase Program does not obligate the Company to purchase any shares and has no expiration date.  Authorization for the 2024 Repurchase Program may be terminated, increased, or decreased by the Board at its discretion at any time. During the second quarter, the Company began repurchasing shares and, as of June 30, 2024, the Company has $649.2 million remaining under the 2024 Share Repurchase Program.

Effective January 1, 2023, the Inflation Reduction Act of 2022 mandated a 1% excise tax on all share repurchases. Excise tax obligations that result from our share repurchases are included in the cost of treasury stock. As of June 30, 2024, the Company had an estimated excise tax liability of $5.2 million for stock repurchases during the three months ended June 30, 2024, which is included in “Accrued liabilities” in our Condensed Consolidated Balance Sheet.

18

Table of Contents

TOPBUILD CORP.

NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS (Continued)

The following table sets forth our share repurchases under the share repurchases programs in 2024. No shares were repurchased during 2023.

Three and Six Months Ended

    

June 30, 2024

Number of shares repurchased

1,246,182

Share repurchase cost (in thousands) (a)

$

510,443

    

(a)Includes $5.2 million of excise taxes

12. BUSINESS COMBINATIONS

Acquiring businesses is a key part of our ongoing strategy to grow our company and expand our offerings. Each acquisition has been accounted for as a business combination under ASC 805, “Business Combinations.” Acquisition related costs were $26.3 million and $26.8 million in the three and six months ended June 30, 2024, respectively, which includes $23.0 million paid in the second quarter in connection with the mutual termination of our previous agreement to acquire SPI. Acquisition related costs were $1.1 million and $2.8 million for the three and six months ended June 30, 2023, respectively. Acquisition related costs are included in selling, general, and administrative expense in our condensed consolidated statements of operations.

On February 15, 2024, we acquired the assets of the residential and light commercial insulation business Brabble. This installation acquisition enhanced our presence in North Carolina. The purchase price of $5.4 million was funded by cash on hand and we recognized $3.0 million of goodwill in connection with this acquisition.

On March 1, 2024, we acquired the assets of the residential insulation business Morris Black. This installation acquisition enhanced our presence in Pennsylvania. The purchase price of $3.6 million was funded by cash on hand and we recognized $2.1 million of goodwill in connection with this acquisition.

On March 1, 2024, we acquired the assets of the customized insulation products and accessories business PCI. This specialty distribution acquisition has a national customer base focused on the domestic pest control industry. The purchase

price of $13.8 million was funded by cash on hand and we recognized $5.7 million of goodwill in connection with this acquisition.

On April 18, 2024, we acquired the assets of the residential and light commercial insulation business Green Space. This installation acquisition enhanced our presence in Missouri and neighboring states. The purchase price of approximately $4.3 million was funded by cash on hand and we recognized $2.6 million of goodwill in connection with this acquisition.

On May 16, 2024, we acquired the assets of the residential and light commercial insulation business Insulation Works. This installation acquisition enhanced our presence in Arkansas and extended our expertise to the agricultural business. The purchase price of approximately $25.2 million was funded by cash on hand and we recognized $14.3 million of goodwill in connection with this acquisition.

On May 31, 2024, we acquired the assets of the residential and light commercial insulation business Texas Insulation. This installation acquisition enhanced our presence in Texas. The purchase price of approximately $35.9 million was funded by cash on hand and we recognized $22.7 million of goodwill in connection with this acquisition.

The estimate of acquired customer relationships related to our 2024 acquisitions was $29.2 million and the weighted average useful life is 12 years.

As third-party or internal valuations are finalized, certain tax aspects of the foregoing transactions are completed, and customer post-closing reviews are concluded, adjustments may be made to the fair value of assets acquired, and in some cases total purchase price, through the end of each measurement period, generally one year following the applicable acquisition date.  

19

Table of Contents

TOPBUILD CORP.

NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS (Continued)

During the six months ended June 30, 2023, we acquired SRI. The purchase price of $45.3 was funded by cash on hand and we recognized goodwill of $23.1 million in connection with this acquisition.

Goodwill to be recognized in connection with acquisitions is attributable to the synergies expected to be realized and improvements in the businesses after the acquisitions. Primarily all of the $50.3 million and $23.1 million of goodwill recorded from acquisitions completed in the six months ended June 30, 2024 and 2023, respectively, is expected to be deductible for income tax purposes.

13.  ACCRUED LIABILITIES

The following table sets forth the components of accrued liabilities, in thousands:

As of

    

June 30, 2024

    

December 31, 2023

Accrued liabilities:

Salaries, wages, and bonus/commissions

$

62,862

$

67,471

Insurance liabilities

31,417

29,920

Sales, property, and excise taxes

21,206

17,002

Deferred revenue

15,981

18,365

Customer rebates

12,306

17,326

Interest payable on long-term debt

12,138

12,139

Other

20,843

24,994

Total accrued liabilities

$

176,753

$

187,217

See Note 3 – Revenue Recognition for discussion of our deferred revenue balances.

14.  OTHER COMMITMENTS AND CONTINGENCIES

Litigation. We are subject to certain claims, charges, litigation, and other proceedings in the ordinary course of our business, including those arising from or related to contractual matters, intellectual property, personal injury, environmental matters, product liability, product recalls, construction defects, insurance coverage, personnel and employment disputes, antitrust, and other matters, including class actions. We believe we have adequate defenses in these matters, and we do not believe that the ultimate outcome of these matters will have a material adverse effect on us. However, there is no assurance that we will prevail in any of these pending matters, and we could in the future incur judgments, enter into settlements of claims, or revise our expectations regarding the outcome of these matters, which could materially impact our liquidity and our results of operations.

Other Matters. We enter into contracts, which include customary indemnities that are standard for the industries in which we operate. Such indemnities include, among other things, claims against our builder customers for issues relating to our workmanship. We generally exclude from our contracts with builder customers indemnity relating to product quality and warranty claims, as we pass such claims directly to the manufacturers of the products we install or distribute. In conjunction with divestitures and other transactions, we occasionally provide customary indemnities relating to various items including, among others, the enforceability of trademarks, legal and environmental issues, and asset valuations. We evaluate the probability that we may incur liabilities under these customary indemnities and appropriately record an estimated liability when deemed probable.

We also maintain indemnification agreements with our directors and officers that may require us to indemnify them against liabilities that arise by reason of their status or service as directors or officers, except as prohibited by applicable law.

20

Item 2. MANAGEMENT’S DISCUSSION AND ANALYSIS OF FINANCIAL CONDITION AND RESULTS OF OPERATIONS

OVERVIEW

TopBuild, headquartered in Daytona Beach, Florida, is a leading installer and specialty distributor of insulation and other building material products to the construction industry in the United States and Canada.

We operate in two segments: Installation and Specialty Distribution. Our Installation segment installs insulation and other building products nationwide. As of June 30, 2024, we had approximately 250 Installation branches located across the United States. We install various insulation applications, including fiberglass batts and rolls, blown-in loose fill fiberglass, polyurethane spray foam, and blown-in loose fill cellulose. Additionally, we install other building products including glass and windows, rain gutters, garage doors, closet shelving, and fireplaces, among other items. We handle every stage of the installation process, including material procurement supplied by leading manufacturers, project scheduling and logistics, multi-phase professional installation, and installation quality assurance.

Our Specialty Distribution segment distributes building and mechanical insulation, insulation accessories, rain gutters, and other building product materials for the residential and commercial/industrial end markets. As of June 30, 2024, we had approximately 150 distribution centers located across the United States and 18 distribution centers in Canada. Our Specialty Distribution customer base consists of thousands of insulation contractors of all sizes serving a wide variety of residential and commercial/industrial industries, gutter contractors, weatherization contractors, other contractors, dealers, metal building erectors, and modular home builders.

We believe that having both Installation and Specialty Distribution provides us with several distinct competitive advantages. First, the combined buying power of our two business segments, along with our scale, strengthens our ties to the major manufacturers of insulation and other building material products. This helps to ensure we are buying competitively and ensures the availability of supply to our local branches and distribution centers. The overall effect is driving efficiencies through our supply chain. Second, being a leader in both installation and specialty distribution allows us to reach a broader set of builders and contractors more effectively, regardless of their size or geographic location in the U.S. and Canada, and leverage housing and commercial/industrial construction growth wherever it occurs. Third, during housing industry downturns, many insulation contractors who buy directly from manufacturers during industry peaks return to purchasing through specialty distributors. As a result, this helps to reduce our exposure to cyclical swings in our business.

For additional details pertaining to our operating results by segment, see Note 7 – Segment Information to our unaudited condensed consolidated financial statements contained in Part I, Item 1 of this Quarterly Report. For additional details regarding our strategy, material trends in our business and seasonality, please refer to Part II, Item 7, “Management’s Discussion and Analysis of Financial Condition and Results of Operations” in our Annual Report for the year ended December 31, 2023, as filed with the SEC on February 28, 2024.

The following discussion and analysis contains forward-looking statements and should be read in conjunction with the unaudited condensed consolidated financial statements, the notes thereto, and the section entitled “Forward-Looking Statements” included in this Quarterly Report.

21

SECOND QUARTER 2024 VERSUS SECOND QUARTER 2023

The following table sets forth our net sales, gross profit, operating profit, and margins, as reported in our condensed consolidated statements of operations, in thousands:

Three Months Ended June 30, 

2024

2023

Net sales

$

1,365,612

$

1,317,262

Cost of sales

941,690

895,462

Cost of sales ratio

69.0

%

68.0

%

Gross profit

423,922

421,800

Gross profit margin

31.0

%

32.0

%

Selling, general, and administrative expense

213,530

184,697

Selling, general, and administrative expense to sales ratio

15.6

%

14.0

%

Operating profit

210,392

237,103

Operating profit margin

15.4

%

18.0

%

Other expense, net

(7,218)

(13,953)

Income tax expense

(52,451)

(58,750)

Net income

$

150,723

$

164,400

Net margin

11.0

%

12.5

%

Sales and Operations

Net sales increased 3.7% for the three months ended June 30, 2024, from the comparable period of 2023. The increase was primarily driven by a 2.9% increase in sales from acquisitions and a 1.3% impact from higher selling prices, partially offset by a decline of 0.6% driven by the disposition of a non-core business.

 

Gross profit margins were 31.0% and 32.0% for the three months ended June 30, 2024 and 2023, respectively. The decline in gross profit margin is primarily due to higher material costs and lower benefit of sales mix compared to the same quarter of the prior year.

Selling, general, and administrative expenses as a percentage of sales were 15.6% and 14.0% for the three months ended June 30, 2024 and 2023, respectively. Selling, general, and administrative expenses as a percentage of sales were higher due to a $23.0 million fee paid to terminate our previous agreement to acquire SPI.

Operating margins were 15.4% and 18.0% for the three months ended June 30, 2024 and 2023, respectively. The decrease in operating margins was due to higher material costs and increased selling, general, and administrative expenses from a $23.0 million fee paid to terminate our previous agreement to acquire SPI

22

Business Segment Results

The following table sets forth our net sales and operating profit margins by business segment, in thousands:

Three Months Ended June 30, 

    

2024

    

2023

    

Percent Change

 

Net sales by business segment:

Installation

$

850,983

$

809,055

5.2

%

Specialty Distribution

592,826

574,488

3.2

%

Intercompany eliminations

(78,197)

(66,281)

Net sales

$

1,365,612

$

1,317,262

3.7

%

Operating profit by business segment:

Installation

$

170,718

$

172,278

(0.9)

%

Specialty Distribution

89,373

85,980

3.9

%

Intercompany eliminations

(12,840)

(11,198)

Operating profit before general corporate expense

247,251

247,060

0.1

%

General corporate expense, net

(36,859)

(9,957)

Operating profit

$

210,392

$

237,103

(11.3)

%

Operating profit margins:

Installation

20.1

%

21.3

%

Specialty Distribution

15.1

%

15.0

%

Operating profit margin before general corporate expense

18.1

%

18.8

%

Operating profit margin

15.4

%

18.0

%

Installation

Sales

Sales in our Installation segment increased $41.9 million, or 5.2%, for the three months ended June 30, 2024, as compared to the same period in 2023. Sales increased 3.8% from acquisitions, 1.3% from higher selling prices, and 1.0% due to higher sales volume, partially offset by a decline of 0.9% driven by the disposition of a non-core business.

Operating margins

Operating margins in our Installation segment were 20.1% and 21.3% for the three months ended June 30, 2024 and 2023, respectively. The decline in operating margin was driven by higher material costs and lower benefit of sales mix which was partially offset by higher selling prices and higher sales volume as well as productivity initiatives.

Specialty Distribution

Sales

Sales in our Specialty Distribution segment increased $18.3 million, or 3.2%, for the three months ended June 30, 2024, as compared to the same period in 2023. Sales increased 1.3% from acquisitions, 1.3% from higher selling prices, and 0.6% due to higher sales volume.

Operating margins

Operating margins in our Specialty Distribution segment were 15.1% and 15.0% for the three months ended June 30, 2024 and 2023, respectively.  The increase in operating margin was driven by productivity initiatives and higher selling prices partially offset by higher material costs.

23

OTHER ITEMS

Other expense, net

Other expense, net, decreased to $7.2 million from $14.0 million in the three months ended June 30, 2024 and 2023, respectively. The decrease was driven by $5.7 million higher interest income due to a higher average cash balance maintained during the quarter while interest and other expense remained relatively flat compared to the prior period.

Income tax expense

Income tax expense was $52.4 million, an effective tax rate of 25.8 percent, for the three months ended June 30, 2024, compared to $58.8 million, an effective tax rate of 26.3 percent, for the comparable period in 2023. The tax rate for the three months ended June 30, 2024 was lower primarily related to a decrease in tax expense related to state tax adjustments.

FIRST SIX MONTHS 2024 VERSUS FIRST SIX MONTHS 2023

The following table sets forth our net sales, gross profit, operating profit, and margins, as reported in our condensed consolidated statements of operations, in thousands:

Six Months Ended June 30, 

    

2024

    

2023

    

Net sales

$

2,644,329

$

2,582,500

Cost of sales

1,833,257

1,790,485

Cost of sales ratio

69.3

%

69.3

%

Gross profit

811,072

792,015

Gross profit margin

30.7

%

30.7

%

Selling, general, and administrative expense

386,172

355,481

Selling, general, and administrative expense to sales ratio

14.6

%

13.8

%

Operating profit

424,900

436,534

Operating profit margin

16.1

%

16.9

%

Other expense, net

(14,731)

(30,069)

Income tax expense

(107,065)

(106,195)

Net income

$

303,104

$

300,270

Net margin

11.5

%

11.6

%

Sales and Operations

Net sales increased 2.4% for the six months ended June 30, 2024, from the comparable period in 2023. The increase was primarily driven by a 2.6% increase in sales from acquisitions and a 1.3% impact from higher selling prices, partially offset by a 1.0% decline in sales volume and a decline of 0.5% driven by the disposition of a non-core business.

Gross profit margins were 30.7% for the six months ended June 30, 2024 and 2023. Gross profit margins were relatively flat to the prior year period due to the favorable impact of productivity initiatives and higher selling prices which partially offset material cost increases.

Selling, general, and administrative expenses as a percentage of sales were 14.6% and 13.8% for the six months ended June 30, 2024 and 2023, respectively. Selling, general, and administrative expenses as a percentage of sales were higher due to a $23.0 million fee paid to terminate our previous agreement to acquire SPI.

24

Operating margins were 16.1% and 16.9% for the six months ended June 30, 2024 and 2023, respectively. The slight decline in operating margins was due higher material costs and increased selling, general, and administrative expenses from a $23.0 million fee paid to terminate our previous agreement to acquire SPI. These impacts were partially offset by productivity initiatives and higher selling prices.

Business Segment Results

The following table sets forth our net sales and operating profit margins by business segment, in thousands:

Six Months Ended June 30, 

    

2024

    

2023

    

Percent Change

Net sales by business segment:

Installation

$

1,649,726

$

1,576,145

4.7

%

Specialty Distribution

1,138,620

1,132,862

0.5

%

Intercompany eliminations

(144,017)

(126,507)

Net sales

$

2,644,329

$

2,582,500

2.4

%

Operating profit by business segment:

Installation

$

327,475

$

319,176

2.6

%

Specialty Distribution

166,951

159,313

4.8

%

Intercompany eliminations

(23,600)

(21,169)

Operating profit before general corporate expense

470,826

457,320

3.0

%

General corporate expense, net

(45,926)

(20,786)

Operating profit

$

424,900

$

436,534

(2.7)

%

Operating profit margins:

Installation

19.9

%

20.3

%

Specialty Distribution

14.7

%

14.1

%

Operating profit margin before general corporate expense

17.8

%

17.7

%

Operating profit margin

16.1

%

16.9

%

Installation

Sales

Sales in our Installation segment increased $73.6 million, or 4.7%, for the six months ended June 30, 2024, as compared to the same period in 2023. Sales increased 3.7% from acquisitions, 1.2% from higher selling prices, and 0.7% due to higher sales volume, partially offset by a decline of 0.9% driven by the disposition of a non-core business.

Operating margins

Operating margins in our Installation segment were 19.9% and 20.3% for the six months ended June 30, 2024 and 2023, respectively. The decline in operating margin was driven by higher material costs and change in sales mix which was partially offset by higher selling prices and higher sales volume as well as productivity initiatives.

Specialty Distribution

Sales

Sales in our Specialty Distribution segment increased $5.8 million, or 0.5%, for the six months ended June 30, 2024, as compared to same period in 2023. Sales increased 1.4% from higher selling prices and 0.9% from acquisitions, partially offset by a decline of 1.8% in sales volume.

25

Operating margins

Operating margins in our Specialty Distribution segment were 14.7% and 14.1% for the six months ended June 30, 2024 and 2023, respectively. The increase in operating margin was driven by productivity initiatives and higher selling prices partially offset by higher material costs.

OTHER ITEMS

Other expense, net

Other expense, net, decreased to $14.7 million for the six months ended June 30, 2024 from $30.1 million in the six months ended June 30, 2023. The decrease was driven by $14.6 million higher interest income due to a higher average cash balance maintained during the period. This was partially offset by higher interest expense of $0.8 million for the six months ended June 30, 2024 due to higher interest rates on borrowings under the Credit Agreement compared to the same period in 2023.

Income tax expense

Income tax expense was $107.1 million, an effective tax rate of 26.1 percent, for the six months ended June 30, 2024 compared to $106.2 million, an effective tax rate of 26.1 percent, for the comparable period in 2023. The tax rate for six months ended June 30, 2024, was relatively flat driven by an increase in tax expense related to share-based compensation, partially offset by a decrease in tax expense related to state tax adjustments.

Cash Flows and Liquidity

Significant sources (uses) of cash and cash equivalents are summarized for the periods indicated, in thousands:

Six Months Ended June 30, 

    

2024

    

2023

Changes in cash and cash equivalents:

Net cash provided by operating activities

$

269,128

$

385,797

Net cash used in investing activities

 

(121,947)

 

(75,838)

Net cash used in financing activities

(531,949)

(23,982)

Impact of exchange rate changes on cash

(576)

281

Net (decrease) increase in cash and cash equivalents

$

(385,344)

$

286,258

Net cash flows provided by operating activities decreased $116.7 million for the six months ended June 30, 2024, as compared to the prior year period.  Net income of $303.1 million was essentially flat to the prior year period, even considering the $23.0 million fee paid to terminate our previous agreement to acquire SPI, while operating profit declined by $11.6 million primarily due material cost increases. We also incurred increases in working capital accounts, leading to more cashed used in operations.

Net cash used in investing activities was $121.9 million for the six months ended June 30, 2024, primarily composed of $88.1 million for our acquisitions and $36.0 million for purchases of property and equipment, mainly vehicles, partially offset by $2.2 million proceeds received from the sale of assets. Net cash used in investing activities was $75.8 million for the six months ended June 30, 2023, primarily composed of $45.9 million for our acquisition and $30.7 million for purchases of property and equipment, mainly vehicles and equipment.

Net cash used in financing activities was $531.9 million for the six months ended June 30, 2024. During the six months ended June 30, 2024, we used $505.2 million to repurchase shares of our common stock under the 2022 and 2024 Repurchase Programs, $23.9 million for debt repayments and incurred $2.8 million net cash outflow related to exercise of share-based incentive awards and stock options. Net cash used in financing activities was $24.0 million for the six months ended June 30, 2023. During the six months ended June 30, 2023, we used $18.8 million for debt repayments, and incurred $4.9 million net cash outflow related to exercise of share-based incentive awards and stock options.

26

We have access to liquidity through our cash from operations and available borrowing capacity under our Credit Agreement, which provides for borrowing and/or standby letter of credit issuances of up to $500 million under the Revolving Facility. Additional information regarding our outstanding debt and borrowing capacity is incorporated by reference from Note 5 – Long-term Debt to our unaudited condensed consolidated financial statements contained in Part 1, Item 1 of this Quarterly Report.  

The following table summarizes our liquidity, in thousands:

As of

June 30, 

December 31, 

    

2024

    

2023

Cash and cash equivalents (a)

$

463,221

$

848,565

Revolving facility

500,000

500,000

Less: standby letters of credit

(63,770)

(63,770)

Availability under Revolving facility

436,230

436,230

Total liquidity

$

899,451

$

1,284,795

(a)Our cash and cash equivalents consist of AAA-rated money market funds as well as cash held in our demand deposit accounts.

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 known contractual obligations including funding our debt service requirements, capital expenditures, lease obligations and working capital needs for at least the next twelve months. We also have adequate liquidity to maintain off-balance sheet arrangements for short-term leases, letters of credit, and performance and license bonds. Information regarding our outstanding bonds as of June 30, 2024, is incorporated by reference from Note 13 – Other Commitments and Contingencies to our unaudited condensed consolidated financial statements contained in Part I, Item 1 of this Quarterly Report.

OUTLOOK

Residential New Construction

Home builders continue to report improving demand resulting in single-family housing starts that improved in the first quarter in comparison to the prior year. Multifamily construction activity also remains strong but starts have slowed, in comparison to the prior year. While there is a strong backlog of multi-family units that need to be completed, we do expect multifamily activity to continue to decline as we move towards 2025. Single-family housing is a larger proportion of the overall housing market as well as a larger proportion of our business. Overall, despite uncertainty around the economy and the impact of higher interest rates, we remain optimistic about the long-term fundamentals of the U.S. housing market, supported by a limited supply of both new and existing homes, favorable demographic trends, and increasing household formations. 

Commercial and Industrial Construction

Our commercial backlog is strong, and our bidding activity is active, both of which continue to support our optimistic view of commercial/industrial sales at our Installation and Specialty Distribution segments. There are many major projects being planned across several different industries fueling demand. In addition, maintenance and repair work on industrial sites will serve as a continued driver for our Specialty Distribution business.

OFF-BALANCE SHEET ARRANGEMENTS

We had no material off-balance sheet arrangements during the three months ended June 30, 2024, other than short-term leases, letters of credit, and performance and license bonds, which have been disclosed in Part 1, Item 1 of this Quarterly report.

We occasionally 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. We also have bonds outstanding for license and insurance.

27

The following table summarizes our outstanding performance, licensing, insurance, and other bonds, in thousands:

As of

June 30, 2024

December 31, 2023

Outstanding bonds:

Performance bonds

$

155,900

$

145,982

Licensing, insurance, and other bonds

28,370

27,415

Total bonds

$

184,270

$

173,397

CONTRACTUAL OBLIGATIONS

There have been no material changes to our contractual obligations from those previously disclosed in our Annual Report for the year ended December 31, 2023, as filed with the SEC on February 28, 2024.

CRITICAL ACCOUNTING POLICIES

We prepare our condensed consolidated financial statements in conformity with GAAP. The preparation of these financial statements requires us to make estimates and assumptions that affect the reported amounts of assets and liabilities, and disclosure of contingent assets and liabilities, at the date of the financial statements, and the reported amounts of sales and expenses during the reporting period. Actual results could differ from those estimates. Our critical accounting policies have not changed from those previously reported in our Annual Report for the year ended December 31, 2023, as filed with the SEC on February 28, 2024.

APPLICATION OF NEW ACCOUNTING STANDARDS

Information regarding the application of new accounting standards is incorporated by reference from Note 2 – Accounting Policies to our unaudited condensed consolidated financial statements contained in Part I, Item 1 of this Quarterly Report.

FORWARD-LOOKING STATEMENTS

Statements contained in this report that reflect our views about future periods, including our future plans and performance, constitute “forward-looking statements” under the Private Securities Litigation Reform Act of 1995. Forward-looking statements can be identified by words such as “will,” “would,” “should,” “anticipate,” “expect,” “believe,” “designed,” “plan,” “may,” “project,” “estimate”  or “intend,” the negative of these terms, and similar references to future periods.  These views involve risks and uncertainties that are difficult to predict and, accordingly, our actual results may differ materially from the results discussed in our forward-looking statements. We caution you against unduly relying on any of these forward-looking statements. Our future performance may be affected by the duration and impact of negative macro-economic impacts on the United States economy, specifically with respect to residential, commercial/industrial construction, our ability to collect our receivables from our customers, our reliance on residential new construction, residential repair/remodel, and commercial/industrial construction; our reliance on third-party suppliers and manufacturers; our ability to attract, develop, and retain talented personnel and our sales and labor force; our ability to maintain consistent practices across our locations; our ability to maintain our competitive position; and our ability to realize the expected benefits of our acquisitions. We discuss the material risks we face under the caption entitled “Risk Factors” in our Annual Report for the year ended December 31, 2023, as filed with the SEC on February 28, 2024, as well as under the caption entitled “Risk Factors” in subsequent reports that we file with the SEC. Our forward-looking statements in this filing speak only as of the date of this filing. Factors or events that could cause our actual results to differ may emerge from time to time and it is not possible for us to predict all of them. Unless required by law, we undertake no obligation to update publicly any forward-looking statements as a result of new information, future events, or otherwise.

28

Item 3.  QUANTITATIVE AND QUALITATIVE DISCLOSURES ABOUT MARKET RISK

Interest Rate Risk

We have a Term Loan outstanding with a principal balance of $510 million and a revolving facility with an aggregate borrowing capacity of $500.0 million. We also have outstanding 3.625% Senior Notes with an aggregate principal balance of $400.0 million and 4.125% Senior Notes with an aggregate principal balance of $500.0 million. The 3.625% Senior Notes and 4.125% Senior Notes bear a fixed rate of interest and therefore are excluded from the calculation below as they are not subject to fluctuations in interest rates.

Interest payable on both the aggregate Term Loan and Revolving Facility is based on a variable interest rate. As a result, we are exposed to market risks related to fluctuations in interest rates on this outstanding indebtedness. As of June 30, 2024, the applicable interest rate as of such date was 6.44%. Based on our outstanding borrowings as of June 30, 2024, a 100-basis point increase in the interest rate would result in a $4.9 million increase in our annualized interest expense. There was no outstanding balance under the Revolving Facility as of June 30, 2024.

Item 4.  CONTROLS AND PROCEDURES

Evaluation of Disclosure Controls and Procedures

 

As of the end of the period covered by this Quarterly Report, we carried out an evaluation, under the supervision and with the participation of our principal executive officer and principal financial officer, of the effectiveness of the design and operation of our disclosure controls and procedures (as such term is defined in Rules 13a-15(e) and 15d-15(e) under the Exchange Act). Based on this evaluation, our principal executive officer and principal financial officer concluded that our disclosure controls and procedures were effective as of June 30, 2024.

Changes in Internal Control over Financial Reporting

 

There was no change in the Company’s internal control over financial reporting (as such term is defined in Rules 13a-15(f) and 15d-15(f) under the Exchange Act) in the most recent fiscal quarter ended June 30, 2024, that has materially affected, or is reasonably likely to materially affect, the Company’s internal control over financial reporting.

PART II – OTHER INFORMATION

Item 1.  LEGAL PROCEEDINGS

The information set forth under the caption “Litigation” in Note 13 – Other Commitments and Contingencies to our unaudited condensed consolidated financial statements contained in Part I, Item 1 of this Quarterly Report, is incorporated by reference herein.

Item 1A.  RISK FACTORS

There have been no material changes to our risk factors as previously disclosed in our Annual Report for the year ended December 31, 2023, as filed with the SEC on February 28, 2024 which are incorporated by reference herein.

29

Item 2.  UNREGISTERED SALES OF EQUITY SECURITIES AND USE OF PROCEEDS

The following table provides information regarding the repurchase of our common stock for the three months ended June 30, 2024, in thousands, except share and per share data:

Period

Total Number of Shares Purchased

Average Price Paid per Common Share (b)

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

April 1, 2024 - April 30, 2024

-

$

-

-

$

154,406

May 1, 2024 - May 31, 2024 (a)

522,778

$

409.87

522,778

$

940,133

June 1, 2024 - June 30, 2024

723,404

$

402.22

723,404

$

649,165

Total

1,246,182

$

405.43

1,246,182

(a)On May 3, 2024, the Board authorized the 2024 Share Repurchase Program. See Note 11 – Share Repurchase Program for further discussion.
(b)These amounts exclude the 1% excise tax mandated by the Inflation Reduction Act on share repurchases.

Item 3.  DEFAULTS UPON SENIOR SECURITIES

Not applicable.

Item 4.  MINE SAFETY DISCLOSURES

Not applicable.

Item 5.  OTHER INFORMATION

During the quarter ended June 30, 2024, no director or officer (as defined in Rule 16a-1(f) promulgated under the Exchange Act) of the Company adopted or terminated a "Rule 10b5-1 trading arrangement" or "non-Rule 10b5-1 trading arrangement" (as each term is defined in Item 408 of Regulation S-K).

Item 6. EXHIBITS

The Exhibits listed on the accompanying Index to Exhibits are filed or furnished (as noted on such Index) as part of this Quarterly Report and incorporated herein by reference.

30

INDEX TO EXHIBITS

 

Incorporated by Reference

Filed

Exhibit No.

 

Exhibit Title

 

Form

 

Exhibit

 

Filing Date

 

Herewith

14.1

TopBuild Corp. Code of Business Ethics

8-K

14.1

8/2/2024

31.1

Principal Executive Officer Certification required by Rules 13a-14 and 15d-14 as adopted pursuant to Section 302 of the Sarbanes-Oxley Act of 2002

X

31.2

Principal Financial Officer Certification required by Rules 13a-14 and 15d-14 as adopted pursuant to Section 302 of the Sarbanes-Oxley Act of 2002

X

32.1‡

Certification of Principal Executive Officer pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of Sarbanes-Oxley Act of 2002

32.2‡

Certification of Principal Financial Officer pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of Sarbanes-Oxley Act of 2002

101.INS

Inline XBRL Instance Document - the Instance Document does not appear in the Interactive Data File because its XBRL tags are embedded within the Inline XBRL document

X

101.SCH

Inline XBRL Taxonomy Extension Schema Document

X

101.CAL

Inline XBRL Taxonomy Extension Calculation Linkbase Document

X

101.DEF

Inline XBRL Taxonomy Extension Definition Linkbase Document

X

101.LAB

Inline XBRL Taxonomy Extension Label Linkbase Document

X

101.PRE

Inline XBRL Taxonomy Extension Presentation Linkbase Document

X

104

Cover Page Interactive Data File (formatted as Inline XBRL and contained in Exhibit 101)

X

‡Furnished herewith

31

SIGNATURE

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.

 

TOPBUILD CORP.

 

 

 

 

 

By:

/s/ Madeline Otero

 

Name:

Madeline Otero

 

Title:

Vice President and Chief Accounting Officer

(Principal Accounting Officer)

August 6, 2024

32

EX-31.1 2 bld-20240630xex31d1.htm EX-31.1

Exhibit 31.1

Certifications

I, Robert Buck, certify that:

1.I have reviewed this quarterly report on Form 10-Q of TopBuild Corp.;

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 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; and

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.

Date: August 6, 2024

/s/ Robert Buck

Robert Buck

Chief Executive Officer and Director

(Principal Executive Officer)


EX-31.2 3 bld-20240630xex31d2.htm EX-31.2

Exhibit 31.2

Certifications

I, Robert Kuhns, certify that:

1.I have reviewed this quarterly report on Form 10-Q of TopBuild Corp.;

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 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; and

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.

Date: August 6, 2024

/s/ Robert Kuhns

Robert Kuhns

Vice President and Chief Financial Officer

(Principal Financial Officer)


EX-32.1 4 bld-20240630xex32d1.htm EX-32.1

Exhibit 32.1

CERTIFICATION OF PERIOD REPORT

I, Robert Buck, Chief Executive Officer and Director of TopBuild Corp. (the “Company”), certify, pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, 18 U.S.C. Section 1350, that, to the best of my knowledge:

(1)the Quarterly Report on Form 10-Q of the Company for the quarter ended June 30, 2024 (the “Report”) fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934 (15 U.S.C. 78m or 78o(d)); and

(2)the information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of the Company.

Date: August 6, 2024

/s/ Robert Buck

Robert Buck

Chief Executive Officer and Director

(Principal Executive Officer)


EX-32.2 5 bld-20240630xex32d2.htm EX-32.2

Exhibit 32.2

CERTIFICATION OF PERIOD REPORT

I, Robert Kuhns, Vice President and Chief Financial Officer of TopBuild Corp. (the “Company”), certify, pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, 18 U.S.C. Section 1350, that, to the best of my knowledge:

(1)the Quarterly Report on Form 10-Q of the Company for the quarter ended June 30, 2024 (the “Report”) fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934 (15 U.S.C. 78m or 78o(d)); and

(2)the information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of the Company.

Date: August 6, 2024

/s/ Robert Kuhns

Robert Kuhns

Vice President and Chief Financial Officer

(Principal Financial Officer)


EX-101.SCH 6 bld-20240630.xsd EX-101.SCH 99900 - Disclosure - Standard And Custom Axis Domain Defaults link:presentationLink link:calculationLink link:definitionLink 995200100 - Statement - CONSOLIDATED BALANCE SHEETS link:presentationLink link:calculationLink link:definitionLink 995200200 - Statement - CONSOLIDATED STATEMENTS OF OPERATIONS link:presentationLink link:calculationLink link:definitionLink 995200300 - Statement - CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME link:presentationLink link:calculationLink link:definitionLink 995200400 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS link:presentationLink link:calculationLink link:definitionLink 99940401 - Disclosure - Goodwill and Other Intangibles - Goodwill (Details) link:presentationLink link:calculationLink link:definitionLink 99940402 - Disclosure - Goodwill and Other Intangibles - Other intangible assets (Details) link:presentationLink link:calculationLink link:definitionLink 99940501 - Disclosure - Long-Term Debt - Reconciliation (Details) link:presentationLink link:calculationLink link:definitionLink 40501 - Disclosure - Long-Term Debt - Reconciliation (Details) (Calc2) link:presentationLink link:calculationLink link:definitionLink 99940502 - Disclosure - Long-Term Debt - Schedule of debt maturity (Details) link:presentationLink link:calculationLink link:definitionLink 99940504 - Disclosure - Long-Term Debt - Revolving Facility (Details) link:presentationLink link:calculationLink link:definitionLink 99940901 - Disclosure - Net Income Per Share - Calculation (Details) link:presentationLink link:calculationLink link:definitionLink 99941002 - Disclosure - Share-Based Compensation - Activity (Details) link:presentationLink link:calculationLink link:definitionLink 99941301 - Disclosure - Accrued Liabilities (Details) link:presentationLink link:calculationLink link:definitionLink 995200090 - Document - Document and Entity Information link:presentationLink link:calculationLink link:definitionLink 995200105 - Statement - CONSOLIDATED BALANCE SHEETS (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 995200500 - Statement - CONSOLIDATED STATEMENTS OF CHANGES IN SHAREHOLDERS' EQUITY link:presentationLink link:calculationLink link:definitionLink 995200505 - Statement - CONSOLIDATED STATEMENTS OF CHANGES IN SHAREHOLDERS' EQUITY (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 995210101 - Disclosure - Basis of Presentation link:presentationLink link:calculationLink link:definitionLink 995210201 - Disclosure - Accounting Policies link:presentationLink link:calculationLink link:definitionLink 995210401 - Disclosure - Goodwill and Other Intangibles link:presentationLink link:calculationLink link:definitionLink 995210501 - Disclosure - Long-Term Debt link:presentationLink link:calculationLink link:definitionLink 995210601 - Disclosure - Fair Value Measurements link:presentationLink link:calculationLink link:definitionLink 995210701 - Disclosure - Segment Information link:presentationLink link:calculationLink link:definitionLink 995210801 - Disclosure - Income Taxes link:presentationLink link:calculationLink link:definitionLink 995210901 - Disclosure - Net Income Per Share link:presentationLink link:calculationLink link:definitionLink 995211001 - Disclosure - Share-Based Compensation link:presentationLink link:calculationLink link:definitionLink 995211101 - Disclosure - Share Repurchase Program link:presentationLink link:calculationLink link:definitionLink 995211201 - Disclosure - Business Combinations link:presentationLink link:calculationLink link:definitionLink 995211301 - Disclosure - Accrued Liabilities link:presentationLink link:calculationLink link:definitionLink 995211401 - Disclosure - Other Commitments and Contingencies link:presentationLink link:calculationLink link:definitionLink 99920202 - Disclosure - Accounting Policies (Policies) link:presentationLink link:calculationLink link:definitionLink 99930403 - Disclosure - Goodwill and Other Intangibles (Tables) link:presentationLink link:calculationLink link:definitionLink 99930503 - Disclosure - Long-Term Debt (Tables) link:presentationLink link:calculationLink link:definitionLink 99930703 - Disclosure - Segment Information (Tables) link:presentationLink link:calculationLink link:definitionLink 99930903 - Disclosure - Net Income Per Share (Tables) link:presentationLink link:calculationLink link:definitionLink 99931003 - Disclosure - Share-Based Compensation (Tables) link:presentationLink link:calculationLink link:definitionLink 99931103 - Disclosure - Share Repurchase Program (Tables) link:presentationLink link:calculationLink link:definitionLink 99931303 - Disclosure - Accrued Liabilities (Tables) link:presentationLink link:calculationLink link:definitionLink 99940101 - Disclosure - Basis of Presentation (Details) link:presentationLink link:calculationLink link:definitionLink 99940301 - Disclosure - Revenue Recognition - Disaggregation (Details) link:presentationLink link:calculationLink link:definitionLink 99940302 - Disclosure - Revenue Recognition - Other (Details) link:presentationLink link:calculationLink link:definitionLink 99940503 - Disclosure - Long-Term Debt - Key Terms of Credit Agreement (Details) link:presentationLink link:calculationLink link:definitionLink 99940505 - Disclosure - Long-Term Debt - Senior Notes and Equipment Notes (Details) link:presentationLink link:calculationLink link:definitionLink 99940506 - Disclosure - Long-Term Debt - Other (Details) link:presentationLink link:calculationLink link:definitionLink 99940601 - Disclosure - Fair Value Measurements (Details) link:presentationLink link:calculationLink link:definitionLink 99940701 - Disclosure - Segment Information (Details) link:presentationLink link:calculationLink link:definitionLink 99940801 - Disclosure - Income Taxes (Details) link:presentationLink link:calculationLink link:definitionLink 99940902 - Disclosure - Net Income Per Share - Anti-dilutive common stock equivalents (Details) link:presentationLink link:calculationLink link:definitionLink 99941001 - Disclosure - Share-Based Compensation - Expense (Details) link:presentationLink link:calculationLink link:definitionLink 99941101 - Disclosure - Share Repurchase Program (Details) link:presentationLink link:calculationLink link:definitionLink 99941201 - Disclosure - Business Combinations - Summary (Details) link:presentationLink link:calculationLink link:definitionLink 99941202 - Disclosure - Business Combinations - Intangibles (Details) link:presentationLink link:calculationLink link:definitionLink 995210301 - Disclosure - Revenue Recognition link:presentationLink link:calculationLink link:definitionLink 99930303 - Disclosure - Revenue Recognition (Tables) link:presentationLink link:calculationLink link:definitionLink 99930603 - Disclosure - Fair Value Measurements (Tables) link:presentationLink link:calculationLink link:definitionLink EX-101.CAL 7 bld-20240630_cal.xml EX-101.CAL EX-101.DEF 8 bld-20240630_def.xml EX-101.DEF EX-101.LAB 9 bld-20240630_lab.xml EX-101.LAB EX-101.PRE 10 bld-20240630_pre.xml EX-101.PRE XML 12 R1.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Document and Entity Information - shares
6 Months Ended
Jun. 30, 2024
Jul. 31, 2024
Cover page.    
Document Type 10-Q  
Document Period End Date Jun. 30, 2024  
Document Transition Report false  
Entity File Number 001-36870  
Entity Registrant Name TopBuild Corp  
Entity Incorporation, State or Country Code DE  
Entity Tax Identification Number 47-3096382  
Entity Address, Address Line One 475 North Williamson Boulevard  
Entity Address, City or Town Daytona Beach  
Entity Address, State or Province FL  
Entity Address, Postal Zip Code 32114  
City Area Code 386  
Local Phone Number 304-2200  
Title of 12(b) Security Common stock, par value $0.01 per share  
Trading Symbol BLD  
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   30,166,212
Amendment Flag false  
Entity Central Index Key 0001633931  
Current Fiscal Year End Date --12-31  
Document Fiscal Year Focus 2024  
Document Fiscal Period Focus Q2  
Document Quarterly Report true  
XML 13 R2.htm IDEA: XBRL DOCUMENT v3.24.2.u1
CONSOLIDATED BALANCE SHEETS - USD ($)
$ in Thousands
Jun. 30, 2024
Dec. 31, 2023
Current assets:    
Cash and cash equivalents $ 463,221 $ 848,565
Receivables, net of an allowance for credit losses of $22,718 at June 30, 2024, and $23,948 at December 31, 2023 859,725 799,009
Inventories 393,810 364,731
Prepaid expenses and other current assets 43,550 36,939
Total current assets 1,760,306 2,049,244
Right of use assets 191,048 204,629
Property and equipment, net 267,523 264,487
Goodwill 2,090,788 2,042,568
Other intangible assets, net 583,141 591,058
Other assets 10,187 10,865
Total assets 4,902,993 5,162,851
Current liabilities:    
Accounts payable 461,139 469,585
Current portion of long-term debt 45,665 47,039
Accrued liabilities 176,753 187,217
Short-term operating lease liabilities 66,953 65,780
Short-term finance lease liabilities 1,739 1,917
Total current liabilities 752,249 771,538
Long-term debt 1,351,969 1,373,028
Deferred tax liabilities, net 243,790 243,930
Long-term portion of insurance reserves 60,402 58,783
Long-term operating lease liabilities 132,529 146,213
Long-term finance lease liabilities 3,318 4,150
Other liabilities 1,422 1,554
Total liabilities 2,545,679 2,599,196
Commitments and contingencies
Equity:    
Preferred stock, $0.01 par value: 10,000,000 shares authorized; 0 shares issued and outstanding
Common stock, $0.01 par value: 250,000,000 shares authorized; 39,561,321 shares issued and 30,584,176 outstanding at June 30, 2024, and 39,492,037 shares issued and 31,776,039 outstanding at December 31, 2023 396 394
Treasury stock, 8,977,145 shares at June 30, 2024, and 7,715,998 shares at December 31, 2023, at cost (1,215,829) (699,327)
Additional paid-in capital 919,317 906,334
Retained earnings 2,674,023 2,370,919
Accumulated other comprehensive loss (20,593) (14,665)
Total equity 2,357,314 2,563,655
Total liabilities and equity $ 4,902,993 $ 5,162,851
XML 14 R3.htm IDEA: XBRL DOCUMENT v3.24.2.u1
CONSOLIDATED BALANCE SHEETS (Parenthetical) - USD ($)
$ in Thousands
Jun. 30, 2024
Dec. 31, 2023
CONSOLIDATED BALANCE SHEETS    
Allowance for credit losses $ 22,718 $ 23,948
Preferred stock, par value (in dollars per share) $ 0.01 $ 0.01
Preferred stock, shares authorized 10,000,000 10,000,000
Preferred stock, shares, issued 0 0
Preferred stock, shares, outstanding 0 0
Common stock, par value (in dollars per share) $ 0.01 $ 0.01
Common stock, shares authorized 250,000,000 250,000,000
Common stock, shares issued 39,561,321 39,492,037
Common stock, shares outstanding 30,584,176 31,776,039
Treasury stock, shares at cost 8,977,145 7,715,998
XML 15 R4.htm IDEA: XBRL DOCUMENT v3.24.2.u1
CONSOLIDATED STATEMENTS OF OPERATIONS - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2024
Jun. 30, 2023
Jun. 30, 2024
Jun. 30, 2023
CONSOLIDATED STATEMENTS OF OPERATIONS        
Net sales $ 1,365,612 $ 1,317,262 $ 2,644,329 $ 2,582,500
Cost of sales 941,690 895,462 1,833,257 1,790,485
Gross profit 423,922 421,800 811,072 792,015
Selling, general, and administrative expense 213,530 184,697 386,172 355,481
Operating profit 210,392 237,103 424,900 436,534
Other income (expense), net:        
Interest expense (18,568) (18,558) (37,363) (36,597)
Other, net 11,350 4,605 22,632 6,528
Other expense, net (7,218) (13,953) (14,731) (30,069)
Income before income taxes 203,174 223,150 410,169 406,465
Income tax expense (52,451) (58,750) (107,065) (106,195)
Net income $ 150,723 $ 164,400 $ 303,104 $ 300,270
Net income per common share:        
Basic $ 4.81 $ 5.20 $ 9.63 $ 9.51
Diluted $ 4.78 $ 5.18 $ 9.56 $ 9.47
Weighted average shares outstanding:        
Basic 31,324,833 31,599,744 31,483,144 31,575,337
Diluted 31,524,063 31,731,807 31,693,524 31,722,660
XML 16 R5.htm IDEA: XBRL DOCUMENT v3.24.2.u1
CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2024
Jun. 30, 2023
Jun. 30, 2024
Jun. 30, 2023
CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME        
Net income $ 150,723 $ 164,400 $ 303,104 $ 300,270
Other comprehensive (loss) income:        
Foreign currency translation adjustment (1,836) 4,283 (5,928) 6,037
Comprehensive income $ 148,887 $ 168,683 $ 297,176 $ 306,307
XML 17 R6.htm IDEA: XBRL DOCUMENT v3.24.2.u1
CONSOLIDATED STATEMENTS OF CASH FLOWS - USD ($)
$ in Thousands
6 Months Ended
Jun. 30, 2024
Jun. 30, 2023
Cash Flows Provided by (Used in) Operating Activities:    
Net income $ 303,104 $ 300,270
Adjustments to reconcile net income to net cash provided by operating activities:    
Depreciation and amortization 69,291 64,652
Share-based compensation 9,759 6,886
(Gain)/loss on sale of assets (131) 621
Amortization of debt issuance costs 1,440 1,440
Provision for bad debt expense 9,874 4,031
Provision for inventory obsolescence 4,892 3,290
Change in certain assets and liabilities:    
Receivables, net (58,411) (37,247)
Inventories (30,758) 54,623
Prepaid expenses and other current assets (6,595) 8,897
Accounts payable (17,480) (8,806)
Accrued liabilities (13,348) (13,872)
Other, net (2,509) 1,012
Net cash provided by operating activities 269,128 385,797
Cash Flows Provided by (Used in) Investing Activities:    
Purchases of property and equipment (35,974) (30,672)
Acquisition of businesses, net of cash acquired (88,123) (45,948)
Proceeds from sale of assets 2,150 782
Net cash used in investing activities (121,947) (75,838)
Cash Flows Provided by (Used in) Financing Activities:    
Repayment of long-term debt (23,873) (18,829)
Taxes withheld and paid on employees' equity awards (6,059) (6,350)
Exercise of stock options 3,224 1,497
Repurchase of shares of common stock (505,241)  
Payment of contingent consideration   (300)
Net cash used in financing activities (531,949) (23,982)
Cash and Cash Equivalents    
Impact of exchange rate changes on cash (576) 281
Net (decrease) increase in cash and cash equivalents (385,344) 286,258
Cash and cash equivalents- Beginning of period 848,565 240,069
Cash and cash equivalents- End of period 463,221 526,327
Supplemental disclosure of noncash activities:    
Leased assets obtained in exchange for new operating lease liabilities 20,180 26,310
Accruals for property and equipment 277 $ 1,449
Excise taxes capitalized to treasury stock $ 5,202  
XML 18 R7.htm IDEA: XBRL DOCUMENT v3.24.2.u1
CONSOLIDATED STATEMENTS OF CHANGES IN SHAREHOLDERS' EQUITY - USD ($)
$ in Thousands
Common Stock
Treasury Stock at Cost
Additional Paid-in Capital
Retained Earnings
Accumulated Other Comprehensive (Loss) Income
Total
Balance at Dec. 31, 2022 $ 393 $ (692,799) $ 887,367 $ 1,756,665 $ (21,920) $ 1,929,706
Increase (Decrease) in Stockholders' Equity            
Net income       135,870   135,870
Share-based compensation     3,135     3,135
Issuance of restricted share awards under long-term equity incentive plan 2         2
Shares withheld to pay taxes on employees' equity awards   (6,350)       (6,350)
Shares issued upon exercise of stock options     1,028     1,028
Other comprehensive income (loss), net of tax         1,753 1,753
Balance at Mar. 31, 2023 395 (699,149) 891,530 1,892,535 (20,167) 2,065,144
Balance at Dec. 31, 2022 393 (692,799) 887,367 1,756,665 (21,920) 1,929,706
Increase (Decrease) in Stockholders' Equity            
Net income           300,270
Balance at Jun. 30, 2023 395 (699,149) 895,749 2,056,935 (15,884) 2,238,046
Balance at Mar. 31, 2023 395 (699,149) 891,530 1,892,535 (20,167) 2,065,144
Increase (Decrease) in Stockholders' Equity            
Net income       164,400   164,400
Share-based compensation     3,751     3,751
Shares issued upon exercise of stock options     468     468
Other comprehensive income (loss), net of tax         4,283 4,283
Balance at Jun. 30, 2023 395 (699,149) 895,749 2,056,935 (15,884) 2,238,046
Balance at Dec. 31, 2023 394 (699,327) 906,334 2,370,919 (14,665) 2,563,655
Increase (Decrease) in Stockholders' Equity            
Net income       152,381   152,381
Share-based compensation     5,127     5,127
Issuance of restricted share awards under long-term equity incentive plan, net of forfeitures 1         1
Shares withheld to pay taxes on employees' equity awards   (6,059)       (6,059)
Shares issued upon exercise of stock options     1,020     1,020
Other comprehensive income (loss), net of tax         (4,092) (4,092)
Balance at Mar. 31, 2024 395 (705,386) 912,481 2,523,300 (18,757) 2,712,033
Balance at Dec. 31, 2023 394 (699,327) 906,334 2,370,919 (14,665) 2,563,655
Increase (Decrease) in Stockholders' Equity            
Net income           303,104
Balance at Jun. 30, 2024 396 (1,215,829) 919,317 2,674,023 (20,593) 2,357,314
Balance at Mar. 31, 2024 395 (705,386) 912,481 2,523,300 (18,757) 2,712,033
Increase (Decrease) in Stockholders' Equity            
Net income       150,723   150,723
Share-based compensation     4,632     4,632
Issuance of restricted share awards under long-term equity incentive plan 1         1
Repurchase of shares   (510,443)       (510,443)
Shares issued upon exercise of stock options     2,204     2,204
Other comprehensive income (loss), net of tax         (1,836) (1,836)
Balance at Jun. 30, 2024 $ 396 $ (1,215,829) $ 919,317 $ 2,674,023 $ (20,593) $ 2,357,314
XML 19 R8.htm IDEA: XBRL DOCUMENT v3.24.2.u1
CONSOLIDATED STATEMENTS OF CHANGES IN SHAREHOLDERS' EQUITY (Parenthetical) - $ / shares
3 Months Ended
Jun. 30, 2024
Mar. 31, 2024
Jun. 30, 2023
Mar. 31, 2023
CONDENSED CONSOLIDATED STATEMENTS OF CHANGES IN EQUITY        
Common stock, par value (in dollars per share) $ 0.01   $ 0.01  
Issuance of restricted share awards under long-term equity incentive plan, net of forfeitures (in shares) 2,022 51,236 18,768 95,012
Repurchase of shares (in shares) 1,246,182      
Number of shares withheld to pay taxes on employees' equity awards (in shares)   14,965   32,594
Shares issued upon exercise of stock options (in shares) 10,269 5,757 4,762 28,840
XML 20 R9.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Basis of Presentation
6 Months Ended
Jun. 30, 2024
Basis of Presentation  
Basis of Presentation

1.  BASIS OF PRESENTATION

TopBuild is listed on the NYSE under the ticker symbol “BLD.” We report our business in two segments: Installation and Specialty Distribution. Our Installation segment primarily installs insulation and other building products. Our Specialty Distribution segment primarily sells and distributes insulation and other building products. Our segments are based on our operating units, for which financial information is regularly evaluated by our chief operating decision maker.

We believe the accompanying unaudited condensed consolidated financial statements contain all adjustments, of a normal recurring nature, necessary to state fairly our financial position as of June 30, 2024, our results of operations and comprehensive income for the three and six months ended June 30, 2024 and 2023, and our cash flows for the six months ended June 30, 2024 and 2023. The condensed consolidated balance sheet at December 31, 2023 was derived from our audited financial statements, but does not include all disclosures required by GAAP.

These condensed consolidated financial statements and related notes should be read in conjunction with the audited Consolidated Financial Statements included in the Company’s Annual report for the year ended December 31, 2023, as filed with the SEC on February 28, 2024.

XML 21 R10.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Accounting Policies
6 Months Ended
Jun. 30, 2024
Accounting Policies  
Accounting Policies

2.  ACCOUNTING POLICIES

Financial Statement Presentation. Our condensed consolidated financial statements have been developed in conformity with GAAP, which requires management to make estimates and assumptions. These estimates and assumptions affect the reported amounts of assets and liabilities and disclosures of contingent liabilities at the date of the financial statements, as well as the reported amounts of revenues and expenses during the reporting periods. Actual results could differ materially from these estimates. All intercompany transactions between TopBuild entities have been eliminated.

Recently Issued Accounting Pronouncements Not Yet Adopted

In November 2023, the FASB issued ASU 2023-07, “Segment Reporting (Topic 280), Improvements to Reportable Segment Disclosures”. This standard amends Topic 280 to require all entities to disclose, on an annual and interim basis, significant segment expenses and an amount for other segment items by reportable segment. This standard is effective for fiscal years beginning after December 15, 2023, and interim periods within fiscal years beginning after December 15, 2024, with early adoption permitted. We do not anticipate that this standard will affect our consolidated results of operations, financial position or cash flows and we are assessing the impact of adoption in our disclosures to the consolidated financial statements.

In December 2023, the FASB issued ASU 2023-09, “Income Taxes (Topic 740), Improvements to Income Tax Disclosures”. This standard amends Topic 740 to require all entities to disclose specific categories in the rate reconciliation, income taxes paid and other income tax information.  This standard is effective for fiscal years beginning after December 15, 2024, with early adoption permitted and should be applied on a prospective basis. We do not anticipate that this standard will affect our consolidated results of operations, financial position or cash flows and we are assessing the impact of its adoption in our disclosures to our consolidated financial statements.

XML 22 R11.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Revenue Recognition
6 Months Ended
Jun. 30, 2024
Revenue Recognition  
Revenue Recognition

3.  REVENUE RECOGNITION

Revenue is disaggregated between our Installation and Specialty Distribution segments and further based on market and product, as we believe this best depicts how the nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factors.  

The following tables present our revenues disaggregated by market (in thousands):

Three Months Ended June 30, 

2024

2023

Installation

Specialty
Distribution

Eliminations

Total

Installation

Specialty
Distribution

Eliminations

Total

Residential

$

712,827

$

237,604

$

(66,331)

$

884,100

$

668,172

$

227,254

$

(56,667)

$

838,759

Commercial/Industrial

138,156

355,222

(11,866)

481,512

140,883

347,234

(9,614)

478,503

Net sales

$

850,983

$

592,826

$

(78,197)

$

1,365,612

$

809,055

$

574,488

$

(66,281)

$

1,317,262

Six Months Ended June 30, 

2024

2023

Installation

Specialty
Distribution

Eliminations

Total

Installation

Specialty
Distribution

Eliminations

Total

Residential

$

1,387,263

$

454,001

$

(122,321)

$

1,718,943

$

1,313,875

$

451,579

$

(108,056)

$

1,657,398

Commercial/Industrial

262,463

684,619

(21,696)

925,386

262,270

681,283

(18,451)

925,102

Net sales

$

1,649,726

$

1,138,620

$

(144,017)

$

2,644,329

$

1,576,145

$

1,132,862

$

(126,507)

$

2,582,500

The following tables present our revenues disaggregated by product (in thousands):

Three Months Ended June 30, 

2024

2023

Installation

Specialty
Distribution

Eliminations

Total

Installation

Specialty
Distribution

Eliminations

Total

Insulation and accessories

$

685,728

$

525,242

$

(68,758)

$

1,142,212

$

633,924

$

513,162

$

(57,599)

$

1,089,487

Glass and windows

62,322

-

-

62,322

68,841

-

-

68,841

Gutters

30,371

49,052

(7,924)

71,499

29,401

44,088

(7,571)

65,918

All other

72,562

18,532

(1,515)

89,579

76,889

17,238

(1,111)

93,016

Net sales

$

850,983

$

592,826

$

(78,197)

$

1,365,612

$

809,055

$

574,488

$

(66,281)

$

1,317,262

Six Months Ended June 30, 

2024

2023

Installation

Specialty Distribution

Eliminations

Total

Installation

Specialty
Distribution

Eliminations

Total

Insulation and accessories

$

1,329,378

1,015,910

(126,267)

$

2,219,021

$

1,234,691

$

1,015,964

$

(109,572)

$

2,141,083

Glass and windows

120,438

-

-

120,438

132,283

-

-

132,283

Gutters

58,339

89,368

(15,232)

132,475

57,679

83,931

(14,736)

126,874

All other

141,571

33,342

(2,518)

172,395

151,492

32,967

(2,199)

182,260

Net sales

$

1,649,726

$

1,138,620

$

(144,017)

$

2,644,329

$

1,576,145

$

1,132,862

$

(126,507)

$

2,582,500

The following table represents our contract assets and contract liabilities with customers, in thousands:

Included in Line Item on

As of

June 30, 

December 31, 

Condensed Consolidated Balance Sheets

2024

2023

Contract Assets:

Receivables, unbilled

Receivables, net

$

76,198

$

64,882

Contract Liabilities:

Deferred revenue

Accrued liabilities

$

15,981

$

18,365

The aggregate amount remaining on uncompleted performance obligations was $385.8 million as of June 30, 2024. We expect to satisfy the performance obligations and recognize revenue on substantially all of these uncompleted contracts over the next 18 months.

On certain of our long-term contracts, a percentage of the total project cost is withheld and not invoiced to the customer and collected until satisfactory completion of the customer’s project, typically within a year. This amount is referred to as retainage and is common practice in the construction industry. Retainage receivables are classified as a component of Receivables, net on our condensed consolidated balance sheets and were $77.0 million and $81.9 million as of June 30, 2024 and December 31, 2023, respectively.

XML 23 R12.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Goodwill and Other Intangibles
6 Months Ended
Jun. 30, 2024
Goodwill and Other Intangibles  
Goodwill and Other Intangibles

4.  GOODWILL AND OTHER INTANGIBLES

We have two reporting units which are also our operating and reportable segments: Installation and Specialty Distribution. Both reporting units contain goodwill. Assets acquired and liabilities assumed are assigned to the applicable reporting unit based on whether the acquired assets and liabilities relate to the operations of such unit and determination of its fair value. Goodwill assigned to the reporting unit is the excess of the fair value of the acquired business over the fair value of the individual assets acquired and liabilities assumed for the reporting unit.

In the fourth quarter of 2023, we performed an annual assessment on our goodwill resulting in no impairment and there were no indicators of impairment for the six months ended June 30, 2024.

Changes in the carrying amount of goodwill for the six months ended June 30, 2024, by segment, were as follows, in thousands:

    

    

    

    

   Accumulated   

    

Gross Goodwill

FX Translation

Gross Goodwill

Impairment

Net Goodwill

December 31, 2023

Additions

Adjustment

June 30, 2024

Losses

June 30, 2024

Goodwill, by segment:

Installation

$

1,901,160

$

44,573

$

-

$

1,945,733

$

(762,021)

$

1,183,712

Specialty Distribution

 

903,429

 

5,721

(2,074)

 

907,076

 

-

 

907,076

Total goodwill

$

2,804,589

$

50,294

$

(2,074)

$

2,852,809

$

(762,021)

$

2,090,788

See Note 11 – Business Combinations for goodwill recognized on acquisitions that occurred during the six months ended June 30, 2024.

Other intangible assets, net includes customer relationships, non-compete agreements, and trademarks / trade names. The following table sets forth our other intangible assets, in thousands:

As of

June 30, 2024

December 31, 2023

Gross definite-lived intangible assets

    

$

854,873

$

827,793

Accumulated amortization

    

(271,732)

(236,735)

Other intangible assets, net

$

583,141

$

591,058

The following table sets forth our amortization expense, in thousands:

Three Months Ended June 30, 

Six Months Ended June 30, 

    

2024

    

2023

    

2024

    

2023

Amortization expense

$

17,947

$

17,211

$

35,633

$

34,107

XML 24 R13.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Long-Term Debt
6 Months Ended
Jun. 30, 2024
Long-Term Debt  
Long-Term Debt

5. LONG-TERM DEBT

The following table reconciles the principal balances of our outstanding debt to our condensed consolidated balance sheets, in thousands:

As of

June 30, 2024

    

December 31, 2023

3.625% Senior Notes due 2029

$

400,000

$

400,000

4.125% Senior Notes due 2032

500,000

500,000

Term loan due 2026

510,000

532,500

Equipment notes

665

2,039

Unamortized debt issuance costs

(13,031)

(14,472)

Total debt, net of unamortized debt issuance costs

1,397,634

1,420,067

Less: current portion of long-term debt

45,665

47,039

Total long-term debt

$

1,351,969

$

1,373,028

The following table sets forth our remaining principal payments for our outstanding debt balances as of June 30, 2024, in thousands:

2024

2025

2026

2027

2028

Thereafter

Total

3.625% Senior Notes

$

-

$

-

$

-

$

-

$

-

$

400,000

$

400,000

4.125% Senior Notes

-

-

-

-

-

500,000

500,000

Term loan

22,500

48,750

438,750

-

-

-

510,000

Equipment notes

665

-

-

-

-

-

665

Total

$

23,165

$

48,750

$

438,750

$

-

$

-

$

900,000

$

1,410,665

Credit Agreement

On July 26, 2023, we entered into Amendment No. 4 to our Credit Agreement, which provided for a new $550.0 million Term Facility Two, the proceeds of which were intended to be used, in part, to finance the acquisition of SPI, including the payment of related fees and expenses. On April 22, 2024, we agreed to a mutual termination of our previous agreement to acquire SPI. In connection with the termination of the SPI acquisition, the Company terminated the commitments with respect to its undrawn Term Facility Two which was provided pursuant to Amendment No. 4. All other terms of the Company’s Credit Agreement, as amended, remain in full force and effect.

The following table outlines the key terms of the Credit Agreement (dollars in thousands):

Senior secured term loan facility

$

600,000

Revolving facility (a)

$

500,000

Sublimit for issuance of letters of credit under revolving facility

$

100,000

Sublimit for swingline loans under revolving facility

$

35,000

Interest rate as of June 30, 2024

6.44

%

Scheduled maturity date

10/7/2026

(a)Use of the sublimits for the issuance of letters of credit and swingline loans reduces the availability under the revolving facility.

Interest expense on borrowings under the Credit Agreement is based on an applicable margin rate plus, at our option, either:  

A base rate determined by reference to the highest of either (i) the federal funds rate plus 0.50 percent, (ii) BofA’s “prime rate,” and (iii) the SOFR rate for U.S. dollar deposits with a term of one month, plus 1.00 percent (Term Facility One); or
A SOFR rate determined by reference to the costs of funds for deposits in U.S. dollars for the interest period relevant to such borrowings, subject to a floor of 0%.

The applicable margin rate is determined based on our Secured Leverage Ratio. In the case of base rate borrowings, the applicable margin rate ranges from 0.00 percent to 1.50 percent for Term Facility One and in the case of SOFR rate borrowings, the applicable margin ranges from 1.00 percent to 2.50 percent for Term Facility One. Borrowings under the Credit Agreement are prepayable at the Company’s option without premium or penalty. The Company is required to make prepayments with the net cash proceeds of certain asset sales and certain extraordinary receipts.

Revolving Facility

The Company has outstanding standby letters of credit that secure our financial obligations related to our workers’ compensation, general insurance, and auto liability programs. These standby letters of credit, as well as any outstanding amount borrowed under our revolving facility, reduce the availability under the revolving facility.  

The following table summarizes our availability under the revolving facility, in thousands:

As of

June 30, 2024

    

December 31, 2023

Revolving facility

$

500,000

$

500,000

Less: standby letters of credit

(63,770)

(63,770)

Availability under revolving facility

$

436,230

$

436,230

We are required to pay commitment fees to the Lenders in respect of any unutilized commitments. The commitment fees range from 0.15 percent to 0.275 percent per annum, depending on our Secured Leverage Ratio. We must also pay customary fees on outstanding letters of credit.

3.625% Senior Notes

The 3.625% Senior Notes are $400.0 million senior unsecured obligations and bear interest at 3.625% per year, payable semiannually in arrears on March 15 and September 15, beginning on September 15, 2021. The 3.625% Senior Notes mature on March 15, 2029, unless redeemed early or repurchased. If we undergo a change in control, we must make an offer to repurchase all of the 3.625% Senior Notes then outstanding at a repurchase price equal to 101% of their aggregate principal amount, plus accrued and unpaid interest (if any) to, but not including, the repurchase date. The Company may redeem the 3.625% Senior Notes, in whole or in part, at any time on or after March 15, 2024 at the redemption prices specified in the notes.

4.125% Senior Notes

The 4.125% Senior Notes are $500.0 million senior unsecured obligations and bear interest at 4.125% per year, payable semiannually in arrears on February 15 and August 15, beginning on August 15, 2022. The 4.125% Senior Notes mature on February 15, 2032, unless redeemed early or repurchased. If we undergo a change in control, we must make an offer to repurchase all of the 4.125% Senior Notes then outstanding at a repurchase price equal to 101% of their aggregate principal amount, plus accrued and unpaid interest (if any) to, but not including, the repurchase date. 

The Company may redeem the 4.125% Senior Notes, in whole or in part, at any time on or after October 15, 2026 at the redemption prices specified in the notes plus accrued and unpaid interest if redeemed during the 12 month period commencing on October 15 of the years set for: 2026 – 102.063%, 2027 – 101.375%, 2028 – 100.688%, 2029 and thereafter – 100.000%. The Company may also redeem a make-whole redemption of the 4.125% Senior Notes at any time prior to October 15, 2026 at the treasury rate plus 50 basis points. Additionally, the Company may redeem up to 40% of the aggregate principal amount of the 4.125% Senior Notes prior to October 15, 2024 with the net cash proceeds of certain sales of its capital stock at 104.125% of the principal amount of the notes, plus accrued and unpaid interest, if any, to the date of redemption only if, after the redemption, at least 60% of the aggregate principal amount of the notes originally issued remains outstanding.

Equipment Notes

We did not issue equipment notes during the six months ended June 30, 2024. The balance of equipment notes, which were issued for the purpose of financing vehicles and equipment, was $0.7 million as of June 30, 2024. The Company’s equipment notes each have a five-year term maturing in 2024 and bear interest at fixed rates between 2.8% and 4.4%.

  Covenant Compliance

The indentures governing our 3.625% Senior Notes and our 4.125% Senior Notes (together, our “Senior Notes”) contain restrictive covenants that, among other things, generally limit the ability of the Company and certain of its subsidiaries (subject to certain exceptions) to (i) create liens, (ii) pay dividends, acquire shares of capital stock and make payments on subordinated debt, (iii) place limitations on distributions from certain subsidiaries, (iv) issue or sell the capital stock of certain subsidiaries, (v) sell assets, (vi) enter into transactions with affiliates, and (vii) effect mergers. The indentures provide for customary events of default which include (subject in certain cases to customary grace and cure periods), among others: nonpayment of principal or interest; breach of covenants or other agreements in the indenture; defaults in failure to pay certain other indebtedness; and certain events of bankruptcy or insolvency. Generally, if an event of default occurs and is continuing under the indenture, the trustee or the holders of at least 30% in aggregate principal amount of each of our Senior Notes then outstanding may declare the principal of, premium, if any, and accrued interest on the Senior Notes subject to such declaration immediately due and payable. The Senior Notes and related guarantees have not been registered under the Securities Act of 1933, and we are not required to register either the Senior Notes or the guarantees in the future.

The Credit Agreement contains certain covenants that limit, among other things, the ability of the Company to incur additional indebtedness or liens; to make certain investments or loans; to make certain restricted payments; to enter into consolidations, mergers, sales of material assets, and other fundamental changes; to transact with affiliates; to enter into agreements restricting the ability of subsidiaries to incur liens or pay dividends; or to make certain accounting changes.  The Credit Agreement contains customary affirmative covenants and events of default.

The Credit Agreement requires that we maintain a Net Leverage Ratio and minimum Interest Coverage Ratio throughout the term of the agreement. The following table outlines the key financial covenants effective for the period covered by this Quarterly Report:

As of June 30, 2024

Maximum Net Leverage Ratio

3.50:1.00

Minimum Interest Coverage Ratio

3.00:1.00

Compliance as of period end

In Compliance

XML 25 R14.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Fair Value Measurements
6 Months Ended
Jun. 30, 2024
Fair Value Measurements  
Fair Value Measurements

6. FAIR VALUE MEASUREMENTS

The carrying values of cash and cash equivalents, receivables, net, and accounts payable are considered to be representative of their respective fair values due to the short-term nature of these instruments.

Fair value measurements were applied to our long-term debt portfolio. We believe the carrying value of our term loan and equipment notes approximate their fair market value primarily due to the fact that the non-performance risk of servicing our debt obligations, as reflected in our business and credit risk profile, has not materially changed since we assumed our debt obligations under the Credit Agreement. In addition, due to the floating-rate nature of our term loan, the market value is not subject to variability solely due to changes in the general level of interest rates as is the case with a fixed-rate debt obligation.

Based on market trades of our 3.625% Senior Notes and our 4.125% Senior Notes close to June 30, 2024 (Level 1 fair value measurement), we estimate the fair value of each in the table below:

As of June 30, 2024

Fair Value

Gross Carrying Value

3.625% Senior Notes

$

361,440

$

400,000

4.125% Senior Notes

$

441,450

$

500,000

XML 26 R15.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Segment Information
6 Months Ended
Jun. 30, 2024
Segment Information  
Segment Information

7.  SEGMENT INFORMATION

The following tables set forth our net sales and operating results by segment, in thousands:

Three Months Ended June 30, 

2024

2023

2024

2023

Net Sales

Operating Profit (c)

Operations by segment (a):

Installation

$

850,983

$

809,055

$

170,718

$

172,278

Specialty Distribution

592,826

574,488

89,373

85,980

Intercompany eliminations (b)

(78,197)

(66,281)

(12,840)

(11,198)

Total

$

1,365,612

$

1,317,262

247,251

247,060

General corporate expense, net (d)

(36,859)

(9,957)

Operating profit, as reported

210,392

237,103

Other expense, net

(7,218)

(13,953)

Income before income taxes

$

203,174

$

223,150

Six Months Ended June 30, 

2024

2023

2024

2023

Net Sales

Operating Profit (c)

Operations by segment (a):

Installation

$

1,649,726

$

1,576,145

$

327,475

$

319,176

Specialty Distribution

1,138,620

1,132,862

166,951

159,313

Intercompany eliminations (b)

(144,017)

(126,507)

(23,600)

(21,169)

Total

$

2,644,329

$

2,582,500

470,826

457,320

General corporate expense, net (d)

(45,926)

(20,786)

Operating profit, as reported

424,900

436,534

Other expense, net

(14,731)

(30,069)

Income before income taxes

$

410,169

$

406,465

(a)All of our operations are located primarily in the U.S. and to a lesser extent Canada.
(b)Intercompany net sales and operating profit resulted from sales made by Specialty Distribution to Installation which are eliminated in consolidation.
(c)Segment operating profit includes an allocation of general corporate expenses attributable to the operating segments which is based on direct benefit or usage (such as salaries of corporate employees who directly support the segment).
(d)General corporate expense, net includes expenses not specifically attributable to our segments for functions such as corporate human resources, finance, and legal, including salaries, benefits, and other related costs.  In our second quarter of 2024, we incurred an acquisition termination fee of $23.0 million (see Note 12. Business Combinations).

XML 27 R16.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Income Taxes
6 Months Ended
Jun. 30, 2024
Income Taxes  
Income Taxes

8.  INCOME TAXES    

Our effective tax rates were 25.8 percent and 26.1 percent for the three and six months ended June 30, 2024, respectively. The effective tax rates for the three and six months ended June 30, 2023, were 26.3 percent and 26.1 percent, respectively. The lower 2024 tax rate for the three months ended June 30, 2024, compared to the three months ended June 30, 2023, was primarily related to state tax adjustments.

A tax expense of $2.1 million and $0.2 million related to share-based compensation was recognized in our condensed consolidated statements of operations as a discrete item in income tax expense for the six months ended June 30, 2024 and 2023, respectively.

XML 28 R17.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Net Income Per Share
6 Months Ended
Jun. 30, 2024
Net Income Per Share  
Net Income Per Share

9. NET INCOME PER SHARE

Basic net income per share is calculated by dividing net income by the number of weighted average shares outstanding during the period, without consideration for common stock equivalents. Diluted net income per share is calculated by adjusting the number of weighted average shares outstanding for the dilutive effect of common stock equivalents outstanding for the period, determined using the treasury stock method.

Basic and diluted net income per share were computed as follows:

Three Months Ended June 30, 

 

Six Months Ended June 30, 

2024

2023

 

2024

2023

Net income (in thousands)

$

150,723

$

164,400

$

303,104

$

300,270

Weighted average number of common shares outstanding - basic

31,324,833

31,599,744

31,483,144

31,575,337

Dilutive effect of common stock equivalents:

RSAs with service-based conditions

34,973

25,052

38,083

23,848

RSAs with market-based conditions

61,856

20,039

61,491

22,450

RSAs with performance-based conditions

10,885

1,974

17,474

15,503

Stock options

91,516

84,998

93,332

85,522

Weighted average number of common shares outstanding - diluted

31,524,063

31,731,807

31,693,524

31,722,660

Basic net income per common share

$

4.81

$

5.20

$

9.63

$

9.51

Diluted net income per common share

$

4.78

$

5.18

$

9.56

$

9.47

The following table summarizes shares excluded from the calculation of diluted net income per share because their effect would have been anti-dilutive:

Three Months Ended June 30, 

 

Six Months Ended June 30, 

2024

 

2023

 

2024

 

2023

Anti-dilutive common stock equivalents:

RSAs with service-based conditions

-

-

-

5,582

RSAs with market-based conditions

-

-

-

4,467

RSAs with performance-based conditions

-

-

-

-

Stock options

-

14,801

-

18,541

Total anti-dilutive common stock equivalents

-

14,801

-

28,590

XML 29 R18.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Share-Based Compensation
6 Months Ended
Jun. 30, 2024
Share-Based Compensation.  
Share-Based Compensation

10. SHARE-BASED COMPENSATION

Eligible employees participate in the 2015 LTIP, which authorizes the Board to grant stock options, stock appreciation rights, restricted shares, restricted share units, performance awards, and dividend equivalents. All grants are made by issuing new shares and no more than 4.0 million shares of common stock may be issued under the 2015 LTIP. As of June 30, 2024, we had 1.7 million shares remaining available for issuance under the 2015 LTIP.

Share-based compensation expense is included in selling, general, and administrative expense. The income tax effect associated with share-based compensation awards is included in income tax expense.  

The following table presents share-based compensation amounts recognized in our condensed consolidated statements of operations, in thousands:

Three Months Ended June 30, 

Six Months Ended June 30, 

2024

2023

2024

2023

Share-based compensation expense

$

4,632

$

3,751

$

9,759

$

6,886

Income tax expense

$

(98)

$

(180)

$

(2,107)

$

(225)

The following table presents a summary of our share-based compensation activity for the six months ended June 30, 2024, in thousands, except per share amounts:

RSAs

Stock Options

Number of Shares

   

Weighted Average Grant Date Fair Value Per Share

   

Number of Shares

   

Weighted Average Grant Date Fair Value Per Share

   

Weighted Average Exercise Price Per Share

   

Aggregate
Intrinsic
Value

Balance December 31, 2023

195.5

$

223.49

128.7

$

36.65

$

98.58

$

35,462.8

Granted

45.0

$

419.27

$

$

Converted/Exercised

(52.6)

$

229.41

(16.0)

$

82.64

$

201.27

$

3,312.8

Forfeited/Expired

(2.7)

$

281.40

$

$

Balance June 30, 2024

185.2

$

268.77

112.7

$

30.10

$

83.97

$

33,930.3

Exercisable June 30, 2024 (a)

112.7

$

30.10

$

83.97

$

33,930.3

(a)The weighted average remaining contractual term for vested stock options is approximately 4.7 years.

We have unrecognized share-based compensation expense related to unvested awards as shown in the following table, dollars in thousands:

As of June 30, 2024

Unrecognized Compensation Expense
on Unvested Awards

Weighted Average
Remaining
Compensation Expense Period

RSAs

$

27,675

1.1

Stock options

Total unrecognized compensation expense related to unvested awards

$

27,675

Our RSAs with performance-based conditions are evaluated on a quarterly basis with adjustments to compensation expense based on the likelihood of the performance target being achieved or exceeded. The following table shows the range of payouts and the related expense for our outstanding RSAs with performance-based conditions, in thousands:

Payout Ranges and Related Expense

RSAs with Performance-Based Conditions

Grant Date Fair Value

0%

25%

100%

200%

February 15, 2022

$

2,978

$

-

$

745

$

2,978

$

5,956

February 21, 2023

$

4,037

$

-

$

1,009

$

4,037

$

8,074

February 21, 2024

$

4,824

$

-

$

1,206

$

4,824

$

9,648

During the first quarter of 2024, RSAs with performance-based conditions that were granted on February 16, 2021 vested based on cumulative three-year achievement of 200%. Total compensation expense recognized over the three-year performance period, net of forfeitures, was $4.4 million.

The fair value of our RSAs with a market-based condition granted under the 2015 LTIP was determined using a Monte Carlo simulation. The following are key inputs in the Monte Carlo analysis for awards granted in 2024, 2023, and 2022:

2024

2023

2022

Measurement period (years)

2.86

2.86

2.87

Risk free interest rate

4.36

%

4.42

%

1.76

%

Dividend yield

0.00

%

0.00

%

0.00

%

Estimated fair value of market-based RSAs at grant date

$

503.68

$

270.64

$

298.20

XML 30 R19.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Share Repurchase Program
6 Months Ended
Jun. 30, 2024
Share Repurchase Program  
Share Repurchase Program

11. SHARE REPURCHASE PROGRAM

On July 25, 2022, our Board authorized the 2022 Repurchase Program, pursuant to which the Company may purchase up to $200 million of our common stock. During the second quarter of 2024, the Company utilized the remaining amount authorized under the program of $154.4 million. We repurchased a total of 677,657 shares of our common stock under the 2022 Repurchase Program at an average price of $295.13.

On May 3, 2024, our Board authorized the 2024 Repurchase Program, pursuant to which the Company may purchase up to $1.0 billion of our common stock. Share repurchases may be executed through various means including open market purchases, privately negotiated transactions, accelerated share repurchase transactions, or other available means.  The 2024 Repurchase Program does not obligate the Company to purchase any shares and has no expiration date.  Authorization for the 2024 Repurchase Program may be terminated, increased, or decreased by the Board at its discretion at any time. During the second quarter, the Company began repurchasing shares and, as of June 30, 2024, the Company has $649.2 million remaining under the 2024 Share Repurchase Program.

Effective January 1, 2023, the Inflation Reduction Act of 2022 mandated a 1% excise tax on all share repurchases. Excise tax obligations that result from our share repurchases are included in the cost of treasury stock. As of June 30, 2024, the Company had an estimated excise tax liability of $5.2 million for stock repurchases during the three months ended June 30, 2024, which is included in “Accrued liabilities” in our Condensed Consolidated Balance Sheet.

The following table sets forth our share repurchases under the share repurchases programs in 2024. No shares were repurchased during 2023.

Three and Six Months Ended

    

June 30, 2024

Number of shares repurchased

1,246,182

Share repurchase cost (in thousands) (a)

$

510,443

    

(a)Includes $5.2 million of excise taxes

XML 31 R20.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Business Combinations
6 Months Ended
Jun. 30, 2024
Business Combinations  
Business Combinations

12. BUSINESS COMBINATIONS

Acquiring businesses is a key part of our ongoing strategy to grow our company and expand our offerings. Each acquisition has been accounted for as a business combination under ASC 805, “Business Combinations.” Acquisition related costs were $26.3 million and $26.8 million in the three and six months ended June 30, 2024, respectively, which includes $23.0 million paid in the second quarter in connection with the mutual termination of our previous agreement to acquire SPI. Acquisition related costs were $1.1 million and $2.8 million for the three and six months ended June 30, 2023, respectively. Acquisition related costs are included in selling, general, and administrative expense in our condensed consolidated statements of operations.

On February 15, 2024, we acquired the assets of the residential and light commercial insulation business Brabble. This installation acquisition enhanced our presence in North Carolina. The purchase price of $5.4 million was funded by cash on hand and we recognized $3.0 million of goodwill in connection with this acquisition.

On March 1, 2024, we acquired the assets of the residential insulation business Morris Black. This installation acquisition enhanced our presence in Pennsylvania. The purchase price of $3.6 million was funded by cash on hand and we recognized $2.1 million of goodwill in connection with this acquisition.

On March 1, 2024, we acquired the assets of the customized insulation products and accessories business PCI. This specialty distribution acquisition has a national customer base focused on the domestic pest control industry. The purchase

price of $13.8 million was funded by cash on hand and we recognized $5.7 million of goodwill in connection with this acquisition.

On April 18, 2024, we acquired the assets of the residential and light commercial insulation business Green Space. This installation acquisition enhanced our presence in Missouri and neighboring states. The purchase price of approximately $4.3 million was funded by cash on hand and we recognized $2.6 million of goodwill in connection with this acquisition.

On May 16, 2024, we acquired the assets of the residential and light commercial insulation business Insulation Works. This installation acquisition enhanced our presence in Arkansas and extended our expertise to the agricultural business. The purchase price of approximately $25.2 million was funded by cash on hand and we recognized $14.3 million of goodwill in connection with this acquisition.

On May 31, 2024, we acquired the assets of the residential and light commercial insulation business Texas Insulation. This installation acquisition enhanced our presence in Texas. The purchase price of approximately $35.9 million was funded by cash on hand and we recognized $22.7 million of goodwill in connection with this acquisition.

The estimate of acquired customer relationships related to our 2024 acquisitions was $29.2 million and the weighted average useful life is 12 years.

As third-party or internal valuations are finalized, certain tax aspects of the foregoing transactions are completed, and customer post-closing reviews are concluded, adjustments may be made to the fair value of assets acquired, and in some cases total purchase price, through the end of each measurement period, generally one year following the applicable acquisition date.  

During the six months ended June 30, 2023, we acquired SRI. The purchase price of $45.3 was funded by cash on hand and we recognized goodwill of $23.1 million in connection with this acquisition.

Goodwill to be recognized in connection with acquisitions is attributable to the synergies expected to be realized and improvements in the businesses after the acquisitions. Primarily all of the $50.3 million and $23.1 million of goodwill recorded from acquisitions completed in the six months ended June 30, 2024 and 2023, respectively, is expected to be deductible for income tax purposes.

XML 32 R21.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Accrued Liabilities
6 Months Ended
Jun. 30, 2024
Accrued Liabilities.  
Accrued Liabilities

13.  ACCRUED LIABILITIES

The following table sets forth the components of accrued liabilities, in thousands:

As of

    

June 30, 2024

    

December 31, 2023

Accrued liabilities:

Salaries, wages, and bonus/commissions

$

62,862

$

67,471

Insurance liabilities

31,417

29,920

Sales, property, and excise taxes

21,206

17,002

Deferred revenue

15,981

18,365

Customer rebates

12,306

17,326

Interest payable on long-term debt

12,138

12,139

Other

20,843

24,994

Total accrued liabilities

$

176,753

$

187,217

See Note 3 – Revenue Recognition for discussion of our deferred revenue balances.

XML 33 R22.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Other Commitments and Contingencies
6 Months Ended
Jun. 30, 2024
Other Commitments and Contingencies  
Other Commitments and Contingencies

14.  OTHER COMMITMENTS AND CONTINGENCIES

Litigation. We are subject to certain claims, charges, litigation, and other proceedings in the ordinary course of our business, including those arising from or related to contractual matters, intellectual property, personal injury, environmental matters, product liability, product recalls, construction defects, insurance coverage, personnel and employment disputes, antitrust, and other matters, including class actions. We believe we have adequate defenses in these matters, and we do not believe that the ultimate outcome of these matters will have a material adverse effect on us. However, there is no assurance that we will prevail in any of these pending matters, and we could in the future incur judgments, enter into settlements of claims, or revise our expectations regarding the outcome of these matters, which could materially impact our liquidity and our results of operations.

Other Matters. We enter into contracts, which include customary indemnities that are standard for the industries in which we operate. Such indemnities include, among other things, claims against our builder customers for issues relating to our workmanship. We generally exclude from our contracts with builder customers indemnity relating to product quality and warranty claims, as we pass such claims directly to the manufacturers of the products we install or distribute. In conjunction with divestitures and other transactions, we occasionally provide customary indemnities relating to various items including, among others, the enforceability of trademarks, legal and environmental issues, and asset valuations. We evaluate the probability that we may incur liabilities under these customary indemnities and appropriately record an estimated liability when deemed probable.

We also maintain indemnification agreements with our directors and officers that may require us to indemnify them against liabilities that arise by reason of their status or service as directors or officers, except as prohibited by applicable law.

XML 34 R23.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Pay vs Performance Disclosure - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2024
Mar. 31, 2024
Jun. 30, 2023
Mar. 31, 2023
Jun. 30, 2024
Jun. 30, 2023
Pay vs Performance Disclosure            
Net Income (Loss) $ 150,723 $ 152,381 $ 164,400 $ 135,870 $ 303,104 $ 300,270
XML 35 R24.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Insider Trading Arrangements
3 Months Ended
Jun. 30, 2024
Trading Arrangements, by Individual  
Rule 10b5-1 Arrangement Adopted false
Non-Rule 10b5-1 Arrangement Adopted false
Rule 10b5-1 Arrangement Terminated false
Non-Rule 10b5-1 Arrangement Terminated false
XML 36 R25.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Accounting Policies (Policies)
6 Months Ended
Jun. 30, 2024
Accounting Policies  
Financial Statement Presentation

Financial Statement Presentation. Our condensed consolidated financial statements have been developed in conformity with GAAP, which requires management to make estimates and assumptions. These estimates and assumptions affect the reported amounts of assets and liabilities and disclosures of contingent liabilities at the date of the financial statements, as well as the reported amounts of revenues and expenses during the reporting periods. Actual results could differ materially from these estimates. All intercompany transactions between TopBuild entities have been eliminated.

Recently Issued Accounting Pronouncements Not Yet Adopted

Recently Issued Accounting Pronouncements Not Yet Adopted

In November 2023, the FASB issued ASU 2023-07, “Segment Reporting (Topic 280), Improvements to Reportable Segment Disclosures”. This standard amends Topic 280 to require all entities to disclose, on an annual and interim basis, significant segment expenses and an amount for other segment items by reportable segment. This standard is effective for fiscal years beginning after December 15, 2023, and interim periods within fiscal years beginning after December 15, 2024, with early adoption permitted. We do not anticipate that this standard will affect our consolidated results of operations, financial position or cash flows and we are assessing the impact of adoption in our disclosures to the consolidated financial statements.

In December 2023, the FASB issued ASU 2023-09, “Income Taxes (Topic 740), Improvements to Income Tax Disclosures”. This standard amends Topic 740 to require all entities to disclose specific categories in the rate reconciliation, income taxes paid and other income tax information.  This standard is effective for fiscal years beginning after December 15, 2024, with early adoption permitted and should be applied on a prospective basis. We do not anticipate that this standard will affect our consolidated results of operations, financial position or cash flows and we are assessing the impact of its adoption in our disclosures to our consolidated financial statements.

XML 37 R26.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Revenue Recognition (Tables)
6 Months Ended
Jun. 30, 2024
Revenue Recognition  
Schedule of revenues disaggregated by market and product

The following tables present our revenues disaggregated by market (in thousands):

Three Months Ended June 30, 

2024

2023

Installation

Specialty
Distribution

Eliminations

Total

Installation

Specialty
Distribution

Eliminations

Total

Residential

$

712,827

$

237,604

$

(66,331)

$

884,100

$

668,172

$

227,254

$

(56,667)

$

838,759

Commercial/Industrial

138,156

355,222

(11,866)

481,512

140,883

347,234

(9,614)

478,503

Net sales

$

850,983

$

592,826

$

(78,197)

$

1,365,612

$

809,055

$

574,488

$

(66,281)

$

1,317,262

Six Months Ended June 30, 

2024

2023

Installation

Specialty
Distribution

Eliminations

Total

Installation

Specialty
Distribution

Eliminations

Total

Residential

$

1,387,263

$

454,001

$

(122,321)

$

1,718,943

$

1,313,875

$

451,579

$

(108,056)

$

1,657,398

Commercial/Industrial

262,463

684,619

(21,696)

925,386

262,270

681,283

(18,451)

925,102

Net sales

$

1,649,726

$

1,138,620

$

(144,017)

$

2,644,329

$

1,576,145

$

1,132,862

$

(126,507)

$

2,582,500

The following tables present our revenues disaggregated by product (in thousands):

Three Months Ended June 30, 

2024

2023

Installation

Specialty
Distribution

Eliminations

Total

Installation

Specialty
Distribution

Eliminations

Total

Insulation and accessories

$

685,728

$

525,242

$

(68,758)

$

1,142,212

$

633,924

$

513,162

$

(57,599)

$

1,089,487

Glass and windows

62,322

-

-

62,322

68,841

-

-

68,841

Gutters

30,371

49,052

(7,924)

71,499

29,401

44,088

(7,571)

65,918

All other

72,562

18,532

(1,515)

89,579

76,889

17,238

(1,111)

93,016

Net sales

$

850,983

$

592,826

$

(78,197)

$

1,365,612

$

809,055

$

574,488

$

(66,281)

$

1,317,262

Six Months Ended June 30, 

2024

2023

Installation

Specialty Distribution

Eliminations

Total

Installation

Specialty
Distribution

Eliminations

Total

Insulation and accessories

$

1,329,378

1,015,910

(126,267)

$

2,219,021

$

1,234,691

$

1,015,964

$

(109,572)

$

2,141,083

Glass and windows

120,438

-

-

120,438

132,283

-

-

132,283

Gutters

58,339

89,368

(15,232)

132,475

57,679

83,931

(14,736)

126,874

All other

141,571

33,342

(2,518)

172,395

151,492

32,967

(2,199)

182,260

Net sales

$

1,649,726

$

1,138,620

$

(144,017)

$

2,644,329

$

1,576,145

$

1,132,862

$

(126,507)

$

2,582,500

Schedule of contract assets and contract liabilities with customers

The following table represents our contract assets and contract liabilities with customers, in thousands:

Included in Line Item on

As of

June 30, 

December 31, 

Condensed Consolidated Balance Sheets

2024

2023

Contract Assets:

Receivables, unbilled

Receivables, net

$

76,198

$

64,882

Contract Liabilities:

Deferred revenue

Accrued liabilities

$

15,981

$

18,365

XML 38 R27.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Goodwill and Other Intangibles (Tables)
6 Months Ended
Jun. 30, 2024
Goodwill and Other Intangibles  
Changes in the carrying amount of goodwill by segment

    

    

    

    

   Accumulated   

    

Gross Goodwill

FX Translation

Gross Goodwill

Impairment

Net Goodwill

December 31, 2023

Additions

Adjustment

June 30, 2024

Losses

June 30, 2024

Goodwill, by segment:

Installation

$

1,901,160

$

44,573

$

-

$

1,945,733

$

(762,021)

$

1,183,712

Specialty Distribution

 

903,429

 

5,721

(2,074)

 

907,076

 

-

 

907,076

Total goodwill

$

2,804,589

$

50,294

$

(2,074)

$

2,852,809

$

(762,021)

$

2,090,788

Schedule of other intangible assets

Other intangible assets, net includes customer relationships, non-compete agreements, and trademarks / trade names. The following table sets forth our other intangible assets, in thousands:

As of

June 30, 2024

December 31, 2023

Gross definite-lived intangible assets

    

$

854,873

$

827,793

Accumulated amortization

    

(271,732)

(236,735)

Other intangible assets, net

$

583,141

$

591,058

Schedule of amortization expense

As of

June 30, 2024

December 31, 2023

Gross definite-lived intangible assets

    

$

854,873

$

827,793

Accumulated amortization

    

(271,732)

(236,735)

Other intangible assets, net

$

583,141

$

591,058

XML 39 R28.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Long-Term Debt (Tables)
6 Months Ended
Jun. 30, 2024
Long-Term Debt  
Reconciliation of principal balance of outstanding debt

The following table reconciles the principal balances of our outstanding debt to our condensed consolidated balance sheets, in thousands:

As of

June 30, 2024

    

December 31, 2023

3.625% Senior Notes due 2029

$

400,000

$

400,000

4.125% Senior Notes due 2032

500,000

500,000

Term loan due 2026

510,000

532,500

Equipment notes

665

2,039

Unamortized debt issuance costs

(13,031)

(14,472)

Total debt, net of unamortized debt issuance costs

1,397,634

1,420,067

Less: current portion of long-term debt

45,665

47,039

Total long-term debt

$

1,351,969

$

1,373,028

Schedule of remaining principal payments of debt

The following table sets forth our remaining principal payments for our outstanding debt balances as of June 30, 2024, in thousands:

2024

2025

2026

2027

2028

Thereafter

Total

3.625% Senior Notes

$

-

$

-

$

-

$

-

$

-

$

400,000

$

400,000

4.125% Senior Notes

-

-

-

-

-

500,000

500,000

Term loan

22,500

48,750

438,750

-

-

-

510,000

Equipment notes

665

-

-

-

-

-

665

Total

$

23,165

$

48,750

$

438,750

$

-

$

-

$

900,000

$

1,410,665

Summary of key terms of the Credit Agreement

The following table outlines the key terms of the Credit Agreement (dollars in thousands):

Senior secured term loan facility

$

600,000

Revolving facility (a)

$

500,000

Sublimit for issuance of letters of credit under revolving facility

$

100,000

Sublimit for swingline loans under revolving facility

$

35,000

Interest rate as of June 30, 2024

6.44

%

Scheduled maturity date

10/7/2026

(a)Use of the sublimits for the issuance of letters of credit and swingline loans reduces the availability under the revolving facility.

Schedule of availability under the Revolving Facility

The following table summarizes our availability under the revolving facility, in thousands:

As of

June 30, 2024

    

December 31, 2023

Revolving facility

$

500,000

$

500,000

Less: standby letters of credit

(63,770)

(63,770)

Availability under revolving facility

$

436,230

$

436,230

Schedule of the key financial covenants

As of June 30, 2024

Maximum Net Leverage Ratio

3.50:1.00

Minimum Interest Coverage Ratio

3.00:1.00

Compliance as of period end

In Compliance

XML 40 R29.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Fair Value Measurements (Tables)
6 Months Ended
Jun. 30, 2024
Fair Value Measurements  
Schedule of fair value of liabilities

As of June 30, 2024

Fair Value

Gross Carrying Value

3.625% Senior Notes

$

361,440

$

400,000

4.125% Senior Notes

$

441,450

$

500,000

XML 41 R30.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Segment Information (Tables)
6 Months Ended
Jun. 30, 2024
Segment Information  
Schedule of net sales and operating results by segment

The following tables set forth our net sales and operating results by segment, in thousands:

Three Months Ended June 30, 

2024

2023

2024

2023

Net Sales

Operating Profit (c)

Operations by segment (a):

Installation

$

850,983

$

809,055

$

170,718

$

172,278

Specialty Distribution

592,826

574,488

89,373

85,980

Intercompany eliminations (b)

(78,197)

(66,281)

(12,840)

(11,198)

Total

$

1,365,612

$

1,317,262

247,251

247,060

General corporate expense, net (d)

(36,859)

(9,957)

Operating profit, as reported

210,392

237,103

Other expense, net

(7,218)

(13,953)

Income before income taxes

$

203,174

$

223,150

Six Months Ended June 30, 

2024

2023

2024

2023

Net Sales

Operating Profit (c)

Operations by segment (a):

Installation

$

1,649,726

$

1,576,145

$

327,475

$

319,176

Specialty Distribution

1,138,620

1,132,862

166,951

159,313

Intercompany eliminations (b)

(144,017)

(126,507)

(23,600)

(21,169)

Total

$

2,644,329

$

2,582,500

470,826

457,320

General corporate expense, net (d)

(45,926)

(20,786)

Operating profit, as reported

424,900

436,534

Other expense, net

(14,731)

(30,069)

Income before income taxes

$

410,169

$

406,465

(a)All of our operations are located primarily in the U.S. and to a lesser extent Canada.
(b)Intercompany net sales and operating profit resulted from sales made by Specialty Distribution to Installation which are eliminated in consolidation.
(c)Segment operating profit includes an allocation of general corporate expenses attributable to the operating segments which is based on direct benefit or usage (such as salaries of corporate employees who directly support the segment).
(d)General corporate expense, net includes expenses not specifically attributable to our segments for functions such as corporate human resources, finance, and legal, including salaries, benefits, and other related costs.  In our second quarter of 2024, we incurred an acquisition termination fee of $23.0 million (see Note 12. Business Combinations).

XML 42 R31.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Net Income Per Share (Tables)
6 Months Ended
Jun. 30, 2024
Net Income Per Share  
Schedule of basic and diluted income per share

Three Months Ended June 30, 

 

Six Months Ended June 30, 

2024

2023

 

2024

2023

Net income (in thousands)

$

150,723

$

164,400

$

303,104

$

300,270

Weighted average number of common shares outstanding - basic

31,324,833

31,599,744

31,483,144

31,575,337

Dilutive effect of common stock equivalents:

RSAs with service-based conditions

34,973

25,052

38,083

23,848

RSAs with market-based conditions

61,856

20,039

61,491

22,450

RSAs with performance-based conditions

10,885

1,974

17,474

15,503

Stock options

91,516

84,998

93,332

85,522

Weighted average number of common shares outstanding - diluted

31,524,063

31,731,807

31,693,524

31,722,660

Basic net income per common share

$

4.81

$

5.20

$

9.63

$

9.51

Diluted net income per common share

$

4.78

$

5.18

$

9.56

$

9.47

Summary of shares excluded from the calculation of diluted income per share because their effect would have been anti-dilutive

Three Months Ended June 30, 

 

Six Months Ended June 30, 

2024

 

2023

 

2024

 

2023

Anti-dilutive common stock equivalents:

RSAs with service-based conditions

-

-

-

5,582

RSAs with market-based conditions

-

-

-

4,467

RSAs with performance-based conditions

-

-

-

-

Stock options

-

14,801

-

18,541

Total anti-dilutive common stock equivalents

-

14,801

-

28,590

XML 43 R32.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Share-Based Compensation (Tables)
6 Months Ended
Jun. 30, 2024
Share-Based Compensation  
Schedule of share-based compensation expense and related income tax benefit

The following table presents share-based compensation amounts recognized in our condensed consolidated statements of operations, in thousands:

Three Months Ended June 30, 

Six Months Ended June 30, 

2024

2023

2024

2023

Share-based compensation expense

$

4,632

$

3,751

$

9,759

$

6,886

Income tax expense

$

(98)

$

(180)

$

(2,107)

$

(225)

Schedule of share-based compensation activity

The following table presents a summary of our share-based compensation activity for the six months ended June 30, 2024, in thousands, except per share amounts:

RSAs

Stock Options

Number of Shares

   

Weighted Average Grant Date Fair Value Per Share

   

Number of Shares

   

Weighted Average Grant Date Fair Value Per Share

   

Weighted Average Exercise Price Per Share

   

Aggregate
Intrinsic
Value

Balance December 31, 2023

195.5

$

223.49

128.7

$

36.65

$

98.58

$

35,462.8

Granted

45.0

$

419.27

$

$

Converted/Exercised

(52.6)

$

229.41

(16.0)

$

82.64

$

201.27

$

3,312.8

Forfeited/Expired

(2.7)

$

281.40

$

$

Balance June 30, 2024

185.2

$

268.77

112.7

$

30.10

$

83.97

$

33,930.3

Exercisable June 30, 2024 (a)

112.7

$

30.10

$

83.97

$

33,930.3

(a)The weighted average remaining contractual term for vested stock options is approximately 4.7 years.
Schedule of unrecognized share-based compensation expense relating to unvested awards

We have unrecognized share-based compensation expense related to unvested awards as shown in the following table, dollars in thousands:

As of June 30, 2024

Unrecognized Compensation Expense
on Unvested Awards

Weighted Average
Remaining
Compensation Expense Period

RSAs

$

27,675

1.1

Stock options

Total unrecognized compensation expense related to unvested awards

$

27,675

Schedule of key inputs used to estimate the fair value of awards

2024

2023

2022

Measurement period (years)

2.86

2.86

2.87

Risk free interest rate

4.36

%

4.42

%

1.76

%

Dividend yield

0.00

%

0.00

%

0.00

%

Estimated fair value of market-based RSAs at grant date

$

503.68

$

270.64

$

298.20

Performance-based conditions | Restricted Stock Awards  
Share-Based Compensation  
Schedule of the range of payouts and the related expense for RSAs with performance-based conditions The following table shows the range of payouts and the related expense for our outstanding RSAs with performance-based conditions, in thousands:

Payout Ranges and Related Expense

RSAs with Performance-Based Conditions

Grant Date Fair Value

0%

25%

100%

200%

February 15, 2022

$

2,978

$

-

$

745

$

2,978

$

5,956

February 21, 2023

$

4,037

$

-

$

1,009

$

4,037

$

8,074

February 21, 2024

$

4,824

$

-

$

1,206

$

4,824

$

9,648

XML 44 R33.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Share Repurchase Program (Tables)
6 Months Ended
Jun. 30, 2024
Share Repurchase Program  
Schedule of share repurchase program

The following table sets forth our share repurchases under the share repurchases programs in 2024. No shares were repurchased during 2023.

Three and Six Months Ended

    

June 30, 2024

Number of shares repurchased

1,246,182

Share repurchase cost (in thousands) (a)

$

510,443

    

(a)Includes $5.2 million of excise taxes

XML 45 R34.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Accrued Liabilities (Tables)
6 Months Ended
Jun. 30, 2024
Accrued Liabilities.  
Schedule of components of accrued liabilities

The following table sets forth the components of accrued liabilities, in thousands:

As of

    

June 30, 2024

    

December 31, 2023

Accrued liabilities:

Salaries, wages, and bonus/commissions

$

62,862

$

67,471

Insurance liabilities

31,417

29,920

Sales, property, and excise taxes

21,206

17,002

Deferred revenue

15,981

18,365

Customer rebates

12,306

17,326

Interest payable on long-term debt

12,138

12,139

Other

20,843

24,994

Total accrued liabilities

$

176,753

$

187,217

XML 46 R35.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Basis of Presentation (Details)
6 Months Ended
Jun. 30, 2024
segment
Basis of Presentation  
Number of reportable segments 2
XML 47 R36.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Revenue Recognition - Disaggregation (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2024
Jun. 30, 2023
Jun. 30, 2024
Jun. 30, 2023
Revenue Recognition        
Net sales $ 1,365,612 $ 1,317,262 $ 2,644,329 $ 2,582,500
Insulation and accessories        
Revenue Recognition        
Net sales 1,142,212 1,089,487 2,219,021 2,141,083
Glass and windows        
Revenue Recognition        
Net sales 62,322 68,841 120,438 132,283
Gutters        
Revenue Recognition        
Net sales 71,499 65,918 132,475 126,874
All other        
Revenue Recognition        
Net sales 89,579 93,016 172,395 182,260
Residential        
Revenue Recognition        
Net sales 884,100 838,759 1,718,943 1,657,398
Commercial and Industrial        
Revenue Recognition        
Net sales 481,512 478,503 925,386 925,102
Operating Segment        
Revenue Recognition        
Net sales     2,644,329 2,582,500
Operating Segment | Installation        
Revenue Recognition        
Net sales 850,983 809,055 1,649,726 1,576,145
Operating Segment | Installation | Insulation and accessories        
Revenue Recognition        
Net sales 685,728 633,924 1,329,378 1,234,691
Operating Segment | Installation | Glass and windows        
Revenue Recognition        
Net sales 62,322 68,841 120,438 132,283
Operating Segment | Installation | Gutters        
Revenue Recognition        
Net sales 30,371 29,401 58,339 57,679
Operating Segment | Installation | All other        
Revenue Recognition        
Net sales 72,562 76,889 141,571 151,492
Operating Segment | Installation | Residential        
Revenue Recognition        
Net sales 712,827 668,172 1,387,263 1,313,875
Operating Segment | Installation | Commercial and Industrial        
Revenue Recognition        
Net sales 138,156 140,883 262,463 262,270
Operating Segment | Specialty Distribution        
Revenue Recognition        
Net sales 592,826 574,488 1,138,620 1,132,862
Operating Segment | Specialty Distribution | Insulation and accessories        
Revenue Recognition        
Net sales 525,242 513,162 1,015,910 1,015,964
Operating Segment | Specialty Distribution | Gutters        
Revenue Recognition        
Net sales 49,052 44,088 89,368 83,931
Operating Segment | Specialty Distribution | All other        
Revenue Recognition        
Net sales 18,532 17,238 33,342 32,967
Operating Segment | Specialty Distribution | Residential        
Revenue Recognition        
Net sales 237,604 227,254 454,001 451,579
Operating Segment | Specialty Distribution | Commercial and Industrial        
Revenue Recognition        
Net sales 355,222 347,234 684,619 681,283
Eliminations        
Revenue Recognition        
Net sales (78,197) (66,281) (144,017) (126,507)
Eliminations | Insulation and accessories        
Revenue Recognition        
Net sales (68,758) (57,599) (126,267) (109,572)
Eliminations | Gutters        
Revenue Recognition        
Net sales (7,924) (7,571) (15,232) (14,736)
Eliminations | All other        
Revenue Recognition        
Net sales (1,515) (1,111) (2,518) (2,199)
Eliminations | Residential        
Revenue Recognition        
Net sales (66,331) (56,667) (122,321) (108,056)
Eliminations | Commercial and Industrial        
Revenue Recognition        
Net sales $ (11,866) $ (9,614) $ (21,696) $ (18,451)
XML 48 R37.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Revenue Recognition - Other (Details) - USD ($)
$ in Thousands
6 Months Ended
Jun. 30, 2024
Dec. 31, 2023
Contract Liabilities    
Deferred revenue $ 15,981 $ 18,365
Uncompleted Performance Obligations    
Amount remaining on uncompleted performance obligations $ 385,800  
Expected timing of satisfaction of performance obligations over the next 18 months  
Receivables, net    
Contract Assets    
Receivables, unbilled $ 76,198 64,882
Uncompleted Performance Obligations    
Retainage receivables 77,000 81,900
Accrued liabilities    
Contract Liabilities    
Deferred revenue $ 15,981 $ 18,365
XML 49 R38.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Goodwill and Other Intangibles - Goodwill (Details)
$ in Thousands
3 Months Ended 6 Months Ended
Dec. 31, 2023
USD ($)
Jun. 30, 2024
USD ($)
item
Changes in the carrying amount of goodwill    
Number of reporting units | item   2
Impairment of goodwill $ 0  
Gross Goodwill, at beginning of period   $ 2,804,589
Additions   50,294
Fx Translation Adjustment   (2,074)
Gross Goodwill, at end of period 2,804,589 2,852,809
Accumulated Impairment Losses   (762,021)
Net Goodwill 2,042,568 2,090,788
Installation    
Changes in the carrying amount of goodwill    
Gross Goodwill, at beginning of period   1,901,160
Additions   44,573
Gross Goodwill, at end of period 1,901,160 1,945,733
Accumulated Impairment Losses   (762,021)
Net Goodwill   1,183,712
Specialty Distribution    
Changes in the carrying amount of goodwill    
Gross Goodwill, at beginning of period   903,429
Additions   5,721
Fx Translation Adjustment   (2,074)
Gross Goodwill, at end of period $ 903,429 907,076
Net Goodwill   $ 907,076
XML 50 R39.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Goodwill and Other Intangibles - Other intangible assets (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2024
Jun. 30, 2023
Jun. 30, 2024
Jun. 30, 2023
Dec. 31, 2023
Other intangible assets          
Gross Definite-lived intangible assets $ 854,873   $ 854,873   $ 827,793
Accumulated Amortization (271,732)   (271,732)   (236,735)
Other intangible asset, net 583,141   583,141   $ 591,058
Amortization expense $ 17,947 $ 17,211 $ 35,633 $ 34,107  
XML 51 R40.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Long-Term Debt - Reconciliation (Details) - USD ($)
$ in Thousands
Jun. 30, 2024
Dec. 31, 2023
Long-Term Debt    
Long-term debt $ 1,410,665  
Unamortized debt issuance costs (13,031) $ (14,472)
Total debt, net of unamortized debt issuance costs 1,397,634 1,420,067
Less: current portion of long-term debt 45,665 47,039
Total long-term debt $ 1,351,969 $ 1,373,028
3.625% Senior Notes    
Long-Term Debt    
Interest rate (as a percent) 3.625% 3.625%
Long-term debt $ 400,000 $ 400,000
4.125% Senior Notes    
Long-Term Debt    
Interest rate (as a percent) 4.125% 4.125%
Long-term debt $ 500,000 $ 500,000
Term Loan Facility    
Long-Term Debt    
Long-term debt 510,000 532,500
Equipment Notes    
Long-Term Debt    
Long-term debt 665 $ 2,039
Total debt, net of unamortized debt issuance costs $ 700  
XML 52 R41.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Long-Term Debt - Schedule of debt maturity (Details) - USD ($)
$ in Thousands
Jun. 30, 2024
Dec. 31, 2023
Schedule of Debt Maturity by Years:    
2024 $ 23,165  
2025 48,750  
2026 438,750  
Thereafter 900,000  
Total 1,410,665  
3.625% Senior Notes    
Schedule of Debt Maturity by Years:    
Thereafter 400,000  
Total 400,000 $ 400,000
4.125% Senior Notes    
Schedule of Debt Maturity by Years:    
Thereafter 500,000  
Total 500,000 500,000
Term Loan Facility    
Schedule of Debt Maturity by Years:    
2024 22,500  
2025 48,750  
2026 438,750  
Total 510,000 532,500
Equipment Notes    
Schedule of Debt Maturity by Years:    
2024 665  
Total $ 665 $ 2,039
XML 53 R42.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Long-Term Debt - Key Terms of Credit Agreement (Details) - USD ($)
$ in Thousands
6 Months Ended
Jun. 30, 2024
Dec. 31, 2023
Jul. 26, 2023
Revolving Facility      
Long-Term Debt      
Availability $ 500,000 $ 500,000  
Credit Agreement      
Long-Term Debt      
Interest rate 6.44%    
Scheduled maturity date Oct. 07, 2026    
Credit Agreement | Base Rate Borrowings | Federal Funds Rate      
Long-Term Debt      
Basis spread 0.50%    
Credit Agreement | Base Rate Borrowings | SOFR      
Long-Term Debt      
Maturity of the reference rate 1 month    
Credit Agreement | SOFR Rate Borrowings      
Long-Term Debt      
Interest rate floor (as a percent) 0.00%    
Credit Agreement | Term Loan Facility      
Long-Term Debt      
Availability $ 600,000    
Credit Agreement | Term Facility One | Base Rate Borrowings | Minimum      
Long-Term Debt      
Applicable margin based on total leverage ratio 0.00%    
Credit Agreement | Term Facility One | Base Rate Borrowings | Maximum      
Long-Term Debt      
Applicable margin based on total leverage ratio 1.50%    
Credit Agreement | Term Facility One | Base Rate Borrowings | SOFR      
Long-Term Debt      
Basis spread 1.00%    
Credit Agreement | Term Facility One | SOFR Rate Borrowings | Minimum      
Long-Term Debt      
Applicable margin based on total leverage ratio 1.00%    
Credit Agreement | Term Facility One | SOFR Rate Borrowings | Maximum      
Long-Term Debt      
Applicable margin based on total leverage ratio 2.50%    
Credit Agreement | Term Facility Two      
Long-Term Debt      
Availability     $ 550,000
Credit Agreement | Revolving Facility      
Long-Term Debt      
Availability $ 500,000    
Sublimit for issuance of letters of credit under Revolving Facility* 100,000    
Sublimit for swingline loans under Revolving Facility* $ 35,000    
XML 54 R43.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Long-Term Debt - Revolving Facility (Details) - Revolving Facility - USD ($)
$ in Thousands
6 Months Ended
Jun. 30, 2024
Dec. 31, 2023
Long-Term Debt    
Revolving Facility $ 500,000 $ 500,000
Less: standby letters of credit (63,770) (63,770)
Availability under revolving facility $ 436,230 $ 436,230
Minimum    
Long-Term Debt    
Commitment fee (as a percent) 0.15%  
Maximum    
Long-Term Debt    
Commitment fee (as a percent) 0.275%  
XML 55 R44.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Long-Term Debt - Senior Notes and Equipment Notes (Details) - USD ($)
$ in Thousands
6 Months Ended
Jun. 30, 2024
Dec. 31, 2023
Long-Term Debt    
Amount outstanding $ 1,397,634 $ 1,420,067
Equipment Notes    
Long-Term Debt    
Amount outstanding $ 700  
Debt term 5 years  
Equipment Notes | Minimum    
Long-Term Debt    
Interest rate (as a percent) 2.80%  
Equipment Notes | Maximum    
Long-Term Debt    
Interest rate (as a percent) 4.40%  
3.625% Senior Notes    
Long-Term Debt    
Interest rate (as a percent) 3.625%  
Principal amount of debt $ 400,000  
3.625% Senior Notes | Change in Control Scenario    
Long-Term Debt    
Redemption price as a percentage of principal 101.00%  
4.125% Senior Notes    
Long-Term Debt    
Interest rate (as a percent) 4.125%  
Principal amount of debt $ 500,000  
4.125% Senior Notes | On or after October 15, 2026    
Long-Term Debt    
Redemption price as a percentage of principal 102.063%  
4.125% Senior Notes | On or after October 15, 2027    
Long-Term Debt    
Redemption price as a percentage of principal 101.375%  
4.125% Senior Notes | On or after October 15, 2028    
Long-Term Debt    
Redemption price as a percentage of principal 100.688%  
4.125% Senior Notes | On October 15, 2029 and thereafter    
Long-Term Debt    
Redemption price as a percentage of principal 100.00%  
4.125% Senior Notes | Prior to October 15, 2026    
Long-Term Debt    
Basis spread on treasury rate 0.50%  
4.125% Senior Notes | Prior to October 15, 2024    
Long-Term Debt    
Redemption price as a percentage of principal 104.125%  
Redemption price, percentage of principal amount redeemed 40.00%  
Debt instrument, conditional redemption, threshold percentage of aggregate principal amount originally issued remains outstanding 60.00%  
4.125% Senior Notes | Change in Control Scenario    
Long-Term Debt    
Redemption price as a percentage of principal 101.00%  
XML 56 R45.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Long-Term Debt - Other (Details)
6 Months Ended
Jun. 30, 2024
Debt covenants  
Maximum Net Leverage Ratio 3.50
Minimum Interest Coverage Ratio 3.00
Senior Notes | Event of Default Scenario  
Debt covenants  
Minimum percentage of principal of debt holders to declare debt immediately due and payable 30.00%
3.625% Senior Notes  
Debt covenants  
Interest rate (as a percent) 3.625%
4.125% Senior Notes  
Debt covenants  
Interest rate (as a percent) 4.125%
XML 57 R46.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Fair Value Measurements (Details)
$ in Thousands
Jun. 30, 2024
USD ($)
Fair Value on Non-Recurring Basis  
Amount outstanding $ 1,410,665
3.625% Senior Notes  
Fair Value on Non-Recurring Basis  
Interest rate (as a percent) 3.625%
Amount outstanding $ 400,000
3.625% Senior Notes | Fair Value on Non-Recurring Basis | Level 1 fair value measurement  
Fair Value on Non-Recurring Basis  
Interest rate (as a percent) 3.625%
Fair value $ 361,440
4.125% Senior Notes  
Fair Value on Non-Recurring Basis  
Interest rate (as a percent) 4.125%
Amount outstanding $ 500,000
4.125% Senior Notes | Fair Value on Non-Recurring Basis | Level 1 fair value measurement  
Fair Value on Non-Recurring Basis  
Interest rate (as a percent) 4.125%
Fair value $ 441,450
XML 58 R47.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Segment Information (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2024
Jun. 30, 2023
Jun. 30, 2024
Jun. 30, 2023
Dec. 31, 2023
Segment information          
Net sales $ 1,365,612 $ 1,317,262 $ 2,644,329 $ 2,582,500  
Operating profit as, reported 210,392 237,103 424,900 436,534  
Other expense, net (7,218) (13,953) (14,731) (30,069)  
Income before income taxes 203,174 223,150 410,169 406,465  
Total Assets 4,902,993   4,902,993   $ 5,162,851
Acquisition termination fee     23,000    
Operating Segment          
Segment information          
Net sales     2,644,329 2,582,500  
Operating profit as, reported 247,251 247,060 470,826 457,320  
Operating Segment | Installation          
Segment information          
Net sales 850,983 809,055 1,649,726 1,576,145  
Operating profit as, reported 170,718 172,278 327,475 319,176  
Operating Segment | Specialty Distribution          
Segment information          
Net sales 592,826 574,488 1,138,620 1,132,862  
Operating profit as, reported 89,373 85,980 166,951 159,313  
Eliminations          
Segment information          
Net sales (78,197) (66,281) (144,017) (126,507)  
Intercompany Eliminations          
Segment information          
Net sales (78,197) (66,281) (144,017) (126,507)  
Operating profit as, reported (12,840) (11,198) (23,600) (21,169)  
Corporate          
Segment information          
General corporate expense, net $ (36,859) $ (9,957) $ (45,926) $ (20,786)  
XML 59 R48.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Income Taxes (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2024
Jun. 30, 2023
Jun. 30, 2024
Jun. 30, 2023
Income Taxes        
Effective tax rate (as a percent) 25.80% 26.30% 26.10% 26.10%
Tax expense related to share-based compensation $ 98 $ 180 $ 2,107 $ 225
XML 60 R49.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Net Income Per Share - Calculation (Details) - USD ($)
$ / shares in Units, $ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2024
Mar. 31, 2024
Jun. 30, 2023
Mar. 31, 2023
Jun. 30, 2024
Jun. 30, 2023
Net income $ 150,723 $ 152,381 $ 164,400 $ 135,870 $ 303,104 $ 300,270
Weighted average number of common shares outstanding - basic 31,324,833   31,599,744   31,483,144 31,575,337
Dilutive effect of common stock equivalents:            
Stock options 91,516   84,998   93,332 85,522
Weighted average number of common shares outstanding - diluted 31,524,063   31,731,807   31,693,524 31,722,660
Basic net income per common share $ 4.81   $ 5.20   $ 9.63 $ 9.51
Diluted net income per common share $ 4.78   $ 5.18   $ 9.56 $ 9.47
Service-based conditions            
Dilutive effect of common stock equivalents:            
Restricted stock awards 34,973   25,052   38,083 23,848
Market-based conditions            
Dilutive effect of common stock equivalents:            
Restricted stock awards 61,856   20,039   61,491 22,450
Performance-based conditions            
Dilutive effect of common stock equivalents:            
Restricted stock awards 10,885   1,974   17,474 15,503
XML 61 R50.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Net Income Per Share - Anti-dilutive common stock equivalents (Details) - shares
3 Months Ended 6 Months Ended
Jun. 30, 2023
Jun. 30, 2023
Anti-dilutive common stock equivalents    
Total anti-dilutive common stock equivalents 14,801 28,590
Restricted Stock Awards | Service-based conditions    
Anti-dilutive common stock equivalents    
Total anti-dilutive common stock equivalents   5,582
Restricted Stock Awards | Market-based conditions    
Anti-dilutive common stock equivalents    
Total anti-dilutive common stock equivalents   4,467
Employee Stock Option    
Anti-dilutive common stock equivalents    
Total anti-dilutive common stock equivalents 14,801 18,541
XML 62 R51.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Share-Based Compensation - Expense (Details) - USD ($)
$ in Thousands, shares in Millions
3 Months Ended 6 Months Ended
Jun. 30, 2024
Jun. 30, 2023
Jun. 30, 2024
Jun. 30, 2023
Share-Based Compensation        
Share-based compensation expense $ 4,632 $ 3,751 $ 9,759 $ 6,886
Income tax expense $ (98) $ (180) $ (2,107) $ (225)
2015 Plan        
Share-Based Compensation        
Number of shares available 1.7   1.7  
2015 Plan | Maximum        
Share-Based Compensation        
Number of shares authorized 4.0   4.0  
XML 63 R52.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Share-Based Compensation - Activity (Details) - USD ($)
3 Months Ended 6 Months Ended
Feb. 21, 2024
Feb. 21, 2023
Feb. 15, 2022
Jun. 30, 2024
Mar. 31, 2024
Jun. 30, 2023
Mar. 31, 2023
Jun. 30, 2024
Jun. 30, 2023
Jun. 30, 2022
Dec. 31, 2023
Stock Options, Number of Shares                      
Converted/Exercised (in shares)       (10,269) (5,757) (4,762) (28,840)        
Stock options, additional disclosures                      
Weighted average remaining contractual term for vested stock options               4 years 8 months 12 days      
Unrecognized share-based compensation expense                      
Total unrecognized compensation expense related to unvested awards       $ 27,675,000       $ 27,675,000      
Restricted Stock Awards                      
Restricted Stock Awards, Number of Shares                      
Balance at beginning of period (in shares)         195,500     195,500      
Granted (in shares)               45,000.0      
Converted/Exercised (in shares)               (52,600)      
Forfeited/Expired (in shares)               (2,700)      
Balance at end of period (in shares)       185,200       185,200      
Restricted Stock Awards, Weighted Average Grant Date Fair Value Per Share                      
Balance at beginning of period (in dollars per share)         $ 223.49     $ 223.49      
Granted (in dollars per share)               419.27      
Converted/Exercised (in dollars per share)               229.41      
Forfeited/Expired (in dollars per share)               281.40      
Balance at end of period (in dollars per share)       $ 268.77       $ 268.77      
Unrecognized share-based compensation expense                      
RSAs, Unrecognized Compensation Expense on Unvested Awards       $ 27,675,000       $ 27,675,000      
Weighted Average Remaining Compensation Expense Period               1 year 1 month 6 days      
Assumptions used to estimate the fair values of the awards granted:                      
Measurement period (years)               2 years 10 months 9 days 2 years 10 months 9 days 2 years 10 months 13 days  
Risk free interest rate (as a percent)               4.36% 4.42% 1.76%  
Dividend yield (as a percent)               0.00% 0.00% 0.00%  
Estimated fair value of market-based RSAs at grant date (in dollars per share)               $ 503.68 $ 270.64 $ 298.20  
Restricted Stock Awards | Performance-based conditions                      
Restricted stock awards, additional disclosures                      
Grant date fair value $ 4,824,000 $ 4,037,000 $ 2,978,000                
Restricted Stock Awards | Performance-based conditions | Payout Range-0%                      
Restricted stock awards, additional disclosures                      
Payout range (as a percent) 0.00% 0.00% 0.00%                
Restricted Stock Awards | Performance-based conditions | Payout Range-25%                      
Restricted stock awards, additional disclosures                      
Payout range (as a percent) 25.00% 25.00% 25.00%                
Related expenses $ 1,206,000 $ 1,009,000 $ 745,000                
Restricted Stock Awards | Performance-based conditions | Payout Range-100%                      
Restricted stock awards, additional disclosures                      
Payout range (as a percent) 100.00% 100.00% 100.00%                
Related expenses $ 4,824,000 $ 4,037,000 $ 2,978,000                
Restricted Stock Awards | Performance-based conditions | Payout Range-200%                      
Restricted stock awards, additional disclosures                      
Payout range (as a percent) 200.00% 200.00% 200.00%                
Related expenses $ 9,648,000 $ 8,074,000 $ 5,956,000                
RSAs granted February 16, 2021 | Performance-based conditions                      
Restricted stock awards, additional disclosures                      
Cumulative period of achievement         3 years            
Cumulative achievement percentage         200.00%            
Total compensation expense recognized over the performance period, net of forfeitures         $ 4,400,000            
Employee Stock Option                      
Stock Options, Number of Shares                      
Balance at beginning of period (in shares)         128,700     128,700      
Converted/Exercised (in shares)               (16,000.0)      
Balance at end of period (in shares)       112,700       112,700      
Stock Options, Weighted Average Grant Date Fair Value Per Share                      
Balance at beginning of period (in dollars per share)         $ 36.65     $ 36.65      
Converted/Exercised (in dollars per share)               82.64      
Balance at end of period (in dollars per share)       $ 30.10       30.10      
Stock Options, Weighted Average Exercise Price Per Share                      
Balance at beginning of period (in dollars per share)         $ 98.58     98.58      
Converted/Exercised (in dollars per share)               201.27      
Balance at end of period (in dollars per share)       $ 83.97       $ 83.97      
Stock options, additional disclosures                      
Aggregate intrinsic value       $ 33,930,300       $ 33,930,300     $ 35,462,800
Converted/Exercised aggregate intrinsic value               $ 3,312,800      
Exercisable, Number of shares       112,700       112,700      
Exercisable, Weighted Average Grant Date Fair Value Per Share               $ 30.10      
Exercisable Weighted Average Exercise Price Per Share       $ 83.97       $ 83.97      
Exercisable, Aggregate Intrinsic Value       $ 33,930,300       $ 33,930,300      
XML 64 R53.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Share Repurchase Program (Details) - USD ($)
$ / shares in Units, $ in Thousands
3 Months Ended 6 Months Ended 12 Months Ended 23 Months Ended
Jun. 30, 2024
Jun. 30, 2024
Dec. 31, 2023
Jun. 30, 2024
May 03, 2024
Jul. 25, 2022
Share Repurchase Program            
Excise tax liability $ 5,200 $ 5,200   $ 5,200    
Number of shares repurchased (in shares)   1,246,182 0      
Share repurchase cost   $ 510,443        
Share repurchase cost, excise taxes   5,202        
2024 Share Repurchase Program            
Share Repurchase Program            
Share repurchase program, authorized amount         $ 1,000,000  
Amount remaining under repurchase program 649,200 $ 649,200   $ 649,200    
2022 Share Repurchase Program            
Share Repurchase Program            
Share repurchase program, authorized amount           $ 200,000
Remaining amount authorized under the program, utilized during the period $ 154,400          
Average price per share (in dollars per share)       $ 295.13    
Number of shares repurchased (in shares)       677,657    
XML 65 R54.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Business Combinations - Summary (Details) - USD ($)
$ in Millions
3 Months Ended 6 Months Ended
May 31, 2024
May 16, 2024
Apr. 18, 2024
Mar. 01, 2024
Feb. 15, 2024
Jun. 30, 2024
Jun. 30, 2023
Jun. 30, 2024
Jun. 30, 2023
Business Combinations                  
Acquisition related costs           $ 26.3 $ 1.1 $ 26.8 $ 2.8
Summary of businesses acquired:                  
Goodwill expected to be deducted for income tax purposes           50.3 $ 23.1 $ 50.3 23.1
Brabble                  
Business Combinations                  
Purchase price         $ 5.4        
Goodwill recognized         $ 3.0        
Morris Black                  
Business Combinations                  
Purchase price       $ 3.6          
Goodwill recognized       2.1          
PCI                  
Business Combinations                  
Purchase price       13.8          
Goodwill recognized       $ 5.7          
Green Space                  
Business Combinations                  
Purchase price     $ 4.3            
Goodwill recognized     $ 2.6            
Insulation Works Inc.                  
Business Combinations                  
Purchase price   $ 25.2              
Goodwill recognized   $ 14.3              
Texas Insulation                  
Business Combinations                  
Purchase price $ 35.9                
Goodwill recognized $ 22.7                
SRI Holdings                  
Business Combinations                  
Purchase price                 45.3
Goodwill recognized                 $ 23.1
SPI                  
Business Combinations                  
Acquisition related costs           $ 23.0      
XML 66 R55.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Business Combinations - Intangibles (Details) - 2024 Acquisitions - Customer relationships
$ in Millions
6 Months Ended
Jun. 30, 2024
USD ($)
Estimates of acquired intangible assets  
Estimated Fair Value $ 29.2
Weighted Average Estimated Useful Life (Years) 12 years
XML 67 R56.htm IDEA: XBRL DOCUMENT v3.24.2.u1
Accrued Liabilities (Details) - USD ($)
$ in Thousands
Jun. 30, 2024
Dec. 31, 2023
Accrued Liabilities.    
Salaries, wages, and bonus/commissions $ 62,862 $ 67,471
Insurance liabilities 31,417 29,920
Sales, property, and excise taxes 21,206 17,002
Deferred revenue 15,981 18,365
Customer rebates 12,306 17,326
Interest payable on long-term debt 12,138 12,139
Other 20,843 24,994
Total accrued liabilities $ 176,753 $ 187,217
EXCEL 68 Financial_Report.xlsx IDEA: XBRL DOCUMENT begin 644 Financial_Report.xlsx M4$L#!!0 ( +> !ED'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 " "W@ 99L#+$@.\ K @ $0 &1O8U!R;W!S+V-O&ULS9)1 M2\,P$,>_BN2]O335(:'+BV-/"H(#Q;>0W+9@DX;DI-VWMZU;A^@'\#%W__SN M=W"-B=)T"9]3%S&1PWPS^#9D:>*:'8FB!,CFB%[G&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" "W@ 99?%A[!=@% #B'@ & 'AL+W=O6(?S[ M7ME@)UOYPGJ6%["-ST&?)%M'TL5*Z2_90@A#7I)89I>=A3'INUXO"Q8BX=FQ M2H6$7V9*)]S J9[WLE0+'A:B).XQSQOT$A[)SO"BN#;1PPN5FSB28J))EB<) MU^N1B-7JLD,[VPN/T7QA[(7>\"+E.M^6\ #S#//Q%C%GZ+0+"X[9QT2BAG/8_.H5K^+#=")]0M4G!6? M9%7>V^]W2)!G1B4;,90@B63YS5\V%?%:X#4(V$; OA+0IG_P-P*_ "U+5F!= M<\.'%UJMB+9W@YL]*.JF4 --)&TS3HV&7R/0F>&U"G)H%4.X#,F--)%9DSM9 M=@];S5V2+;@6V47/P+]932_8.(]*9];@/"#OE32+#%Q#$;[5]Z"455'9MJ@C MAAK^D)<\!CEUR=\4QZ]JSB_\_ :_L5H*36Q?/W953BGN MN\7VX7R7I3P0EQUX^C*AEZ(S_.D'.O!^=9%])[,WG/V*LX^YUSWD:9T*%RDN MIU[WHPL)5;5$.JF03O9#F@@=*=OO0P)/CY,.=ZKZ9&.G1/4M.0<5YV#/IM,< M7KS% _TH4J6-BQ3WFO$X6+=1+,A#GCP+[0+#/3R/ M=OW!V:GG@D.E+>'.*KBS?> >Q3S*##2@(0\\3Y/I!W,H#"*5T,.D=D:N!I)$I#D7-I]!J^0R/ MM]X^P$_\A=R%\&Q&LR@HA]KF#KS#LG_:];WS@7_&7+BXN"WOJWQ!]^&]"D-P MSXZV!^0>[B,?I+-5=UCV3T_( [S$%N13%,<13S*HO9'*8['D.G36 6K8M@Y8 M70?LF^I@;,^@=S^IE73RXW;7?&V4Y&0D>+!PXJ+ZMKAU,*)H'OD?;O4T3[1: M1C)PMSGN>7OO!#U$,*)U,J)XMOD:=*(RPV/R3Y0VOK!V./J,4F>,P'5M2>O M1/&<4_38*Y@G-H/A!O[9P(EUB'A$ZWQ$\5!SKP)HK\E"22P_[##QO7Z7P;39 MR7>(=$3K>$3Q;/,4&4A&:D8H^_GY%S(50:ZA)9V0N--8)0F\96$^&GPY@EF/ M)DL>YX+\Z!U[E*0P$RKFB5>Q$QPU&]]=. MK$/$)EKG)HIGFVU;DIN78,'E7#2FPQU&#Y^GSIB$RUKRL3HGL;URTCC7VLY@ MRFE+T8XPFN3.]8@=CI^=JQAC7-66L\Y';*]\=">-T.6:EIV*\BVXDQ-W;.(\ M1 9B=09B>V4@.U6#6 ^!8*ZT\T6TP^>>:^CK5T$@P ALPM+227R(&,3J&,3V MBD'3A,49_)RY^RWNTSCSQG5M^>KTP_9*/S>)T'/[8/X&#I#)8:1(N70W M+6[8#'J(\,/J\,/P[+)MR(6 AL3P<)MFO$.$(%:'((;GE^V;MASAI^4(/RU6 M?R)_"W3]Q*\^#RO;]4K8YX#;*;&3_+""!8LNV.^RZ7U9:SSCK]CD6;+ M^#'G&K)=O$:6WG=X&9T[WSVX[%L1>Z]V$>V87FRN9B2P2[#EAF)UM=K O2JV M+7OU[>7N[WMN(T%&8C$#J7=\"N]T76ZHEB=&I<6>Y+,R1B7%X4+P4&A[ _P^ M4\IL3^P?5-O:P_\ 4$L#!!0 ( +> !EEC!RL9.@< (4> 8 >&PO M=V]R:W-H965T&ULK5EM4]M($OXK4U[JZK9*Q/.BT0L+KB+ M[N8JMZ$">_=YD :LBBQYI1&$_?77(QM)UKP =?F08,L]K:=[6OT\TSI]JIMO M[5I*A;YORJH]6ZR5VIXLEVVVEAO1?JBWLH)?[NMF(Q1\;1Z6[;:1(N\7;+GPM'M9*7UBN M3K?B0=Y(]>?VNH%OR\%+7FQDU19UA1IY?[8X)R<7+-8+>HO_%/*IG7Q&.I2[ MNOZFOWS*SQ98(Y*ES)1V(>#/H[R09:D] 8Z_]DX7PSWUPNGG%^^_]L%#,'>B ME1=U^=\B5^NS1;) N;P77:F^UD^_RWU 7/O+ZK+M_T=/>UN\0%G7JGJS7PP( M-D6U^RN^[Q,Q64!"QP*Z7T#?NH#M%[ ^T!VR/JQ+H<3JM*F?4*.MP9O^T.>F M7PW1%)7>QAO5P*\%K%.KBR]_W'SY_.GR_/;J$GT\_WS^Q\45NOG]ZNKV!AVC M/V\NT3^/?D9'J*C0[;KN6E'E[>E2P9WU^F6VO\O'W5VHXR[_ZJH/B.$ 44Q# MR_(+__)+F<%RTB]GA\N7$.\0-!V"IKT_Y@JZ:QI9*23:5JKVQ!;/SD%H=Z"? MK9-V*S)YMH"'IY7-HURL_O$3B? OMNA^D+.#6-D0*_-Y7UV(=HU@UU"F/\B_ MNN)1E!"\=1=WKJ+>E6X CZLP8I22T^7C-![3+ D3'O'![ !I." -O4B_RDP" MN+M2M@&JH(/5]P :%06M6)0R1T[C 7?LQ7U;*U&^ 6)LW)S$$68XFH$T M[2@.4QJ&=IC) #/QU[YF&UW.72L]*!,394IPF,Q FF8 ,J*.5*8#QO25$@#Q MT*CG?NMU(]D"G:O^4;5A34T04 U686ADELQTKPR&O8B_:WNLZ?BK*T MDA6V)"C%<3)/I-4PI#Q*'/ FM$N\\+[TCTY1*5$]%-#R]IONS.;>W10)3Q@) MYZW99@*B#C*R'/'3W.XY]\!C M9@]*,4W3>3U:##F):,(=#92,]$;"-ZF.LA!W15DH:/-6Z4&\-/E>[?&CO!T& M/5(:\7/:>9;5':@-M!7/FMJM 9N4%4:$3%K_/A2;7XM=$E/BZL,CL1$_L]VL(:F[3&KZ$*JH'E IX>3U*G23QB+8;@.Y MQ8S'"78 ']F.^.EN OR^J'H!^C;8)J.1V*QEBU7JRC8=68_Z6>]0[KR"E)KL M!@1-PSE6FUU,.'-P"AU)D/I)\/.K#QDUZ8PP3M+(P&@SC!FF+I"3LZ*?^"[E MO81TYDB)[].,.JF:FA1'0Q:G<[UKMTN9HW+IR(74SX5C6B<-K:C:KNFK>-_F M[25ALE^$0TSGT"TDF<0)R BCG!IE8K$#94Q> MHWZ>&Y&_JUE0RVF-D;D,M5B%A+OJ9*0]ZJ>]G:1[#:')7R2D1D%8K#AW'(KH M2'+T+:>WUQ!:SF0;0NGCT.Y@G-65KEU9 M92[,7G]V58:LHZ7_W]%AS",_TM0K9Z_@!*B>[<,S+[.^>WKV@[P=CL]&2F5^ M2KUN7@B@577V+4!'^ ,FH&<;]"C*3IX@@@.,^W^H78M&#TJA^%OFOZ#A M8M&V6K#U@Y-.M7#RRZ%&K&,X+Z)W5,7>G+$T MX!$)&"66Y#$<\"0,0,9.\^@8 (*G,*4!9K'-$PGB.((?T[FG-PT+F:DY6#H? M&%F-'(V1C:*$^47);0/LTC7/+PE.@C2. Q+R(9O6;,0!Z+8@39.)F1%JH*]F M=6L5-\P4+<>$$IX85&NSC."\31TBETTFVGY]U;M-5PHEA\ENO8&^L-8O[1YE/W.W0C?5R3'%W)BLV.Q M?+EF/VS4,,Q(.$=H,>01B[@+XBADV#N%S#!$=4". MS3U M4O6F_[B6(I>--H#?[^M:O7S1;R*'-\^K_P%02P,$% @ MX &6<$-;LY3 M P ;0L !@ !X;"]W;W)K3VLPX=F[:F[3UU&G[6H&UT000)PF[N4]_$A "#G;LMGYA(]CG MT6_E%=KQEK('G@ (]#-+T@%P^65&682&';*WS@@&. M*U&6ZI9A>'J&2:Z%X^K>@H5C6HJ4Y+!@B)=9AMGC-:1T.]%,[>G&5[).A+JA MA^,"KV$)XENQ8'*DMRXQR2#GA.:(P6JB3T@_J^1E,O>8PXRF/T@L MDHDVTE ,*URFXBO=?H F(5?Y133EU3?:UK%>H*&HY()FC5@29"2O?_'/9B$Z M M/9([ :@76LP&X$=I5H35:E-<<"AV-&MXBI:.FF+JJUJ=0R&Y*KOW$IF'Q* MI$Z$LR^?EU]N/\ZG=S=S=#V]G7Z>W:#EAYN;NR4Z6V &N4A D BGY^@=^K:< MH[,WY^@-(CFZ2VC)<1[SL2XDB?+3HV;6ZWI6:\^L_Y3Y);*-"V09EC,@GQV6 MSR&2V 2U\ M^Y?I&>^',OU#9KV\[39O^Y![.$WE+L9Y!$B^#U#$("8"I91S&/Q/:S.O,E.O MATUH6;XY&NN;;D(#47;@/$?U2)V6U#E(NI";&Y@$1')'1 \7J, ,;7!: CJ3 MI1C3-,6,HP+D&RJ157L^Q%]/X7?(C$O#W,%_):A'[[;T[FGT%2-'N!0)9>0_ MB(=P:T^W0V(:]6<'^8C 'K;78GN_@GV!".?E,+/W F47]E!$C])O*?U?HY2' M%A?R_43R]1"J_RKJH8@>ZJA%'1U$G=$LDT?7;Y3PZ)@2?B6HAQZTZ,$)Z$?5 M;_!B^2QWN("/B>Q1F\;S\6:R M>3KS*]7<6/9P#'?DF+ZW"SX0:?J^9]C!'O#G8]0\>%J%=[*1Y"5[W"T3@2+* MQ2"V]0)F%/B^Z;B[U"\#99@;!+L'B][IA50C^@FS-25UJW* MAUB/3+9*[<9*N3CQ>02GX>D M#J@1?\;RN3PZ1I64ASS_5IWDA6/<@C;/F-WHY).(H0// >000,P UA- #P'T>UM@AP#V MO2WP0T M?=9HKQ,71"I:S(O\&1456K-5!W7VZVB=KSBK"F6I"GTWUG%J<7W[ M:7G[QTUP>1\&:'FO?SZ&G^Z7Z/8#NKT+/U_>WV@ >H^^+ /T]LT[] ;%&;K? MYOLRRM;E?*9T'RJFV>K0WE73'NEICZ*/>::V)0JSM5P#\<%PO!B(GVGM;0+( M:P*NR"#A[_MLBJASAHA#&-"?Z^\/IY"<'VL]_-^MGR2#MM5 :S[Z(]4 #7I# MRV#::K$[+W?12EY,]&I6RN))3A8__X2%\PN4\3')@C')PI'(3L:&M6/#AM@7 MG_2N44:)!"==$RKJT&IO>%I@*KC 9#Y[.DXMA,,N$08NL'%$,$:)?XH+ 1SW M"'><%G>BE;=:^:#6Z[Q4*'_LU]N$\Z-V?8:%[QAR;9CGH3!#?,P=ER# M+;1AKD\8,;60FBR@Y0WH;0=%:[VQQJ8JH<@U(OF@; M5$HH%:[5*X(II^:XVS#L,>$;XQG8,.H);*4"@''./ RGPFM3X0VFXG8G*[W9 M9F#D/4"NHX?>D O J*N!AEP;Q@CSS0() 9A>2RB#Y?JM7']P:[E56UEH\[#* M4XG>'H;XW1G*I#J'I/MC[BACD@5CDH4CD9T,"78Z\^<,UN!-IJ3F54-3[D!Q M7 _OL<>%9Q1A#XX;N #"49<*HUI#$"?XT20^%7WD>/'PQ*LJL2X\4"ZVUPZ] MQ)@K# !CPN&F5AM%B*#F @/ !"=>CU#2"27_+O1U:/L%$SO/KMXX3,$ #%.? MFXL,B&,NQ:9F $?UTZW?H[JSL'C0A>F:KI>8!ZF?HN7K@J.B%]A(',A.1LC1 MEHB9\@$Q@81HG".<()GKV5]RY1#QL$V]:P8.3FMG9YX1Q;,J& M<)YKRP9PVE0X@INZ0:# ?I_PSC+B8<]8^>-FM$'!W':^7+L>:@H&<-KY6BX* MP%%=-PXS]4(XA[@]!AEWGA&+P?VTDXNTD4#Z(,TS5&ZC0H+[*1[TH/]U0QV5 M+1B5+1R+[71@.H>+ARWN553&*W $FCCW>,I//6O&V2@^-1]8 ) _%;JPNC]K MO85">(^'Q9V)Q<,N-HB3O0)?Y%P=(D_UNM:^8J/XU-Q] @"E>R],C1"*N7!: M3@5W-A8/^]BO]:M'J1]:GK1_W\AFRI4HWZM2Z8<9;>CA^3>JH1V5+1B5+1R+ M[?1U7N=IR;"G[9U_Q#:4%%/"]*.^49,@DON^RXSE/0"1FA&;R!#F=#FE/8:6 M=(:6#!O:@3E(;&>I6R7::EB:(:2V;9YC/C6#2.%33BS-(*=VP,+<_F9';[!3 M66SJ3P>EWM7VF6I>7[97V\\3E_5+>>/Z%3Z_QL#U )^'S<>'CK[Y%O(Q*C9Q M5J)$/NJFG*FKNULTGQ>:$Y7OZO?G#[E2>5H?;F6TED4%T/ !EDUTK%J. , &P+ 8 >&PO=V]R:W-H965T M&ULK59M;]HP$/XK5E9-K;0V[R]E$*DEJ>Y_S<7;CK;@A]80E"'+SF&68])>%\V5%5%B4H MA^R*+!$6;^:$YI"++5VH;$D1C M0GJF&ICEJ#E.L^-WB;$+]+EGQ+,5H0@%; MY3FD;[HBO;@X=TD7!YH/K=)5R@*>*/RPD5.[5FB=,<8982#"B:]Y0; MO1.ZTKXP>$K1ANVL@53R3,B+W SBGJ+)"Z$,15PR0/%8HS[*,DDDKO&GXE1J MEQ*XN]ZRWQ7:A99GR%"?9+_2F"<]Q5- C.9PE?$'LKE'E1Y;\D4D8\4OV)2V MKJF :,4XR2NPN$&>XO()7ZLX[ $3SO J !&$V!] # K@/E9#U8%L#[KP:X MA72UU%X$+H <^EU*-H!*:\$F%T7T"[2(5XIEG4PY%6]3@>-^?SR:CG\.@IM9 M&(#I3#R&X6@V!>,[T!\/)P_A?3B:#IY",!B)?0@NP>,T .=G%^ ,I!C,$K)B M$,>LJW)Q&\FI1I7GV]*S\8%G$PP)Y@D#(8Y1W((/CN.=(WA51*$.A;$-Q:UQ ME/#'"E\!4_L&#,VP6N[3_SS<;)/S?][#?_:^%PRSK@NSX#-/4Q=MZ2\=6.T. MY/]?ARUAA'J*^(-CB*Z1XG_]HCO:][;8GY(L."59>"*RO2Q9=9:L8^S^2#22 M%$Z=2+G7/ M=!K5>6AE&5ZCA(,6*OO:\!JE>6CE:*;;7IANK=\]JK^_5Y(??XONX4=F>9[G M-M2VF#F>SPGAVXUT4 _8_E]02P,$% @ MX &64HS31GD #C-/%,7MOKW%UNSKGVLPQ*3 ^03Y+CI+^^*T' !B$GK;_$0%;+ MHUWM\ZQDGVRX^":7C"GT6.2E/!TME5H=C\S$//LL9B=\K?*L9)\%DNNBH.+IG.5\ND9[*@O-O^N9]>CKR-"*6LT1I%Q0^'M@%RW/M"7!\KYV.FG?J@=O7S]ZO MS>1A,@LJV07/_\I2M3P=Q2.4LCNZSM47OOF=U1,*M;^$Y]+\19O:UANA9"T5 M+^K!@*#(RNJ3/M:!V!H ?NP#<#T =P<$ P-(/8"8B5;(S+0NJ:*S$\$W2&AK M\*8O3&S,:)A-5NHTSI6 _V8P3LTN;C[-;SZ\OSR[O;I$\UOX^'CUZ7:.;J[1 MQ=G\=W3]X>:O.3I"7^>7Z,V/;]&/*"O1[9*O)2U3>3)6@$%[&B?U^\ZK]^&! M]T7H(R_54J*K,F7I[O@Q8&\F@)\G<(Z=#O]8E^\0\7Y!V,.!!<_%RX<3!QS2 MQ),8?V0HGE0NT344AT2?!7_(8))H\83>?)5PD95OT7CB-68[T,(&6NC,UEGZ-Y08 ML)*22'&@I827298S5#:8]7-]E^C$KK92RIM$4G7Q.T2E9,K*K7$/Q)%/NO'L&T78MP.=-D"G3J!G6XG6"%.V@/J0/T0Y>WVMES7,B-N1K>@UH=4#HTPHS>]0KP4I$M<.=91!/ MNCQDL0H\,A!>?TN%_5? S#H4 M8]R"QFZM6]+RGNF&(&%"P5*N5Z[AACRCBRP?9L7:]X%H\5#>=B/1BK[O%-#9 M%Y:P[($N(%6_:+6P3ICTBS>, [];OC8[,L'!9"!=K0S[;AU^7Z\JR(@57V!Y MKS<)XRZ^OET81+IYLL)KI=AW:A>4 %O1+'TNT6H5<;5D OI@(0"Z@QAKWSO@ MHW :=K'WS>)X.A395A=]MS">)0E?ZQYB19_T(K B[,OPM2KHNV7PTTO[0"OTOM#A:.KC7F3[=B0.)T.K%+>2B+W_MS71 M!"%?LC7!3NU]+7F04$#/)D]MV2+M00#(,A*@?0CLU2I-A/= MK78]!VSC&G^+R^LY6.R"<+I%"KMS:'43NW43UF'"6"K1G>#%"_I?W-=&[(== M"K583>*A>+?RB?=O8TU$UU6]F"Y-OJ#PL458?>Q/MQ2]QFTQ!/TE0V%NI16[ MM[E[*_\Z*Z&3?TGE'W0S>RAONV%I91N[9?L+-!Q/NK[UHLMY>7^DF"C,1L$Z M=XLR8Y"\7K78E#Z.\70@C:V$8[>$W])'8*E-II9+EJ>&HDS'! 3 BE7.GQB3 M/QO6T@2VH<)^0(Z#0<%LY1Z[Y1[61ZT-!JL^43 BD?"BT-MU#=X*NJ_@1Z$7 MXJ#;ZKO?_Q_7/VD; K)GC]RN_H27FLGT'5Q*8 @Q>%SB]OKJD\G^AAKT<6"5 MD5;5B5O5>VQ]UU"@V^E#>=F>^=7;N;@?>%^#D[0S(_L[@3_"+(;A'Z)S=9V6IZT>WR4QDW-I2$LL..XC#J+L3 MM]CAP/.B 9$DK:@3MZ@[IG"E#Q2MMB%& P'%(>T"D\FSM*? MKU>KG&E2ICE*,YGD7*Z%D9^2EW4_[_[6R-E"O)H/#N1M-QQMJT#>F]O8<TYB.4*8='<1M='V5V5^$ S45= V"X&[6;AZ-$V;,CUH0E<9 M+-'L'\B&XDAIOEN+I^&6J'8>[52,USVG=D-X[7(;;WTK7C!Q;WXL -CU45WU M_7+SM/E!PIGY&K[S_-P_OJA^5M"ZJ7[E\)$*8$4):^X.7'KO)I :4?UPH+I1 M?&6^>U]PI7AA+I>,0G>E#>#_=YRKYQO]@N;G&[-_ 5!+ P04 " "W@ 99 MA_PK8:8) 140 & 'AL+W=O82;R5VCN7LUGXDTMBB@H0.(#O^]SL@19BA M&8S=/E^LB[N?@>YA+J\:CN^S_$>Q%*(D/U?INCB9+,MR\WXZ+>9+L8J+=]E& MK.5_;K)\%9?R8WX[+3:YB!>UTRJ=,L.PIZLX64].C^OOON:GQ]FV3).U^)J3 M8KM:Q?G#1Y%F]R<3.OGUQ55RNRRK+Z:GQYOX5LQ$^6WS-9>?I@?*(EF)=9%D M:Y*+FY/)!_H^,GGE4%O\)Q'WQ:/WI#J5[UGVH_IPOCB9&-41B53,RPH1RY<[ M<2;2M"+)X_AK#YT986]5]RO[61[!*UKO7^.<^$(\<*.]Q8'L' MICBP/@>^=^"J@]/C8.X=3/60W!X':^]@*0ZFW>-@[QWLIYZTLW=PZF3MHENG MQH_+^/0XS^Y)7EE+6O6FSF_M+3.2K*NN."MS^=]$^I6G9Y<7L\O/Y_Z'Z\ G MLVOY\B6XN)Z1RY"<0I^1HGBR-Y3F?Q)BGC%& % M>M:5*.4P(!8DB/-ULKZ%@A(.',Y\OEUMT[B4E,MR*7)Y6BLYW"RK<>!.D#>? MLZ)X2\[7\VPE 'PT$+6LR M;=MJVX5 LXQZS&B;10#.8YYCV >[5A#Y(8B\=N0]091)K#JQ3*J,8?WN;75) MU1UZF:4+D1?RLOMKFY0/4%RY+D/59/:^V,1S<3*1W:<0^9V8G/[^#VH;_X(N M-DR8CPD+,&$A)BQ"@K7ZCGGH.Z;V KR0ZY6D;Q#XJ/4=VS4P83XF+-C!K,?7 M);=<1[E\0\PVH\$V6^FT#NFTM.F<+>-<'%6KJP61295+SB*N9B4HN5K2V.1B MPGRK$QLN@Z.,S9@MAIBP:.#P6XFU#XFUM8D]+XIM/5-F-W(-7Y1Y,J^F]J+* M-XGOXWQ1D.U:#O4DS=:W1Z7(5T340WYU>8MUM60G&SG90CW![APP4^95[<&- M32\F+,"$A9BP2!?55A]P#GW &;ZX"[G$+Y=+D2Y(F9%-_$#*^*?\5JZ Q6J3 M9@]"R-E^G_I=QX!2KFUI[,7O=,[TR.:6,GSZF$T&F+ 0$Q8-!:.5>O>0>O(=F>-MF[_=J\M5_;K='(F[3:MOU!UG+9)O,N+WTHVUK\V&QC MPGQ,6( )"[UN(AU+V5Y& T:M;%.C$5&,IVZ"O\3Y81/,02G$Z"XN/&5I= 88 MR6VP1TUU&PP8NAZUN#)T!X ==3UFJ8NR$&J9&53=6$> '3-LBYIF3S ?*5(4 M35'8H]K!5"4%P C6% !#4%0 [&!5 6H9DA4@H$Y7H(TZ0]EK*@M4*_Z,'8A0 M:3XJ+4"EA:BT"(O6[D.-.$6U^L6 PJ!W'MU%4.4G5%J 2@M1:=&>UAH(#8/U MJ1&T49>H7EYZ-!K_>[N6H[&AF=JZD@@PM76->J:VKJ'K68YJ%P!VS+!LKSNU M 2U3RW5-=30&@(R[AMDW&C?:#M6+.Z/6"8 (T0UFUZ@GF%U#>)W0M>M9)P M M@^N$KIU^G=#H*=1^U:D-4RHX0Z7YJ+0 E1:BTB(L6KL/-7H,U0LR U,;JL:" M2O-1:0'M:A[4-DU#%=!16XV&6VVGM=%:Z!/$EB>*Z'K4Z"2C2BNT*TYPQZ+J MF(TJKJ#2HJ$S:">XT5>H7F!YJ9JFQX]..JK"0KL:A6FK>AIJDR$J+1HX@7:9 M0:.Q,+W&\F)-3<\?FW-4FH]*"U!I(>LJ/29S56%MR*J=]48,8D\6@P:W'PP2 M@]05,V $KY@!0W#[ =C!VP^H96C[ 0%UVP_VJ%3G6;4Z<# 9$$Q3#6;7J HF M9XX:S*ZA9]B52]ZE$+ M>(9;;:>UD7D87@V/'C4ZR:A5/*RKW5A4'=L#U#9#5%HT= ;M!#?2$_N;:GD. M:]:;++\12;F5-+"7=$M1J#H7HRI0J+0 E1:BTB)M:-O]HY&5V-]7YZ-O:O0 M 16W&%9G\8NJ+J'20E1:-!B0=A=H)"CVNO4^>OSHM*/*4@RLF5%_2D!M,T2E M14-GT$YZ(TNQ5Z[[T?-'9QU5ET*E!:BTD'4EIR/3\)BZ&QPR:]^]T6A3_%GU M/R9XL\93ZG\ HR/'L+AK*P,U8.A19JHKYP"P8W*MRSL*/]0R=1U+_5T/ CJ4 M&;Q'\N&-Y,.?5?\#JA0X-:+AW MH$'U/YP:/546O)&H^+/J?^"I#:K_L=71&*K"8=1RF;H) 2SE$,NI*D =LQV MS'K*: _'0--,KO75WS(@(+<<3ONBV2A#_%D%0' TGU( !!CU+!2ZAO!" :C7 M@1<*0,O@0@$ :A<*C0K#7[4 B*,6 *'2?%1:@$H+46D1%JW=AQJEAK^D $CO M/+J+H!8 H=("#I3B6(;3'4)1Q9?A5MMI;=07CE< I$>-3C*JTL*[.H5IM,8R6&/:C]32I4< *,>R0&P M!"4'P Z6'*"F(_A]02P,$% @ MMX &64=&')_> P 1PT !@ !X;"]W;W)KZCVXRD*A)G+4=:/_]C9.0 M J$IE?A"8C//,S//.&.[OV;\280 DCPG<2H&6BAE=JGKP@\AH>*<99#B/PO& M$RIQR)>ZR#C0H EL6X:AJLG-$JU8;^8N^?#/LME'*5PSXG(DX3REVN(V7J@ M=;3-Q"Q:AE)-Z,-^1IQ*'[)NK(U-.+G0K*D F,$ M29263_I+D<'0WG=_]F(RO'KPQF3_@X]:;/LS) MW3:?B/?WS\G#?^3S/>60RA!DY-/X"_E* M?BK0*[+0,PW K'(+4,R0;PT@& 7KV-2=6;F)K-KLY7P MKSP])Y9Q1DS#M _$,VJ'WU*.\,Z;\/'QWJT#<.]X[U:+&%9=9JO@L]XN\]B; MSK'&QQ6\+/&A*I9^[,-^5%>[%!GU8:!AVQ+ 5Z -__BMXQI_'BK!*4"Y(!+S^U+X>* M5/)W"WZU4ZR&QKG1Z>NK;?%;@_BH^,=X]$[D<4=4IQ;5:15U(D1.4Q\(6^#^ M)B2/? E!J2&A:\H#07)L/9S$+%U^E< 3 K_R2+Z0"&&IVL](%M/TC*2X?2,+ M;M(+B&2.;$5IRLYWL!YE:,Z6.OA=FWOU:!HY'=-R=ZW&3:M.K^OV]I1N6ETX M1N?5XXZ$;BVAVRKA#+*<^R%NRRK],MWW,G>;X9JVV^GM)]_J^:.+\91DWHG( M=A3OUHIW6Q6?YLDCKLA7M=>1#$.( R(9-H87(NDSSF*S@"2+V0N ^+19M=6: M?J<^K?X_VLZ[S6+;%ZZSMX)/Z=)KNK1,Y\(^O-![M>R]5MGGI=@1M@QL$7FF M]'T&[D?5RE>-F;!,G73?%;C7U,0PW8N]Y=^T8981 MZA/# BF-\R[&Q,MC>SF0+"O.I8],XBFW> WQI@-<&>#_"\;D9J GX?]0 M2P,$% @ MX &60#WHW(X! O0D !@ !X;"]W;W)KDJ(\WAK[Z$I$#\^5TFZ2E-[79VGJ\A(K MX?JF1DUOUL96PM/6;E)76Q1%<*I4F@T&G]-*2)U,Q^'9PD['IO%*:EQ8<$U5 M";N;HS+;23),]@_NY:;T_""=CFNQP27Z/^N%I5W:H12R0NVDT6!Q/4EFP[/Y M"=L'@[\D;MW!&EC)RIA'WMP4DV3 A%!A[AE!T-\37J!2#$0T?K:821>2'0_7 M>_3KH)VTK(3#"Z.^R\*7D^0T@0+7HE'^WFQ_QU;/)\;+C7+A%[;1-LL2R!OG M3=4Z$X-*ZO@OGML\'#B<#MYPR%J'+/".@0++2^'%=&S-%BQ;$QHO@M3@3>2D MYJ(LO:6WDOS\="Z<=L+#H4'O!N1JGGJ#9(,U;F'F$R=Z ^0S?C/:E@RM= M8/':/R5*':]LSVN>O0OX1Z/[,!KT(!MD)^_@C3J=HX W^K\Z(\S)<1@^(F>N M%CE.DIJ![!,FTX\?AI\'Y^^0/.E(GKR'_NLDWX<9]F$^6]XLX>X:%O=7RZO; MA]G#S=TM?/QPF@U&Y_!@ZGDC50$434GGL0 Z(+Y$N/U[>04-U="&K9?Y(RW= MKEI19[)[-CB??[WLA^7P'+XCG/1.*+B'$A"VQIPN*'SZ]T9W&CG MA5(BGD1=P++&7 KE=W!)!*Q<-?RJ#W<$\\JXQ8#:2IH:4NT(/+SF**XY@#3$ MF#F0,*DWY&"*)J>)%3"/QSN"3@.#H!FOV!OB?PNU5PW"8I@8(;N<'QJEED#( MH]'2NQ[04(5M*?,2UE(+S0PI5!RU'(OJ8W%#D2TQPR>A&L'%6NT"7%Y*7!^ M%B0Q#,M*4-7Z7;FI2"M4$I\P%%7DN:EJH7>1B&@*R:"YH;)K%U?.*%F$6"_$ M*.L>HS*R\#3P@ M0YY#/Y<6,9@Y^0Q5'%G((^MUD&!"BU$OEIN3+1Q5B>XPUZ'](D8?'LCXC?2N MA"+1A!5N8.'ADG)4K:B[1L. ,X(M98$.),FA:EA3!3K[JATK3X\ZTT-AJ&^U M\9P#U108BD4]G2OCJ!K<63\;:6,[_3:;+5X:AOBZ-QD?;0C6:E$% XI)Z*XT M#4V8%0\(4?!$()0?C8Z7\5;Z,C9CJ^/B,,1U%V+Y$J*5$:#8\R(V,7,>?CEW M,-.Z"5T7QM&^1CL4MJW.OS/;ZCTVN=.#*[5"NPD?#MSXC?;Q=NV>=M\FLW@E MOYC'#YMOPFYH?H#"-;D.^E\^)6#CQT+<>%.'"WIE/%WW85E2SM"R ;U?&\IH MN^$ W1?;]!]02P,$% @ MX &69VKE[PI! M@H !D !X;"]W;W)K M&ULS59M;]LV$/XK!Q4H-L"S%-EY66(;<))F\["F M1IRLV$=:.EE$*5(EJ3CY][NC9,7=TJ3%]F& (5/DW M*J7=-"J]KT_CV&4E5L(-38V:5@IC*^'IU6YB5UL4>7"J5)PFR5%<":FCV23, M+>UL8AJOI,:E!==4E;"/YZC,=AH=1+N)&[DI/4_$LTDM-KA"?UTS";6 M;,&R-:'Q((0:O(FT*LG/S^999AKMI=[ TBB92723V!,P+\=9!W+> M@J1? 3F"]T;[TL$[G6/^I7],A'I6Z8[5>?HBX&^-'L(H&4":I.,7\$9]E*. M-_IW4;8@X^=!^'BXKCE]"_E>++(.D0 MYA<7'^ZN;Q?7O\#RP^^+B\6[%;Q]8T:1ZA(5S#>:PS\X:3>,LN#NX-A[^I,MCGIO:D^4.8:%IZ1ZK-5JN MXF@ OD2XFJ_.07:8J[NP\E-R/ AN:7*VPDU@=8.UL6&['VY-+3-(3Y(?!["H M:LN@86=O.C.Q5@@[STOI,F5<0V$%S(.S(=R6TH'S0N?"YB#(+G?0XS*0Q<^- MM A"*2 4Z2G]/)^W:#@ OD'XIQM*'R&!U!ZMK/A.D&X 3FZT+&0FB(/KN. # MW9V.D-B>O2M.(M!5"H:R87M#2<5PL'XD'GU W=K?V=,8BP+#91:0"J)(E!Y1 M6(+ C=2:\R8*H@>75,=0@H/#05>&?>XU/0WE8BM]*?7W08T'P0W(F'0BN/Q\ MS1)D)3TI80@?$7(#F@1"22%%UZ0Y4H'P]-@/:2LIZR($!::QD!GMZ CD@O5$ M=:0+UH$I@+Y$-NB4TEWT4JZ-DV%GRD4F7 D%?6C:E&^IH%Q41S5P' E+4%9T MACWC]9PI=-XW?Y(.UYZ-OZ#RM*?;'1\WW!=\GZ+7!/]S+_B%SDR%<"L>:--. MZ\?CY[3^9/F]&B>\;]$XN!HSEC"ET>/&6%ZGU' 8EDMGD=*1225#$0:T%ACY MP+T6,@]);Y7]M$;#MG<(%\Q_*>;7%!CHN-(T*BDRSTFGWNLQ7O]1(5VDWHF!R$Z[]M*_K9OBF;M[W(DWG; MT;T7E@KH0&%!KLGP^# "VW9)[8LW=>A,UL93GQ.&)366:-F U@MC_.Z%-^A; MU=E?4$L#!!0 ( +> !EE-K:Y2. @ #L? 9 >&PO=V]R:W-H965T M>^#Z_(TSM5?=%K(0R[WQ2E M/INLC=F^FLUTOA:;3$_55I1XLE35)C.XK58SO:U$MK"3-L7,<]UHMLED.3D_ MM6,?J_-359M"EN)CQ72]V635[E(4ZNYLPB?[@1NY6AL:F)V?;K.5^"3,K]N/ M%>YF!Y2%W(A22U6R2BS/)A?\U65 []L7?I/B3G=^,[)DKM07NKE>G$U<4D@4 M(C>$D.%R*ZY$41 0U/BCQ9P<1-+$[N\]^M^L[;!EGFEQI8K?Y<*LSR;)A"W$ M,JL+T+"RU6A[7]VU[SKN1.6U]JH33L9&FQDV5RS^]8/G0G)8Q.\ M=H)G]6X$62W?9"8[/ZW4':OH;:#1#VNJG0WE9$E!^60J/)689\YOQ*TH:\%N M1*Y6I21/G )//]@I6_Q_&^SL@$)QD&H/%[I;9:+LPGR7XOJ5DS.?_R! M1^[K)U0,#BH&3Z$_5\6G07[\(?%<_S7SI^SF[6]OW__Z%M>K#^_>7W^^_O"> M[1_O94G-%E)GJU4E5ID1"S87YDZ(DJFZ8M>E-EE19$WQE OV:2MRF15FQ]Y( M;2HYK^TC+58H4J/M.\NZ,FO1%,J"X2DJ_0NHA9YM*[6H<^.P3+,[ 5F%A![, MK*'&7&B#8MK*'$!K> XHK,Q,70F\OU%UB7E&H@!6C@6KRUQ4!J0#==02]-!8 M1(_R3*_9$FP#E2H,+9=@ #)NQ^#;4FUDSI9@ U7IZ<$EGR%OJ0K,@@AFLGDA M-+-A+HUU1RMAX+'=WL0364)K56OHH%^^.B#_6:^?UY40O<)G*%MAR_;ANU3& MW1M_\$8OV_:#CV3<_O';@A+"3M%'M11P_ENP-T++!3)"=D2\8#'WG,2+.R.> M'SN1&W1&3J+(\7W^LC.4)('#7;AXGC<8/^'<2:+HY>!!D' GY,,) M/'"=)!F&V ]@BQ\,!:1.Q(,1_#AQ0M=G[U%<.J-Z[)@IZ M"O-YVO,4=_PHA+2NBQ,W==PP[$+%@1,DR8/H>0E_ ,5A3S2T_\]V_23OOY=Y M$_&$(M[-NB ,'-?EW53AGN?XWH-)*0C!9]Z(5PP9 X2X,7NB ".JAD* M/H$S8.JX .YZHQ4/G8+4B7L5SATBL\AS>QX+$!+>*WL/W-#>/(X4'X M \L$GG]>$:@H0=X88(_=VCR-[01;7OTO8_X"Q ,X.I.9YWEN=!:5;*7\5$2 M(M^[RU"(^O""7G9&M/0G?7K@ >JQM\9%ON^D7K>-"$$^O)_H()4P3?M0;I)B M*8S9NR+338>/Q%Y0:STH=F*]X6+XTS-&'ID*TY* ?QUB,_5=;8RHAKHBM?QX MB!Q0(S#2 ,7DNR%;Q=P)TB%]>O"8.P(.5NKT%!WP,!ZA0K0I*4_815$P9;^H M!M)!0"/-!Z@U],>:.+1JX5 ,PMM=< [@$3JXX3 U//Z(#4@Y/D;G/H@X^MZ_ M_8^O?[W^[5GTRJDA \,\QFTQZG\ALN[;0:\Z$$SX'%DH,=[V/C001/5'[.H M4>]CCKM4@%X?CP=$O/XS2)=[KA.,5.1S./*QN=0"C75MS\)LYSY&O&&"C^ A MKX"%_&B,5[#<^=Z06$A,T.F<#_#XZAYALP2+GS]D9'2*3NR/]+D4Y"0.GB!? MBE XLH)@F?6#$?8%5_-D1!!(W$^'=O"0EI8A#LQ.HW@,GG<7[N-:@&A$[O]A M.SW21J-S;OMH;1OI'(Q69>B742.BW7T\C!4RF\M"&JKX.VG6[4XZ4M)AW?;Z M/]]=7Y=Y41/)0LS/$CQ[;<2&=6CK0M-^Y6/3!]3\1N1B,T<*^OPX>*7 XR7M ML.*75H5B_<0#MY:[]R'%:7\'D! M/7JC)9+O&&K*D;2[,D-A^^]=K=;$#3D1FE-Y*C+G.UV1:"HK@5E3UKHTBJ>2%7 M[1)WEVGVPD_":<(V\+-=W&PN'7*& CUEOPLF[K%T&F84RMY(O=S9[?3'@*ER MJN;4X5_B8#+M[-=S+,MV&Z38L8S8<$E(6O04WE<=E+E%HMJ=>W%OX 6VL6W' M<9?]0\G:;7N"HC(N5+GZ"6O%Y@CCL(QTS5'JV4JT,F$,K>SX2/XGF98K;>CX M@HI[+8J%-:)4&"MOE9W5;FUBND *S)V$YDU12AAE)MA/&KVB<2M,GHEDPGHT@;/(=, MN BX=#B)L%AN$N0*-#QU'2O,GG'DU"G(I80DB,FL+:JT M>P[+83FJ C!=Q/'6/J8?A%PF?ID\EHWVKQV!$ M/P[4UY2@\E84N^G8V=FL3X8OF0/3X>G.L_$M6 MK22RO!!+3'6G<3AA57-4V]P8M;7'HW-E$&W[&ULW5A[;]LV$/\JA#L4#:#8>OF5)@:;X3\KA( 31ZRE*N37J)U M?C08J"B!C*J^R('CSDK(C&I/P11)59!F5CZ>0BLU)S^O5A*]LG6A#&,R.<[J&&]"_Y5\DK@:-EIAEP!43 MG$A8G?3FWM%I:/@MP^\,-JKU38PG2R&^F\4B/NFY!A"D$&FC@>+//9Q!FAI% M"..NTMEK3!K!]G>M_:/U'7U94@5G(OW&8IV<]"8]$L.*%JG^*C:?H/)G:/1% M(E7V+]F4O %:C JE158)XSICO/RE#]4YM 0F[@X!OQ+P+>[2D$5Y3C6='4NQ M(=)PHS;S85VUT@B.<7,I-UKB+D,Y/;L0(MZP-"64Q^1:)R#)@FO*UVR9@CH> M:+1A. =1I>^TU.?OT# QQ5WZ V!J ?@WPU-^K\->"]TG@.L1W M_7"/OJ!Q.+#Z@G_-X5)?^+(^DS1'*J<1G/0P*Q3(>^C-WK[Q1N[[/6C#!FVX M3_L_0+M?7]@G%]?7Y]\6EY=D?G5.KF\_??A*%E>W\ZN+Q>GEAQOR]LW$=X/W MY!N0A-X#T1N!R9<+J1E?DX(SK<@F85%"J 1"4R6(*"3!*B&I93%(2P&*&(F" M->:P5D<(7&F:IK3,1N2ZR2%B--6/Y)PI+=FR,%M]V.CLOG$E 1T"VKEU5D(KHA88;G#L[*JC50,&B3F<7D*N&U\ M6U$FR3U-"\#K:6[\">0G.)FR5'B(0%D[9K555%,:Y,M"82P8UOO*J>?,C,?L MGL4%31M'7SM<; LOH.LW8;3@I2V,$;S4NX)*]-_8PW0.'+(!@H=E>HNU@?]X M;5TI$S?F)DQ\U=>.AA067&,(@X$+PK(<_;"L!J.Y,D"U^,=LHD,1U4+:$VJQ MUK 5>R!96;# %"R"Y0::E.1*5\M,&>B<* 7&T!_IAJARP? MZ]QP2KP4 T&DV"654]H1A4*7,'-J%/_7WWD4%5EA4BA^E?=""@SB)DMVL7W\ M@]Q*RE55;EZ17FPCHR9=X8-HIY5SB"!;8B 'GKW.8.M*'+,R];>4/[&-=W1W M(J&A7@H3]3N8:BCMN/GY J-3XFOB+\1SIJ[G8$MLT<+0&8Z#%N&P*Q .G7'0 MWG\W'OF.ZWL''3YO$CACS]_12QK6J1LXH3]MUJC<]Y[!?X<&QN%!2VJ,A%&S M/GRVL_[8FSFV+>$I].5.?IW]95W :8-C]X##%22-^[@-> MW&08.I-.W$_\L3.>!ITBB&T%F^E?W3QZYX\]S G_X(6X#4:X,SS8?Z>M2,2L M\4*O39EZCCO#!T1IT"%X2.YS8B+PT/@]:1KC&Z0< M^1IJ,S#/RSEQRUY.VY^I7#,L!BFL4-3MCX<](LL)MEQHD=NI<2DTYK_]3'#H M!VD8<'\EL-A4"V.@^6^$V=]02P,$% @ MX &6&UL[5MM<]NX$?XK&#>YL6<8F7JU M'2>9<7+)-9V\-4YZGR$2DM"0A(X@Y?A^?9]=@&\2)=NYWK2=Z8>+11!8["YV MGWT![]F-R;_9E5*%^)XFF7U^M"J*]=/34QNM5"KMP*Q5AC<+DZ>RP&.^/+7K M7,F8%Z7)Z2@,9Z>IU-G1BV<\]BE_\7XT/*H& M/NOEJJ"!TQ?/UG*IKE7Q=?TIQ]-I3276J+YT=7PZ<)_]#J MQK9^"Y)D;LPW>G@;/S\*B2&5J*@@"A)_-NJ52A(B!#9^\S2/ZBUI8?MW1?T- MRPY9YM*J5R;Y57FF1"\RB>5_Q8V;BV$1E;8P MJ5\,#E*=N;_RN]=#:\%YN&?!R"\8,=]N(^;R9UG(%\]RIN9L_7+#YV4#H#/1-:4'! M/A4__>5\%(XO_VU_KYC-[5'8BZKM!5J,5#I7N1@/>60LQH/9:/I87*M,FUQ\ M, 6DC4M%+R]J(H_$) R#, Q[1B:#X1X"X]$.-],M,MOC?-2)D5G%PVQWZG / MB?$H !GQ^K=2KP&+A]+R8!).ST8GX8@I8$=$*1(8(@O,I'[C),!A?G 6S\:3GS60$ M5:MM"I-IT*>-R1FKPS&_A\0C8FPZ M#"YF%]VQ,^AD=%Z/];F;A3-@,"]6[#RYHN!(KQO'6\M;.D*>UN]YM6M*-ON. MF?_9GO;_OX?_,M2T'J;MAUG[X:S]T+$:9% +F%TSQ-;8AU:-^3WY [\?!G#; M$C_YTT;NCY@[I^#P<,>[SX.S:<_PN'_\![GV(/TC8/SGZ9)VYBKA/&FA",>S6*CO:TJC M[("TTR'6B3)RHQ(D99%B9.DT(3]JPU),%I1!$]37;C Q321 M$*^Q!VVO,59F<2YO>O1?J1NQK#Z]=9E38L"+MRQ@(*Z21!ALF3,+MF+6\T6V M-CR[M#TF@AUDRL<9^,!+1[DH00_F@D/D8U@LP/7@8!#W!:S+F+^IVRU&MJW\ M.,9ZF=M.9#ZY?VCVZ&L5LAS2=HUZBTJ-C\1L#U3N^_M9;4RR(9%J(L?R!(2V M,?>ZG"<:)\L>5>=KE%^I IRPU)&3&$>L**79H0PL.$35DFI)H2R5/41G/'V0 ME&\92FPAMHP/#T[[01RTMI7 MJZK#MUXPE[W1R&&=D2M2VZD3N3\40\.[RAGL"NT11<"AYR;/ MV8)MB\B.H6K+78R85L"\Y'J=Z(@M/I7Y$M;+:EPG)>HY6;C<=.V006GRR+9- M7\S.+E"8,46W,%8.,Z@ZO*6N#=AD[#3,SDHO5\0VE..HB6-]PF\6"BP#[Q;@ MW39,B'" T+16<%UR[V.-Z2_-XJJ& /HQ"B^!I:EC(>"1X26K'?,]_>N/;SX[ MLG1H7P?7 ^%<%BROC=45I$GG>P2U.*R4FALB<*P,!V'-BCCN@MS'3)U<"I.W ME-+L>(=27&&$'9WLQ%_-$PZDQ6O+XBH# #_:Q!1JU,:CJ2V!M8TU!&2P__0P M+<4B,51S+$3X6'0A<(\MP&+: E3&0Y9Q[>'JG=K@\)9*?*;8PN&'!9/.:1KS M:'-5[-\RE]D2SK'(30H#:&D=$@Q;!L'JV#D(/GG=9:$YC/NPT.P^W-I]=.?N M ]CG?1Q1YI21**0+O#=\K2_".=]CTT1$H@6I+E,R-/B]3 @3OK0"MB9DX3R MLXA4?JLV:45MVH>J=>AFU4F*(I47%#&E10DKK$Q\VE*-J^]%+DV.5$?F9,>1 MTNO"#GH"3JV0MGU53*X(I%OU+O^ 8^PB9[&"6EQ,9'MSF9@&3!A \)(3&5NG M63YOI#8PR'@54M)"$"D=ABU5QC"C,UOF!-D!2RA++$YT!<)0RC*7J67EPH#V MV!CP@_&A!Z^Q#<:->_4W\/ MF]Z;ZG]G(Z\GFVGJD.V,IAEQO:/])K;-QO%L')R=A3U-K^K%U:X>>_*8=GTU M"T;C\,#(KXK1H.VY\-A6NNTJ"!\NWE%ZZS+-*O^&.&1\9586V/UW[M/6J;I# MB&UB#'(5P@ZG;8P+!Z.S9@!_03PKTX"BDG*F?0?^0Z"T1'"2B?6B\$T&H09O MSLL;1]DYE<:N^QHB)$[?..GPT21L5X+6O2^S*K%NXP8Y_EPA ZB#*=#&$R:I M;_$N$!5 6R OZ4$F*&8))/-<443&+N]ECH@+)1+%:[4NG.D.IP'H(Z)D7F7= M5[#JX6"O,)R;JC9U7G$10!C@,F>0%$E0S<@<'!FR0M14T8H"-$+P@@I*-L\E MA7V,TX%K+@R+W"1<//3T-LUHB&BXYU:L[HPXT?<8EHR@O(2+IM>;7_Z!VW?$WZ0 M[;]1\[PDQ_;F?U4NR:9V;+\U#NV,!GLE:0R_13K@ZY;_G.WW,?J_9OM]J=B6 M#_2(^4 ?^!@5I@5PLX=ZP=VRZT5S_#'*=]]V&XY\L>8+(HIW*+*\]35L52=Z MRP9,>2ZR^*=-XWXXI [ :!#.QH^#IH7OAH>#\=G4#9^WAL/![/S<#5\PST6W MOU_-0C[R>!>#.$CZ0Y!LD$^@;U M&0J'M=&<+5S%,;<"R=F[[<"6M91KVF825A9]P)X/,;^/X:^J,.6&X7Y M5=%9$PNX;_PH')S5H:VGR]?QJ[I\WI9-2?"SDAM%C1"]44\(!ES'QS4#P07, MRL7OOA"YT-])\9*(S55QHQ #1H/SQSQ[,IBT>RJOS 8U.O8FKE!+:[BO7(?'U,FS.]7+98'WMTVW*=SH%WB-M.;=S(\R.-:D)D94'N$JJ(:T()GIFL=3760)UI'.Q2S'/V4%)8;9S4 MK62;K*^[;)4RU")>5B+PJP4*=&*EJJ,KHV0JM&8.(\B02%YVVUNU/N8R^Y:7 MZR*Z=>Q95/=()FX'XI?*'WPP<(O:.C01U.#\%D&5_$YG)7EXTW*IV0Y\4(8N M%1L0]\A-$OMJN X78X0+RKL/AHI*=:XR/Y2I4B"/5910U= -C :ARS<9FW#' M'3(?%VLP-.X(.ANU/)R;T&X/=]^HD8_%9+C $OKXB8CZ^L+9ZP[L57V])8H M6 (U#ABZ*73-"7BA"_@I7R0WRN6>!!(8S+YRK9'AQ7CLA+AQC18BT&ZV5'2J M.XD=N?S)M!CQ!K@HZ1BW=MXM[UY"P[JJ.;SEI;*.B&HUADKAKOH M[=#"%SC;:H#ADX,1:<_EX*YCKJ&1F*=/A[O1EK.;;>R]PX:\N7J+H>H56SG^ MQ =DR-T.G N!.M-IF39WA92/M.84J]R42[Y6J+X-:%)2O^_@?G?C35^^D=*% M))*\SOFJRFS#+CN_)3.WXN_P*FP.6/BLZ-N^AS>YH?[?MH^+3U_3:[$'VE3K$#=N<^ MY:Y'ZP_AK]SWW\UT]Q7]>[["L@@;"RQ%SCP]$KG[,MT]%&;-7X//30$CY9\K M)0&>- 'O%P:(YQ]H@_I_#WCQ+U!+ P04 " "W@ 99M=:PT#D# #4!P M&0 'AL+W=O:#TT7B_+W#-<>]ZZ0#=N<']G,?.\6R80;/E/C*,YM/@Y, ,MRR2MA+M7^/ M33PCQYF1W31XZ@)/H$4#< &*ONS[(JWS+ M+)M-M-J#=M[$YB8^5(\F<5RZG[*VFJR<<'9VSKB&:R8JA!4R4VFDC%LS"2V1 M.YF9"E. ZH#@_H6@]GS)X-Q].:(S*25F1QC_QN9 MQXG&<#[_< G7\T]72U@MY^NKR^5J^?G+&K[D""G3^I[+'=RZHPRH+6V9')C, MZ@E^JSC9W-D]JKX4:;412 N)MN?]6)JJBNQ0LGMG Z:)6%'!9J@Q ZM@@X3U M69*6N?IS!]D<*4;:+-'7)&Q=S(V0C (G(/F R96VKRSJ B2SE(D&;!"X-%97 M/C-]>/[D)(Z&;^"\I8&BDSK8DQI@92EX+4I5&H22NYHZPXV%DD[:*L'5#[8% MU7H&U#BH6=U0=[2:976B''[8'\>C9[!&R96&S\J2R>7$V9+^X#=;*I3Q@=&U MQO9:PXM/>(L"!IT4=+6_[)%X0&,Y]1_T2>DXDA1D:4[)\!;K_\'&]=G3-HK_ M-OW&UL[5A9;]LX$/XKA%L4-D#8$G6GB8$D/38+Y$"=[C[3$FT)I427 MI.KXW^^0DA6Y5K(MBFQ?]B&1.23G^#CS\3C="OE%Y8QI]%#R2IV-5&Q M.XE47994[BX8%]NSD3O:"SX5ZUP;P6Q^NJ%KMF#Z\^9.0FO6:=23.Q_WNO_8.-'6)94L4N!?^[R'1^-HI'*&,K6G/]26S_8&T\@=&7 M"J[L?[1MQA)GA-)::5&VD\&#LJB:+WUH<>A-B)^:0-H)Q/K=&+)>OJ.:SD^E MV")I1H,V\\.&:F>#'\&3C4>47V7EV09Q7^65=3Y#D8$8?XS^CSNB@] MJ\_[M2@;)?ZP$E,>)VI#4W8V@OQ73'YCH_F;5V[HO'W&1;]ST7].^X^Z^+R2 M:(H6[S]>O[^Y1UH#>O8N)X;]%]SM!*<"C$HEHC39><*:2@ M\L&DSI&H):J@I:B1TRI#4/L27('!$##DN4++'4RPGF)45$CGHE8P4IUT1G[7 M]SZ7C!TD(H(T8C:-OA]KTJK?\'Z@9_^] 806%J&]Y+9#Z4Z*5:'1.)WLA:+J M8X;&=/+R2%U52E/.K?5.^!K%@8.3V.M+G 0[0="3N)&#(S<^D!!,HA@M-BPM M*-<[]*Y06A;+^D#]_ALD!,)]B+CD&. W#5@4@TDZDH-[3: M(<8+(, 6T_%R&.EQ0%4_0O0 H^W!@+PQP MZ))#F1MA$I(C-<0'>> .RIW001]9!5G"42KD1D"Z,,0>8+M5#-M"'&?'GOWL M=^R%. Z2@1 3G 31I)>]&YN]&%$%Y0[^:"BA7S5/7 =[R0 R7H1=QT.W.F?R M,.I?CA@P=^.A-?4@8F\"604IQ="2 >TQ8#';TO2A5](_^WT-7.%A-_+[$@*2 MP/GMQ+@H'OZGQ:=IT<6AG^"HQUE&%D0A=OT^-7HDPGYT('$36/+P1ZD1&,6+ M<4B.,\+T !$-$(@+S)4,$(@; &^ZWL\2I.O[V'&'&-(E(0Z< M([&RQU'Q2!<4W. BI0;QC2S@"EGP77,&9>CS=#&U)U8M$$7 0LHBI@VY7-** M9G1J*^*@7IXZZS9KW!YYP=I*BK(=6-*,&>)ZHN3!^@'+;/,BS:WG^]H$=>!R M"@$)7F1VU-02X_[\?^0&0,_KS#J)0+%!P*@&@-9/E0:,U8U3YHAOO#(8/6IN M:5>U_A7*7FP!@@IEA83[,BQ[Q8QQ(1&<[]<,C55M(E$&!T >3( #/=M'MZ.6]>'!Z'-^\VUU2N"P"9LQ5,=:91,$*R M>0MI&EIL[/O#4F@M2OLS9U!'T@R _I6 @-J&,= ]2,W_ 5!+ P04 " "W M@ 99LLV07_(" ]!P &0 'AL+W=O4EL58Z9\]JI:/)2ND'4R):6%="FFE06EN?1)')2JR8"56-DF8*I2MF::B7 MD:DULMR#*A$E<3R**L9E,)OXV+6>351C!9=XK<$T5<7TTP*%6DV#0; )W/!E M:5T@FDUJML1;M)_J:TVCJ&?)>872<"5!8S$-YH.3Q="M]PL^ &%_DTB)T@%)A9Q\#H[Q'/4 A'1#*^=YQ!G](!M[\W[.]\[53+/3-XIL07 MGMMR&HP#R+%@C; W:O4>NWJ.'5^FA/&_L&K7#M( LL98575@4E!QV?ZS=;BQ[N1KL+<6)JEN$TH!-O4#]B,#M\-1C%IWNT M#7MMPWWL?]2V'WWX:IS$Z2F,0[CX>'9U>0YW\Z_GM[")7S4:L"C0GWJP; V: M632P0HV0'(=CJ%%G*"TPF4,R"@=]@*XZV)) I4;TTX:OH6H[C:[30'W"OD]' M=#M-W6823R'<$797ZG_D38\ZL:,P?5'LKMQD-*B]LC[Y;[GWU4)-J9FFN%5_ M@W JF8%:D\+5SH]SK)0+F30_:(Y+4'0.,D6R9;M8 M&B5X[HF\/*_))2>?UY[$ )$PR+G)-))^3HL<$V_/Z[;FS:[N/Q]MT_Q6/6]6 MMQ&[[E*T96D5ZJ4W;D/Z&VE;=^NC_=LP;RWQU_+V8;ED>LFI*H$%0>/PS7$ MNC7K=F!5[0WR7EFR6_]9TON&VBV@^4(INQFX!/V+.?L)4$L#!!0 ( +> M!EFQ(%T3V00 .X2 9 >&PO=V]R:W-H965T2]6@!H\I@FF1IU%EHOCWL]%2T@9:HKEI#ARDS(E&F< MRGE/+26PN"!*DYY#:=!+&<\ZXV$!NY'CH8P ?WG\D;BK+?A$O,4,L5%1B3,1IT3^_C4,_@%PE\<5JHV M)L:2J1#W9G(9CSK4* 0)1-IP8/AY@#-($L,(U?BRYMG9B#2$]7'%_6-A.]HR M90K.1/*9QWHQZH0=$L.,Y8F^%:M/L+;'-_PBD:CBGZQ*7 "C%BDB#C=S,H#"UH$;E>&8V9:(E MKG*DT^-KW/?++!(ID!N09+)@$H8]C9S->B]:XU"(.=;P#_-R-F6[!S_U.,TLN7CL7DR#':LDB M&'4P Q3(!^B,W[^S _KA@([>1D?O$/<7ZWB8RZ!+KB_NR.7UV1]7%^3FXI9, M/IW, TQF3Z1F#_PF&?S M.CJ"]0)(EJ=3)!0SLBHB'PG8 TA,Y)*9(E@"E&9901_GTGP,(8KC(K8PSO4" M44@D,,-CI"RR%,L,0M(4AQC[T3V!+SE_8 ED6'O(.4]R(^EEVK/X;TR@2N[7 M*6ST,%2QD8AU@\!LAH7$D.]3KY6^LC8+S%Z7FJE))8QE5N7Q:\TH!/1)W MG^T4,BRUV&?W"O /8.N97GA$360H=IW[;H/U";)]:?<2M00+/\BBM05SJ6C;U=B#4 MB'YH M7_+[ON6Z_5=SR/G+,_#G1_SMY$05E8N8ZL\C.#(M06R*6,Q- 5--EWG6H-_T MO^-;U'>:V*%%PQ9LUPJ]L"8>.ZA[T/\M/;"MT ]:OO?8^N=']"#;NHDYLNU! MBE&U=E)WP!N>4=]Q5AU]$P0K9NBTB'WI&?5M4K%U"_HM4K_J;/HVT5O(X0.I M26EC,T:;1:@%,;1\;XMX)S1+=E-L_SWD!ZKAH!J#1NEON^SV:F\0* !EE349@O+@@ M 4: 9 >&PO=V]R:W-H965T)-&E*#N^7W\SI&13CN.TASWTOEA\ MS SG/4/Z:"750S4'T.RQR,OJN#?7>O&NWZ_2.12\\N4"2MR92E5PC5,UZU<+ M!3PS2$7>CX(@Z1=V&L7;L1L MKFFA?W*TX#.X!?UE<:UPUM]0R40!925DR11,CWNGX;NSF. -P-\"5I4S9B3) MO90/-+G*CGL!,00YI)HH8?MI0.K.4HFRC+/6\8I=E!ED7 MOX]<;5B+6M;.HH,$_ZQ+GPT"CT5!%!^@-]B(.C#T!C\HJK]/5DLJWD^*(N5= MM> I'/WE M!3O__/'Z\M/MZ=W5YT_LMU_&43!XSRYS,1/W.3 H%KE< U1LP946J5AP#4R4 M3,\!C1 .V5]W5]<>6\U%.F>\UG.IQ+\1G/;/)%<9TY+-%"\U0\=-'YA<$-^5 MUTSY K65"B,,4Q0ON(7ZTTJD&H6M2/ ]2ZPN!8$N0)DT5*; ^ K/PS5>9BP3 M2Y$!#N!;+98\AQ(3%3O-<\M,Q8A&P3-@]VLFJJH6Y8R5F#'L@89&*5DA$4S/ M>##5DLT:?5UT](0,&"]T8-FZ,R@,V MYQD+_='N"0HHB1)K?,E%SLDD**XYPHB\]Y#6BM9I[HW3I([3,'BD,7&*IDSS M&H.3;(J)$;UEYK$9E*!X;C7),\PQ K7/*5FVN#Z[FY,C(%U4$']D,)UB5F6\ MJB29$RFNA)Y;0?;Q8(VURX)+L#VH%8<.G,H<:P8I1!MEF% CYD<&#G1;]JH7]EL9<,(F<^\$;#T)E/<#YQ MYHDW'B?LZHD7.""O)^,W[C0=ZMJ'40 M>FW"D>*O0E475M705;4-U\"N$9V)PH2/W'!)V-_.';WAUZ<1/[82H?,MUOQ$*N0 M$UWAQ(]&';V'T7L'X.657=QS6:*B\,Q^JZCMZ:^'D9^\Z8@Y\>-M.+\.$[\3 MBV.$CUWX('3YI70P"$E.[*:G(.RI"Z'<,R._$\S1./3CX!\5N35O)V"WMAL/ M?3>#10G:.!/.OL#;X(P@[W<_(QO8V:3![L:>,W?O(C] M7XM/Q"D5K]KXY$U\;EL>K,K8=*2ZYCG3H J3:I?8!YHB[?22U$10'RD?!=[) M(%]CLS9B:^"JVG8/7ZG)6E+'Y'0"SZ;WMNPHR$U3@$UL739G-YT+IZ9#KLJV M&]XI*A[+< %9^!^U#7LZR2,AD_]Q@^;XB&?*1XO1>V=U.@7'6O^J 5?Y'+W^QD[ B.? M:6V=J\?&A.VIS.#4,[%N-5RA0Z)X(+1HB//L7WNAMNXDL[A7! M$I?6S7+Q +F82U0UVI]6W"N0YFH&&F\AYLZ0S@4L"569A@.P+?'W-D#DR/;. MA@4'38V4%WPM:VTO0F:CT6/+% 4C=4@$I!&(B'V?;O[?&ND?_5X;S; ;TI35 MSTVCFS84MGJX=O30WMXW/M(2W-_#M+O!J\TP&F['8>!NT.0#W*N:>M=P:/)! MIVIYDY';8;QUQJ-X> !RZ$V&R99VM-OZ4(\?#$;/T Z]()@<@!U[P2A^0CWN M8(P[\R[U*$@.P$Z\)-[*M"[JW%ZB-=W=WE*%:H.4,H!E)'CE-\GMF7RVR7=RV=S] M'7)N,EB8C.RQ$@SIJ6VR:O.>LL+R]6OLQ^V+P\XUF]QP:=RPN0AM5<,97I > M0._J9:.,/6\2YK@,J(J+DD JDY_,W138.5>YQ N450_QTLU1E$L?8(UI8T$9 MJ:FW+BXO>;ZFG$I9JV5NR.['E+&Z#^2/P"FUH M',9:F+TVO<[3;@U;Z^3YXU_8W(;IC:@>V)1>&P1JE%[BL$QH>((4^X.$O=JS M'$=[ED-_1- 7[4/=6D">/8$*_"#8@WQX^;+2IA/,=ARYX[C&HS&0[>-DY@J$ M62\8^,GX"7WJ% +W3N-LX"4N"G8W]CW]]IVG^0*P7M,?$!4&4EUJ^TJ_6=W\ MQW%JG_:WX/8/DH]8[O&FRG*8(FK@CX8]^XC:3K1ZFU+,QP#ASCDP!P M?RJE;B=TP.:?GY/_ %!+ P04 " "W@ 99%FAL\T1F=+\4"I^A^+.\, MK3J-E4P66%JI2S XOVB-X]/+/LM[@7\DKNS.-[ G,ZWO>?$ENVAU&1 J3!U; M$/3S@%>H%!LB&+]JFZWF2E;<_=Y8_^1])U]FPN*55C]EYO*+UDD+,IR+2KF) M7GW&VI\!VTNULOXOK()L,FA!6EFGBUJ9$!2R#+_BL8[#CL))]Q6%I%9(/.YP MD4?Y43@Q.C=Z!8:ER1I_>%>]-H&3)2=EZ@R=2M)SHVDN#,($EY5)<_(.[HQ> M&%&<=QQ99YE.6ENZ#):25RP-X5:7+K=P76:8[>MW"%4#+=E NTP.&KRIR@AZ MW38DW:1_P%ZO<;7G[?7^@*O!4O]E2UPHIW8I4KQH4258- _8&KU]$P^[9P=P M]AN<_4/6?POG84MQ','T\WAR#9/KNQ^3J\_CZ37<3;[]/1G?PK<2;BJUAF3@ M(YRT05<&+K4P&8C*Y=K(?S$#EZ,_?@%0&VC'5J)TX#2L'[>'@V.PG!S[$O2=&UZ)%PA"1(WH 0WU.\(A4_0HD@^#*.Y%\/;- M2=+MG7%J;BEVO7;M\*'$]/]08N*H"[-#B0FTW(;'>C,S!'S$M'(>D='5(H<' M8:2NZ!Q%:4&6J:HR3@J_)*1D[NFM::RT.0X/PB%1L<2%=E)X6X9TA>_<)"+2 ME/JX\2?V"8XGHIJ(0KX:"K.02LP4!AP1?'\]8)!I\J?4#O1,R07=LQN:!(+(27ND1S%82H+'P/PRCF/T-'#>:"6]FMHA@M1;B/**EL/*?B>[M2- ML>G&^_H<@Z-A_T.4-*6]K<2]JNC#:\UM2_[K^1S]4PTWHB2X:XC]I;UPZ9=R MKD)0)YA5X6D?IZ[N#H2 ,'N>"(C_HKRDDBDB'H&#H]0S^A QKG>$0OJ92G0; M!9.B0.\[S(TN?$T\4P=>!X[3I;+T(%-M/2+'2:O(A;J&QO\?RHQ;!%I*H/=B MQP$E!16H=&O?,P8[T69ZA1ZT"RS;9I\J$ZD.PON,_#X_!1&:A+1[KG!*DN[9 M.$U-13L; !*M/XG/6(BC$Q^N/R5,&]Y]/RL[N@,WKL3P5>]H? *S7Y3K\/"C-I"^MW?[SZ@ MW "F\G%O\'DFNA?H9O=K5\T.GWX)R;;[=")06]K18:WQTFC3V9D\"S0+/U]; M0D.O;QA"F]UFA!^'R74K'N;_6V$6DLI.X9Q4N]$Q3 !EEK/+.WQP8 ($4 M 9 >&PO=V]R:W-H965T[XU*+O7@Z""\.[='!Z;V2FIQ;IFKRY+;S5PHLSX<3 ;;%Q]E7GAZ,3HZ MJ'@NEL)_KLXM1J-.2BI+H9TTFEF1'0Z.)Z_FNS0_3/A;BK7K/3/R9&7,!0T6 MZ>%@3 8))1)/$CA^+L6)4(H$P8ROK*W\1[/^4[3^S$A>8I0+_]FZF1O' Y;4SINR70P+2JF;7W[5XM!; ML#^^8T'<+HB#W8VB8.4;[OG1@35K9FDVI-%#<#6LAG%24U"6WN*KQ#I_-*\= MWCC'3DRYDIH35.Y@Y"&:)HR25LR\$1/?(6:/G1KM"\?>ZE2D-]>/8%)G5[RU M:Q[?*_"O6D=L.AZR>!SOWB-OVODY#?*F/^MG(V;W=C&4(J]#H^;/)WOCU/4;N=D;NWB?]X4;>+^;YL_UX/'W-)G'$YI^7B[.WRR4[^7 Z M7YP=?UI\.%NR[8SCY&LMK=0Y6[6JA6/2,W(A:%CY/6O5:A%8J3 MEL0X[]A:6,%VXKUHBJ12*M0'6$UO]KLW4C-?"/Q9(<)G)Z]8V?!<$,\96"HZ ME@ZAPU4BE!FU&;)U(>&TU(FJ4\"Z$T^C<2>[XC+=*G B,9#^M0;>\!%O,=9M MV5I+7X199>UKKAAFE%M,VMB B9?2U( NAZ6HF)ZB$]"&E\OS1?1#)";1Y!L@ M>CA08!X!Q/0F$/"P#\R"1&(9-@1:V MY(,%&)-,[8R2:5#@/'X("Q=@JH1MR=&1_X-F[\3* O4-F\RV,5R++7)I<)HC M)QH9-()C$MJ\1"3(-$5%GWA:"IO02ZE=K9KH=#2>6[Y:*1&Q3P5R"S,\5^V< M?DH(77"=B'0;4R#^5MJ)T::Z%KKGAR\63HSH76;J,NN99W S>-]IX(7-Q+F_\-N*8K" ;T M<*NL2>N$D /3]9M#A2<@)VOV$II95S.)3B6#65@:MFAK-E;'-;HPBY^Y"F%<@Q95$ZXHR MS'9V>YO=8VF^]XMHCDJ[]QO!7ER_^T+'FBU0G0R0=W\)&8;P6VO]3EV9+E-_Z 6 M?\,,-9UH+*G27W)5-V:%[BQ#QZ$(ER%+P'M.+2N_ BVHO^MX@0Y1-.<#-&G( MF^1: )T-E/ D@.SMO*_0 /Z1*.-H%36P.&ZW"]J&$ O2?S"]:>)*T'2%+IBG M7>9E7-I@;P-PP]0MSHTZZBFACF*.K= ;,.X;[@RIK35UWC39@HXN&1-T7"D% M=[5M^FGDO#1IUY>"808-+Z$*WY4RZ^ [Y4M5*9EPM'LW.$T]Z37\;VJ[G?^C M3KJ?C\N/BSLWT]T9RL&C>-[1FI;C;#+IGWL>SO/W6S$(RNJ&@EO$W" T2?1- M]Q'P:J/J-H XI\Z%2FW2YD00W3"Q"6R)=+]L&_SV'-4[P_*,3E(A(#V5$3NW M2$CL^3BK-I[3E)W9^+MSX/2.SH[\LP1P9DUYTY^.Z=VY[M[C8E#T_7%I2+A\ MXSG6HK63!%(6@@E()+0 M]T^C'K70DBY/%Q^D9TX;S7,ZA0S ;/-A5&ULI591C]HX$/XK5EKU*4<2)P38!21@MSI. MV[L5;-MGDPS$:F*GMK/L_OL;.VQ*18IZNA<:E* MH6=>84Q]$P0Z*Z!B>B!K$+BREZIB!J?J$.A: /.IPQ[5 M?"H;4W(!CXKHIJJ8>EU"*8\S+_+>@ T_%,8"P7Q:LP-LP7RN'Q7.@HXEYQ4( MS:4@"O8S;Q'=+!-K[PR^<#CJLV]B,]E)^6Z*F3?V2 Y[UI1F(X]_PBF?H>7+ M9*G=+SFVMA0C9HTVLCHYX[SBHAW9RZD.9P[C\!<.].1 G>XVD%-YQPR;3Y4\ M$F6MDAGYHLL4PWDY(&S'2^YX:"G@4%BNQQD)Y)E M2T)_09*23U*80I-[D4/^LW^ @CI5]$W5DEXE_*L1 Q*'/J$A3:[PQ5V6L>.+ M?S_+05^:+4O2SV+OQXVN608S#R^ !O4,WOS#NR@-;Z]H3#J-R37VW]V)JR3] M$J-X0!:KU>;S_1UY6"^6ZX?UT_I^2SZ\&],POB5/!9"]+/%^,JX! M=^JEAX]&/@W3"S@:^6%(L69[4 I+I. 91 .7=D-_,HXNX;$?IT.RS1-1R,AAY1[4/43HRL7?/?28,;YSX+?+M!60-[K G.\DVF2".#0[WQ8&15R#,N6'03#R,R%S;SJN)2[E%S"GXX+L<,UTL_BP7#D=RRQS#"W4N=@,)EXU_W+V=#5 MUP6_)%;VX S.R5;K9Q?>HE"-B&2\MI]>U=,##\Y[] M:^V=O6R%Q;E63S*F=.)=>!!C(DI%C[JZQ=;/N>.+M++U-U1-[6#D051:TED+ M9@69S)NK>&N?PP'@(O@$$+: L-;=-*I5W@@2T['1%1A7S6SN4%NMT2Q.YNZE MK,GP77B,_5\E'R?M#WMPO[E=/,+\ M?KF\VRP7J\T:KE0Y3*140,7.X/8^*@DI:!+ [$T/*O:--9TPL6.DU)! M3/3..^"EY!(H.:<[QG=.(#DQ42" MF$KSB=\5]P)A#S1P?B_A#/ MPH)<06%T*K>2,':_O7[T MWOV#8&ULK59M;]HP M$/XK5E9-G;0U[Z%B$*F4EW5:)]2NVV< M&E*1VY[C1':!";7B@5F;\WC *ID3"G..1%44F+^,(&?KH>5:FX4[LLRD7K#C M08F7< _RH9QS-;-;E9040 5A%'%8#*TKMS\+--X ?A)8BZTQTIX\,O:D)S?I MT'+T@2"'1&H%K#XKN(8\UT+J&+\;3:LUJ8G;XXWZU/BN?'G$ JY9_HND,AM: MEQ9*88&K7-ZQ]1=H_ FU7L)R87[1NL:&H8622DA6-&1U@H+0^HN?FWO8(KC[ M"%Y#\%X3@CT$OR'XQQ*"AA <2P@;0GBL#U%#B(ZUT&L(/1.L^G9-:,98XGC MV1IQC59J>F#B:]@J(H3J3+R77.T2Q9/Q'+^@E4!SX":K:0)H3$22,U%Q0)_0 MP_T8G9]]0&>(4/0C8Y7 -!4#6RK;6L%.&CNCVHZWQXZ/;AF5F4 3FD+:P9\> MYD<'^+;RN77'Z;>8*[J[ESX^WKK?09\< M;[V+/OT_WV=O/OQ.*/PV!WVCY[\E![M2K98+NN7TV]T7)4Y@:*G'60!?@16_ M?^=&SN>N.)]2;'Q*L\5;/HO MS'=\UPEV8;,NF.-MJ=6W9V^]_07PI2GK B6LHK+^"[:K;>=P90KFJ_61VY^X M'>M3U6G4C<%?^;I-4:_0DE"!B)9:2K/(Y.JCIEAIKHE MX!J@]A>,R !ED0PNQ 1 ( (H& 9 M>&PO=V]R:W-H965T(%5@@89-H2L+GMX0X8LR"C M\;MC>OV6-O%T?*1_=;6;6G98P9U@ORC19>)]\!"!'#=,;\7A&W3U3"TO$TRY M*SJTL=%'#V6-TJ+JDHU!17E[QR_=.9PD&,[YA+!+")UWNY&S_(PU3F,I#DC: M:$.S U>JRS9RE-N7\JBE>4I-GD[7YG@)2/0D,:&\0$LI,2_ '+M6L:_-#C;. MSSK:JJ6%%V@1>A!OUPJ/>*AP$WC=\A*+@!H5!.!G@17VY MD>-%%WCGRKQ!NU>TYH3N*6DP.U=U"YV;AL&:!SLIK?C4VVT)*+6_Q]RJSL,S#%3," V[<6F@YSO@M]> M(3<,?4MNULO-KCJU)Y#F*\(7W(:9;[G->[?YU0CGG_2'"F3ANJ!" MF6BX;EM%O]HWVF7;7_Z&MUWZ &ULS59_;]LV$/TJ!Q4H6L"S M9-E.LL0VX#0+E@$=@CA=L3]IZ601I4B5I.+DV^^.DA6W MW3W^F&V-_>1*1 ^/E=)N'I7>U^=Q[+(2*^&&ID9-,X6QE?#T:C>QJRV*/#A5 M*DZ3Y"2NA-318A:^W=K%S#1>28VW%EQ35<(^7:(RVWDTBG8?[N2F]/PA7LQJ ML<$5^@_UK:6WN$?)987:2:/!8C&/EJ/SRRG;!X,_)&[=WA@XD[4QG_CE)I]' M"1-"A9EG!$%_#_@.E6(@HO&YPXSZD.RX/]ZA7X?<*9>U;:# \DIXL9A9LP7+UH3&@Y!J\"9R4G-35M[2K"0_OUAFF6FTEWH#MT;) M3**#-[O1VUGL*09;QEF'=]GBI=_ .X'W1OO2P2\ZQ_Q+_YBX]033'<'+]"C@ M;XT>PC@90)JDDR-XXS[A<< ;?W_"A[)L02:'07BEG+M:9#B/:"DXM \8+5Z_ M&ITD%T MC7&'&<&I)[AQKL$<]@MMC:9Q%@([^-UX^)/VFV5N:O^U2-IT_J-0\/K569J, M+^!&T]0#5FNT+*SQ 'R)<+U<78+L,%D@N*7)Q0HWH71W6!L;PKVY M-[7,(#U+W@[@IJHM@X;(WG1F8JT0=IY7TF7*N(9J'S!'%T.X+Z4#YX7.A8N& ^#]C7^ZH1X3$DCMTQE@4 M&+;:@%001:+TA,(2!&ZDUEPW41 ]N*(^AA:,IH.N#?O<:WH:JL56^E+J'X.: M#((;D#'I1'#[^1 @R$IZ4L(0/B+D!C0)A(I"^T!-"X-4(#P]]E/:2JJZ"$F! M:2QD1CO:.'+!>J(^TO;OP!1 YZ0-BXG*7?3KK39.ALA4BTRX$@HZ!MN2;ZFA MW%1'/7"<"4M05K2M>,;K.5/J'#=_E@[WGHV_H/(3HYI/5GRQ_5..%]C\;!U9BQA*F,'C?&\CR5AM.PW#J+ M5(Y,*AF:,*"YP,@'[K60>2AZJ^SG.1JV-QO>!?]5,;^DP$#'E:91.6&!J&LE MZ2NO9*#:-]\+2PUTH+ @UV1X2F>.;>]P[8LW=;@WK8VG6U@8EG3M M14'8>*%,](-PQK^R&11/.>NR/OGCN) M)VM3?[0+K1WZM"PK>SI:.+U3O-6 M:%F.:13)\3(MJM'DI!U[7T].3./*HM+O:V2;Y3*M/Y_KTJQ/1V1T-W!=S!?. M#XPG)ZMTKF^T^VWUOH:G\0XE+Y:ZLH6I4*UGIZ,SDH\@;I4F?.(Z1PN=47NBP]$)CQYQ9SM%/I!LJUWE7?@R6['O-R M\&$0GR?'=I5F^G0$B6!U?:M'D^<_$!F]VF,BWYG(]Z%/;B#O\J;4R,P@ZEMS M+_5%1(;[1Q5Y $7 ']GW M_VN[WA2?OJ?Y9L>5W_$PZKC@.(I(&"J$4LSH@UB)B<()9UTTPK"*10<-,BI. M.FB1@NB4730I8LP2=6#"0XQB+OM[(8%_)$EZXT<4-"0#"9]0 4O09PZO@,;1 M@ ("6=-7? 2+ :X.*R 1'S"2-.BO&84M()^TIR'+8E*0C M*V*)"1H G%/Q%?9>_H(W8MB[?^XAO@& KMF"^:XUS3)M MK:F+3L1+)2#>PS(D(#\H[T2G]*5?=>F!<,C'3HV3C.&$AFV$ /(AW4 '4A%) MTH6*5 *E,$9ORM3:UE8([-RL;6_AI6>]?C'\\8"11T3!-<7)TQ WHF\:YW3= MMQ5"B\5]9.X;@8$&*/9KUV>KF&">].F3PHI% ^# 2D%/$8"+>( *H4U)B$)G M98F,6^BZKQT(:*#Y &H5;*B)@U9-]-7 ]H8%9P* ?ST![Q*=?O[RWS0"5#YH!2B "*>E@PXL. M-%'=L195=E[F2.03D';Q"/?$RPX@74(CS !(6[OM: +LA MH_]/.[WGBZ'8?3$4!W\QS(#TZA1::D@C[3:9M!LKBW1:E(7SI+ NW&+[@1FB M=NCCX7ZE UT_-/K;MM^V??\3;<$H?!OXYU\&KJJL;'Q- #5OP2MTY?02!2Q[ M9OU*/B;>JR27.M/+*60,(_>#%P;*3F5!"]Q94Q9Y^\YSGI9IE6ETXS_8W\=F MOPA=W*W36;MV3U^%:["NN&U?RC!J*ECS$NSHC%:0*_>1Z4,Z"1L)R:$Q^O*6 M8>?1V_N=?[I;EWJFZQH\V;Y+Q[[LZ\>WB:K87\I H 3>ZKDJNY56A=GSF.2@NHJ#H5-7#<60E9 M48U+F3NJED"SUJ@J'=]U)TY%&;<6LU9V(QB2<;B11#551>7#!91B/;<\ M:ROXR/)"&X&SF-4TAUO0O]0W$E=.CY*Q"KAB@A,)J[EU[IU=3(Q^J_ K@[4: MO!.3R5*(3V9QG/=D]YO_H>!0>(>,/ W!GX;=^>HC?**:KJ82;$FTF@CFGEI4VVM,3C&S:'< M:HF[#.WTXIT0V9J5):$\(Q]T 9)<.9H=&9,G'0#?-$! M^P> )^2]X+I0Y'N>0;9K[V"0?:3^-M(+?Q3PQX:?DL"UB>_ZX0A>T&<>M'C! M7\I\7\(=7K@?SW3/F:II"G,+VT.!_ +6XO4K;^*^&8DV[*,-Q] 7EP5&A@?" M.,%024JE?& \)[02#==$K$B^S6?Y0!3DV#AZ7Q+C;EZ_2GPW>$/^J\_S-&VJ MIJ0:LA=UWTFA%.G+Y)#:V]_)G:1<(:BAF1>LKZN:,FD.IQ?]C-1[T,L5I% M ML38#KZW\X#&5+&/&HQI(_D#"V,'&IH&^:7KI3Q@:J -*VU#L02&=_>L']_1Y MS96FY9/__#OBV5/7L['G!K(PM*,X& A.=@W"R(Z#X?Y1//%MU_>.=_2\)+!C MSR>W-:2,EOJ!7#&E)5LV.S%,W< ._6F_1G#?>Q;^$3J(P^.!58R"2;\^>;9S M)S#?QR9_C,RW$Q3:_C0WAT'W8;Z83^@33CV%^-IV618\]V5BHH2 MNN)1!:N-DN GJ:AJT&B82P!3]B@WEX.6-,-1",%B;>Y*8IRB4.J"B$8>RM/NF%PT"CVHO[^_SI7YDY]*]]/!0Y8'4D4VLE.43#W;C<9J=M+7[.1/U^Q.'G"/@[&"?04[COC_4?]31^T, MYF+L^;R=_I$#S,C4C !ED1 MFA4EC 4 .44 9 >&PO=V]R:W-H965T>,^]\.XAQ=,'+K[))8 BCWE6R+/14JGRQ+9ELH24%:/IJ9%]%=-37JF,%?!5$%GE.15/%Y#QA[.1 M.UH+;MABJ;3 GIZ6= &WH.[+KP)'=HN2LAP*R7A!!,S/1N?NR<5$SS<3?F?P M(+>>B8YDQODW/?B091H(W?C>8(Y:DUIQ^WF-_LG$ MCK',J(1+GOW!4K4\&TU&)(4YK3)UPQ]^A2:>4.,E/)/FESS4<\-H1))**IXW MRNA!SHKZGSXV>=A2F#A[%+Q&P3-^UX:,EQ^HHM-3P1^(T+,133^84(TV.L<* MO2BW2N!;AGIJ>L6+Q;L[$#GY #-%#N_H+ -Y=&HK!-=3[*0!NJB!O#U $;GF MA5I*\K%((7VN;Z-3K6?>VK,+;Q#PMZH8$]^QB.=XP0">WT;J&SS_19'V!5CK M!_WZNCM.9$D3.!MA^4L0*QA-W[YQ(^?]@'=!ZUTPA#Z]@807"83-J#*67&YNK-@Z2*'S= ML2QKTZ)CGBANY*B>8J-"JI\DSUA*%0[6CIORE!9A!>+S2B*"/"%OWTP\QW__ MK_V?&S=WI5A&T)81+GT"^0P$\5TC\8D_CKSP%W(+!>."?.$*HTTKT"^/6Y # M$CB.Y3A.CR08NWL ?*_C3;@#LRLW]9EQ6JQ]B+I3W3T0OF5SJGQM0N0A!:?=D(8I..VOD]$ ?:L="UCJ/CY[(8<^)-!A@A;!DA'&S4 M6]Q_TRHS;2] [Z^ZZS:]6=(GOS!I!U@U>/J;8TML1*93^IATTQKO M_L'SCY'O;L3O?IKDY6S>686:JSO,,['BL$?L]\M?Z76S@;QFH_AYN=36ZCK: MK++G6^Z6$P>[^3GH9&9_#1UW:@CW#\P$VAT@ZZ@EZVB8K.MO&LUVW^")Z/W" M4)\^3ET*2)DBYPL!H-/=1]3#Z'U$W7Q@U2>VO[5)#E/4IT(^8]^CE]-OTV$2 M<)?%G5NUE3VG^M2JGC"AT9YVV/=_ RN>K71(+<@A/4*@W;ZZK689RS$>O>.T MYP6]OX-"3TS421UQA0=1O6UUD'&]AU"E3JU.J(E*#N'XX0]%^;E %T$J(O!, MW+PGKQ9=-8/4.K27# M.<-2Z,2/;ZJDJ2ZZHBRCLSK^.C%:W$W.>.W10$?%;4?%+S[^['%@4S^?&@?Z M6FO83.\9R#0SGE"E.=Z\./S_Y@=.3Y=M.'"WTS:2^DQMSG6SIYZBV77C,/*M M.'9Z/@;6+\Z[>>SIKVUNCRS/=[J2@>J:M-4U>7%UK0ETS@KL$88[4,)7@,]* M]M73,/#KUO3Y&E[31Y97.?F"7TQ7L )!%UCL^F*@5?/'H7/BCG&=KO%XKB>W M-'/)]V@XC<8ES\N,&3JHV:@$P7A* &E@0UK;TP:ZVMZZ>LI!+,P%F\0,5H6J M;Z%::7N'=UY?76VFUQ> UU0L&%)/!G-4=<8Q?KV(^E*M'BA>FHNL&5>*Y^9Q M"13K2$_ ]W..YYAFH VT-YO3OP!02P,$% @ MX &6 @ Q04 M !D !X;"]W;W)K&ULK53O:]LP$/U7#G39-?S1A(8[(NE.[WW],[B;K&7 MZD&7B :>*B[T,BB-J>=AJ+,2*ZK'LD9A3PJI*FILJ':AKA72W),J'D:$S,** M,A&D"Y^[5>E"-H8S@;<*=%-55#VOD,O],I@$+XD[MBN-2X3IHJ8[W*#Y7M\J M&X6]2LXJ%)I) 0J+97 UF:\2A_> >X9[/=B#JV0KY8,+/N?+@#A#R#$S3H': MY1'7R+D3LC9^=II!?Z4C#O^=EO+EFI<2_Z#Y:9K8UQX1[E(U1]I19GDFO*5-P3WF#<(-4-PKM'S<:WGRC M6X[Z[2(T]A:'#;-.<=4J1D<49W CA2DU?! YYG_R0^NNMQB]6%Q%)P6_-&(, M,1E!1*+DA%[,4C/SR8S!9-7\,&!9,*ODJ#NB>\@G@V&24) M&6020D:$$$C&DQ.\)+&\Z9 W;7F''BT !EFN<1-*M 4 *D2 9 >&PO=V]R:W-H M965T7\[U4GW7)F$&WE:CU MQ:0T9G>V6.B\9!75<[EC-?1LI*JH@:;:+O1.,5JX2958$,^+%Q7E]61Y[F37 M:GDN&R-XS:X5TDU5475WR83<7TS\22_XR+>EL8+%\GQ'MVS%S*?=M8+6XJ"E MX!6K-9SWXC6PD:RD_V\;;XF+B68>88+FQ&BA\ MOK(K)H15!&Y\Z71.#B;MQ.'O7OMO+G:(94TUNY+B;UZ8\F*23E#!-K01YJ/< M_\&Z>"*K+Y="N_]HWXZ-H@G*&VUDU4T&#RI>MU]ZV^$PF)!Z#TP@W03B_&X- M.2_?4$.7YTKND;*C09O]X4)UL\$Y7MM%61D%O1SFF>6*;0%B@][6[0);I*8W M="V8GITO#%BPXQ9YI^VRU48>T!:C=[(VI4:_U@4KCNZ1W[Y(\JO#/ MIIZCP,.(>"1\1%]P"#=P^H+O#W/>)B>' Q?$S[<@5U5S2"(;E!-52EIK 6B-8%@DI4X'*]A6K0D'4:K>^0 M;B,:B^)Q.S_I,0+ M7OVT[TVI&#M*1@2IQ%PJ?3O6IM:P$7Q'3_]]#PBM'$*]Y,,!I6LE-]R@:3[K MA;(>8H:F=/;\2+VMM:%"M)7="U^@-/)PE@9#B9=A+XH&$C_Q<.*G1Q*"29*B MU8[EG ISA]YP;11?-T?J^V^4$9R2^%2>A#A,TQ-YFN$@.04YCRIWVD0XS3*1D+,QR5]W1!P0TA][4) MZL#E' *2@A=NU-P18W]-.7$#H!=-X9Q$H-@B8%4#0-N'2@/&FM8I>\2W7EF, M[C5WM*L[_[AVMUR H$8%5W!YAF6OF34N%8+S_9:AJ6YL)-KB ,B#"7!@8+C: M"7G'F%4I.R6P.KK9V1IQYCNCL[FKV7\IZT/0AXAJ"8ME4=_P'&"X.PG1ILLA M,$A:M&GJO$V=WO=[8V534?O"H&%6SC1&&UB<.@?K-A4$VU*!.R<<8%W0N =& MMP.EJTS%A%O87&JCYY !G2^PR@7ZTE @"67ALILH1GM738U2,,,N:?ZEX9JW MZ<-43^!HP]QU\ 4)YAZJN!#NFJY!^EY" #Z9H\M&PP5/:W0EJW5/_(#O-W4W M=D%=#)X/*J:V[I'$ M34IGU).$@/[S"OV^>'^^'M(\X[JK8<0!9L U.]>1)- MD&H?1MJ&D3OW&+&6QLC*_2P9U)&R Z!_(R&@KF$-'%ZGEO\ 4$L#!!0 ( M +> !EFB*@P05 0 %<1 9 >&PO=V]R:W-H965T:V*O((K061=EDS\R\$ZW)DO-;O7B?SBRJ!8("$J4I,'SMH=1 M@C*OFB>[;^WPF -N>\ U,C)3OF&+SJ>!;(C0V4M,O1E5S&H7+*^V4A1*X MF^,Y-?^$?G]?);P$<@6"+#(F@+RZ8Y5">GQ^C*+MY7-W\EVZ)PE^J*L1\:A-7.KZ)^AY>WT]0\_[#GV'U&RH M^,-4=*:B Z"Z\ 8CV=FNO5WE%5,9KB;:4K_=HOQ$GH':$N!U(Z-L^I1V(1SW;H?X1 MA-IN1)_-9I]->4%[L#L06"U)59=+# $,$52OQ/IF@D$2++Q2H8YYM29G;?A\ M3Z73 @DY@M<(*WS6$ MXLDM@2]U?L<*J)0\_^G"7"\N)!9NE1%="_($SG2G2%$B=(3N/K)O,M^>1'W[ MNX%- [>/'=LT'L#V[-B/.^RQL=Z"^C;WT+'C(!S(*9MZDR%L?^+TL5W;#VB' M.]8D,R94CS& 0^TX#OI@-$L_P)S(]H? @1U0CRR,Q_EFF-$$@]/IZQJC R9Q M']O#,.X[($9.;A_\/TOW78\8RD],>!H.)GR$OYCV4Q?!(9HC< <3/D+WA^'S M5QTUD&([=;S2>CT#M:!OW8_JEE"SWT6#VB^$@/ M)SX6/#Q:^M&)Z2/83Q_!Z>FC&<]UJ+4Q!O=)4>M>O!*\Q"8*)&%%4A?,S-6( M]]!H0I:0L%J"/I.+7:7>\KI(28:1C?N @WFE\K.T+>=#T\QI>9_+<]]Z_IBI MYE"),>L.4XUYV^U== WV"[O>?^A^9T^"8 V.W0&VC^UZ3^.*PV 8#7#]KF[W M--8'R.D6US_IX'A'^V5M #&V _^ >,,5*XY3\L$(^Y%BN"C&I-=,ALK9N'/9 M+4&LS95>HI!UI9I[[QZZ_VIPT5R6#^C-)X>/3*QS-&&ULS5EM;]LV M$/XKA-L5":#*>K>4)@:<-MTZH%N0I.UGVJ)M(9+HD52<#/OQ.U)O5"S+2=Q\BL]&EM2(I&0AI @,S1UY3])42@(]_JJ$CIHU):/^74O_ MJ(P'8^:8D_@*5>_:%O16B.T*+B@ M6<4,&F1)7K;XOMJ(IS X%8.C]"X74EI^P )/3QG=(B:I09K\4*8J;E NR>6I M7 L&LPGPB>GU&C/R]ASLBM%[FL%AOR3I,B=\@Q?D; 0^P0F[(Z/IFU=V8+T;T--K]/2&I$^OP07C(B6( M+A%7.L^5S@O]G,B]_"8(YS%X28H%$"0YD! D\#V:DYPL$]%GVO#B;UZ%CN6^ M0S=K@I8T!>]-\A6(!% @96LN^'ZM<$8+2<#(@J[RY&^E%*(% S) 15XRY)RF M2:Q4Y@*:3 D%:R'H,"6(&Y)/K&G!P4!^@FJU7JJ]63-".@!' $^BX%G37"?W M!RCJ5@):[[@#,]>'$%!3OT:>$;B.UG>-B6]K_0CZD=8/C# ,T*<6-;LBCZ+P M6._:H=7I.X9M3;HCCG\\X 1^XP3^?W<"%=L3\= '\V'Q@_#&=;)2F 3P'E0 M9#& *T$<,)"5&"!=#,B3[:+:@/U>D(U @/IRB=I_7A[OA]JKZQEO@2_HXA;] MN5&>NT/Z1Y'-P4#82@5ECKZIE E[,[L#=U\1]"O#N4"0QPCZB!.&ON*T(.@2 MF!3'#Y"PPW!Q3]@B :A?LF2A4\Y6*T964M"G7+ $RI!%)>T.?-/7?,%Q7--K'+61LAG)!,(BS!4Z1("Q3H?:.\+)ZD(&'5H$G@XAM7X1M :-NE[5(#)70T0EN49E:MK)B@:*80#V\"<59#-5^/4[7=U^ MT6WMW%8N*OO@\TMMUZRTJV;>"?U7#;1Z14$J2&C<37#@[Q,CF/B[P#?M*OO1 M/=GO4-BYH0* W3G-YY[@02VK=L ))HT33)[L!+?D 3"Q*:!@*GBI&:BE?*\$ MDDS$=RIU O5^O ^O^-*!L1>0G:RO#;89XC/!O&#J9B/+.XFH(Q6*=H,I9+Y@ M__(')MNH>I7P6[24MY0$B@6HD@1B\B@>,WFF&Z!?>H8]IV?8-B>2^@-4N7!] MB]%#0M)XA\HR+:N'>7CXH@)+_ @I4'C?$E%%,^6&6*"5*O!BW:#7R+=<,PAW MY$L_L/220YN &LNQ'D\,.$;8.$8X"%.(&NJI#"J()@[G<5+&A'\@YG H)A?2 MV#)8^M] 1O6JN]6*9,K?[Z.\MHIB00026%/T_G_ M]FSRW/92[0RZDCM5[L]5M3=U>F[W07>Y&K*-R]4"^R^&321J@Y/CM]^VI4_( MSD>/T#I&Y$?M+*=Q_=)^:)CN9,]LFW# MLJ(!VM"P)MZ.=*_#$7;Z7>F.%0S01D;@A7VN/-8>I3/"5NKIG0-&BUR4[]/- M:/.\/RL?M5OR\K^!SYBMX :.4K($5LN<^"/$RN?VLB/H1CUQSZD0-%.?:X)C MPB0!S"\I%75'+M#\Z3']%U!+ P04 " "W@ 99:?,J(K " !B!@ &0 M 'AL+W=OP-L9'O@ZM\[@)Y.2K7&!]E]>!R%KOX.N WQXW96X.K9*G4D]O<9E,O<()08&H= Z/7,]Z@ M$(Z(9/QM.;TNI0/NKW?LW^O:J98E,WBCQ!^>V7SJC3W(<,4J81_4Y@>V]0P= M7ZJ$J9^P:6*C"P_2REA5M&!24'#9O-FV_0Y[@''P 2!L 6&MNTE4J_S*+$LF M6FU NVABV5*@ M.9_XEM*X8#]M*6<-9?@!Y0CNE+2Y@6\RP^P0[Y.\3F.XTS@+CQ+^K&0?HJ ' M81#&1_BBKN:HYHL^6?-[I39,\?M,KF,N3IP1+TK:]58H#+^H3Z<*^:, ,;/ C.(*NT2TMQ41].OXS#(+KZ]/LQ MUXC 9 8+OCVX;6]"Z>Y@=WW7 4Y@. AZ<1QU%N>]E:FH,LI^,NR'U-Q"N#E%HG"; M??+W^KY O:ZGFR$UE;3-".BLW0"];N;&2W@S?>^87G-I0."* MH$'_8NB!;B9:L[&JK*?(4EF:2?4RIY\ :A= _I52=K=Q";K?2O(?4$L#!!0 M ( +> !EEDJ;N;(P, -<' 9 >&PO=V]R:W-H965T];ZQ319M6S/3R"_:U_T"A%$TK#.Y"&*TDT[-;!-KF]RYR]-_B= MP\&<_1.72:749R=\:-9![ B!@-HZ!(;+,]R#$ X(:?QYQ RFD,[Q_/^$_J// M'7.IF(%[)?[@C6W701F0!G9L$/:3.OP$QWP6#J]6PO@O.8RV61Z0>C!6=4=G M9-!Q.:[LY5B',X&\EQZ0[E MT6KAG-]NZU@,TY!?.*BZXY6#(MT^L$F"^6T46(SB[J#ZBW8UH]"MH.?FH MI&T-^4$VT/S=/T)F$SUZHG='KP+^/,@;DL8AH3'-KN"E4[JIQTO_?;HW&831RS:^B;1VR\9A! U([4JNN5 M!&F-D]B1O?C"?H[\=?BG%LA.">Q&+O?$NJ,F!C =KAMB<7M?XP:$B[14@V& MR<;/DR'3]Y##5T%FJ2)UZ1D>TGLOU-Y9()IG](! MAQ NF!&IE!P,]E;7<>/&CYG,OR$Y#JXIBY FQ5PW1V?#%FNS]T^*P9X9I!WG[J2=7JWM.*R_F(]/WD>F]QPO MEX =NL8WQ2(@>GQ&1L&JWH_N2ED\"/_;XLL+VAG@_DXI>Q)<@.DMW_P%4$L# M!!0 ( +> !EDKT%(X#P( )<$ 9 >&PO=V]R:W-H965T)/X[+O?_<^Y2W8P]M&U $B>E-0NIRUBMV;,E2TH[F:F ^U/ M:F,51V_:AKG. J]BD)(L39(54UQH6F1Q;VN+S/0HA8:M):Y7BMOG#4ASR.F< M'C?N1=-BV&!%UO$&'@!_=%OK+391*J% .V$TL5#G]'J^WBR#?W3X*>#@3M8D M5+(SYC$87ZN<)D$02"@Q$+A_[>$&I P@+^/WR*13RA!XNC[2/\?:?2T[[N#& MR%^BPC:G'RBIH.:]Q'MS^ )C/5>!5QKIXI,"*W!F-K2.?= 75O_', MBYL4ID>%F_0B\%NO9V21O"-IDBZ)@\:W!%[@+J;*%Y&[^)_*S]4[8);G,6%H MUJ[C)>2T"R"[!UJ\?C5?)1\OB%Q.(I>7Z,7W7NW !I46.F.1[R0<[\"=$SO@ MKB(N#.2^2#.V/U7 3II%@6WB2#A2FE[CT#?3[C1UUT.S_74?1O:.VT9H1R34 M/C29O?=Y[3 &@X&FBZVW,^@;.2Y;_^< &QS\>6T,'HV08/H7%7\ 4$L#!!0 M ( +> !EET2&PO=V]R:W-H965T0[#T7>F6L>W4/RZJG>_-(\5%4[^76U7#?7TX>V M?7PSFS5W#]6J;%[7C]6Z^\WG>K,JV^[EYG[6/&ZJ);IV:I;2;-=KS4Z4^6)5K9M%O9YLJL_7TQ_9&Y?SW8!]Q+\7U5-S]O-DMRN? MZOJ7W8MW\^MIMOM$U;*Z:W>(LOOG2W5;+9<[4O]VYE/95+?U\C^+>?MP/^N7C;[_T^>#K&& M3R=WVZ:M5\?!W2=8+=:'?\M?CP?B;$#'H0?PXP >#Y # \1Q@'CI%N1Q@'SI M%M1QP'[79X=]WQ\X6[;ES=6F?IIL=M$=;??#_NCO1W?':['>392/[:;[[:(; MU]Y\J+Y4ZVTU^5#=U??KQ3YYKR9VT93W]YOJOMR_\;VMVG*Q;'[H?O7S1SOY M_KL?)M]-%NO)OQ[J;5.NY\W5K.T^S XYNSMN^.UAPWQ@PV+R4[UN'YJ)6\^K M.3'>IL?KQ/A9=Q!.1X)_/1)O>1+X]^WZ]41D?YKPC$OB\]R^?+B@=N>RK;MO MWGIP,,1I6H@]3[Q\6E I/D D#=G5N#?-8WE774^[(M94FR_5].:/?V Z^S-U M?)$PBX0Y$"S(A#QE0J;H-__H_E@TY;(BE]AAJ-X/W?U)^'+#A%::\:O9E_-# M2\4QPW449_MQ7$LI>!'&.2).Y5QEV2DNV%=UVE>5W-=WZV:[/)2QDX M#%7GRYM)SGME@(C+\D+F)BH#_;@.5F2<166 B&.R0PJZ#.2G?QYPM1<\'CY4^%Y;F,5K4EPAC/I,BCU4_%=1L=6OWL3)*P]/K?MFVU MH?29J$TAZ*%^?!ZC"5%QC/K7_16 MHF&R*.+UWP_3JF!YO/[[8=VZED;%ZY^(XSHW\7#TI+GQ^5R4KD+&DRGBF!A3]&M"=W9]] M*7<\OD2GW&&J H=X-4G,E5%BUV2\057(D\.H=P=!S+^$!-\$J(IY70/Q^K M3=DNUO>3C]7]JCM)(/<:VIF"TBR4YE"T,!M>JW$)J050U0:E62C-H6AA/KQJ MX^D66KH60+4:E&:/M*"90/8>J;I)ERXT>5]BJ*S(17S2 M0<1E1:94?-+1CV-:%H;WSCJ(0&4TDVJ@.'CIQ=/2Z[GB<'@YPKZ0WM[HF0IM MG$%I#D4+G4Q>1(H,43D$5#Y":19*L',>Q88]2&1XU*6ZI M."$*+J/*0<2Q[IQ"F+B;205R(77!Z,HAO#P3:7GV@LKQ(L=#>C.C)RBTUP:E M.10M3-B9]Q%C?L2Z'['V1ZS_\??0F,)K3'&!!?(X]CGO Q5&>!^(,-+[0,4E MO _"ZS>1UF\O*1;#]H@T?/24A H\*,VA:&&:O%04$&.D@*I#*,U":0Y%"_/A MU:&XP!XI^CY%D0G#XA)!V!D+F?5*1#],Y=VI1UPAB#"CSSJRX9YZW272NNL% M!2+IGTCC1T]):*\.2G,H6I@H+Q@%Q#TIH#(02K-0FD/1PLLHO R4%S@H9=_+ M:+B*KX^XI<*ZTXBX8+ 9Z)-)++)F66"\H$L]8+-(;&#LM MH30+I3D4+4R55X<28K244/$'I5DHS:%H83Z\^),7&"TE9;3D.3=QG2"]%66US W7L<6"#-R%#GRO*<\N+TN+JQ>4BE$NC/3F1D]4:*/$$G%<<]FO M&V0<-P.]4ND%ETP++JIL?'RL=D6B_6UW_7A7(#YM!R$BD(HS4)I#D4+\^%%H;S P"G[/DI5=&<7O2)!Q!DI\_A"#B*.=55' M\RRN$F0@S_6 $%%>=*FTZ'IYF1C=/TUO>?3UW]!^'93F4+0PAUY,*HC=4T$5 M(Y1FH32'HH7Y\(I176#W5'W;I>**R_B;#"JN4Q2].T(0<2QCJF!Q#1D*U .7 M@RFOR-1(PV>JAB2:(^G-C)Z@T'X=E.90M#!A7E(JB"=4094BE&:A-(>BA?DX MNZO*!9Y0U;=3RB)3O7I!A.V$25PN^F%Y(73,6H+O!U*L)>F2O1 M*Q9$F.&QB<(284*(^%3%46&\T&:@6'@MIL8[.@>+Q3/MDO2F1D]/:!'&H+S!SZKZGD@NCL\BD>4O%<<-5;.8D MXJ2266S1<&0<4T/F"^VEEQYOY1PL&:/:)ND-CYZPT/X>E.90M#"%7DUJB+E3 M0\4BE&:A-(>BA?GP8E%?8.[4?9NE4(KWW)U4G.S..'H%A'*!2LUB\Q89QP;M MG=I+,9V68FZY6"W6^^\XZ1V&=NN@- NE.10M3,39C2TQ=[;$WMH2>V]+[,TM M?P\9J+T,U!<8.'7?2_G*Y*R(;1=4G-8\CRV<5!R3,F,FK@-4(-O5G[G MPVGZ;LI7.C/SUIR/CI!%ZH!QXK6326BDJ!\D&1AHU>@)"NVM0FD/1PJ1X M26<@/DP#5790FH72'(H6YL,K.W.!#]/T_9#=$F8J+@A46/=?7!"(,*[B&^HZ M,HP5 ]]&FK-' J0U4U0.GFE1I&&C)R"T@P:E.10M3(N7=@;BN310$0>E62C- MH6AA/KR(,Q=X+DW?^OA*:R'BBT.I.*5UK 4L%<=X=X[0>W8&%9CEF1HX2\B] M2,K3(BDJ"Z/:$>V$D)I5DHS:%H89*\LLLAILH<*NN@- NE.10MS(>7=?D% MILKC6!V>#N0Z-F93<85F<1>""N-,%_'-K,C-YE+%-JG9V>/_NJ5^OW_N8C.Y MJ[?K]O#(M].[IV<[_KA_HF'T_EOVYI81[UOVQAV>W.CQAP=)_E1N[A==F5E6 MG[M-9:]WYWZ;P[,9#R_:^G'_\,%/==O6J_V/#U4YKS:[@.[WG^NZ_?IBMX'3 M$S)O_@]02P,$% @ MX &68*=*.:T P 0@\ !D !X;"]W;W)K&ULM5=1;]LV$/XKA%8,+=!%HF3+=T<>[V8'J;[I'8 A]WDF]-S; M&5.<^[Y.=Y S?28+$/AE(U7.#$[5UM>% K9V2GGFAT$0^SGCPEO,W-JU6LQD M:3(NX%H17>8Y4_]=0"8/WXMP;UFCVM8GO\@/[1D4B++2B&8'SC=.&]EP8<-X:Q1^Y:AG%C>P!U$"N8%4;@5WKOV- M?#4[4.3M%1C&,_T.5^YNK\C;-^_(&\(%^6LG2\W$6L]\@S98)#^M][NH]@N? MV2\F7Z0P.TT^B#6L3_5]M+TA$#X0N A[ 3^5XHQ$P7L2!N&HPY[+?O4K2%&= M.O6HQYRH\6?D\*)G\"Z1G<*S23YSMN(9.A0ZO52AC+I1[-T]UP5+8>[AY=2@ M]N M?OV%QL'O710' CLA/&H(C_K0T8$;4 K6>*?=2>HB6R'$#L'FE?V"CJ<) MG?G[-HL.J22*QXW4B7GCQKQQ;SSN1"KS(@.#%EZ#\"QS60J#P;$IG8LMP?M=MGQ2M'PB^WT2/XE/E(R3('@4 MQEY[?I#MI&$[Z67[X;[ YP%I&9X[LANBD9#>L.K1P/DK"/?O)?>8(C%/$@'W MAM"$Y"ZQ=1V 7J ?=$G2N"3I-1,3._ ]6V6@WZ.IIHMH+\)K3_M 8"=DIPW9 MZLOWSI1WEU;'Y& 4./%0P= M#5*ST=Y*Z-6D!T([)7VLBVAOV?&BNJV&^%[AUB764;GYK2XE![5US9LFJ2U0 MJH:E66T:Q*5KB_RC>-5=?F%JRX4F&6Q0-3B;H 6J:MBJB9&%ZWE6TF 'Y88[ M;')!60'\OI'2/$SL!DW;O/@?4$L#!!0 ( +> !EDT]<"HGP0 '87 9 M >&PO=V]R:W-H965T/E&3)CB0:"MPOMBC=/=Z[HXY/ MG.VX^":WA"CPE"9,SIVM4MFEZ\IH2U(L+WA&F'ZRYB+%2@_%QI69(#@NG-+$ M19X7N"FFS%G,BGOW8C'CN4HH(_<"R#Q-L7B^)@G?S1WH[&]\IINM,C?@3KUG,;Q\'J/_K$@K\FLL"1+GOQ#8[6= M.Q,'Q&2-\T1]YKO?2$6H"##BB2Q^P:ZT#4('1+E4/*V<=00I9>4_?JH2<>" M4(\#JAS02X>^&?S*P2^(EI$5M&ZPPHN9X#L@C+5&,Q=%;@IOS88R4\8')?13 MJOW4XI;S>$>3!& 6@[_4E@APQQ1F&[I*B 0?0&WP]H8H3!/Y#KP!E($O6YY+ M[21GKM)Q�WJN:\+N=$/7/ZX!-G:BO!KRPF<8?_TNX?6/Q=S;]. MHGX1I9 M 6](= %\^!X@#_G@Z\,->/OF75=<=IC? M\.56%T571*=>5PE$6(AGRC8 ISQG"O UV%25ZBI(B3WJQC:MXE)F.")S1_<" M2<0C<18__P0#[Y>N+)P)["@-HSH-(QOZXL\\7>DUJND*DG&A3 IR1I4$_W5D MNB1O11Q*O@0;%V"F1SXNT,Q][& TKAF-K8SNT@Q3H3OCR2*6.,'!U%X]=1F< M=:975B:H>016'K>"2UFWB_< *[ B&\J8*9%FEA%!>=?;?FW%'5J?H)4D-/%& MX\FTNTIAS2ZTLKN*8VKVGKO M#-'J/CC59T([)MLH!?@CI0(\JU8X%]IQ*AJU .URX?6;DAUXU9VHQZ@73Y8-R:[[V 2XQ:)T6@<^CT4&N$ !RN'D]V\@K0EM JZR]!$W1=V MHPC@"4DPN)^?52? ME"P]_-&*T"[6#C9S\\J$&!;(4 X\4/8HZMA(Q*@724\ M9"2B.%'/X(9*)>@J[VW_5J#!C,Z$=OPMV^@,Y/W ]H_.*CK.A7:7W[MP,/3D-;V$P]?X1Z-"5J= VRZQIK][?[#N: VA\F85^S08U8058%,.S+ MQ(XUF)$_Y-L$-:(##18=)_>S"C+H7R%5S&TAH06R%P8]03H01'G(6PX4SXISTA57BJ?%Y9;@F ACH)^O.5?[@9F@/FI?_ ]02P,$ M% @ MX &62/P*DU+ P /0T !D !X;"]W;W)K&ULK5=M;YL\%/TK%L\T;=):WB'-$J2V)'N1IE7K7CZ[>'\IQE\*.>.9Q(""H4R#%C_W<(E4&J(=!K_]YS.(&F N\_W M[,MV[7HM-UC"):<_2*FJN3-Q4 DKW%#UA6_?0[^>V/ 5G,KV%VW[6,]!12,5 MKWNPSJ FK/O'=[T/.P#-8P<$/2#8!T1/ ,(>$!ZJ$/6 Z%"%N ?$AP*2'I"T MWG=FM4[G6.%L)O@6"1.MV;DEE"+,2O19 M52#0!Z8P6Y,;"A*=]'-DF$-82E 2O%<;,[@3W+MS$8P2 M?FS8*0J]-RCP@LB2S^7A\-"VG']37_R;^G(YXDY;7W(&WV22.)JFNM]O=/1R5 M?^X>'J:Y.*;FTJ(9I.G97\T'OL>#[_&H[^=%T=0-Q4K;?5YSH&(W.QW,3LZ>:$=SI-EJ" MS>7TD;J?GD7IGLFVJ,#?LR5_'!7&2;A_+%BB(M_;4UR.KNZYI[&[T][5(-9M M(RY1P1NFNOMWF!UZ_?.VQ=V;O_"GE[YE/O>GBZZ5_TO??5A\PF)-F$045EK* M.TUU<8FN6>\&BF_:YO*&*]VJMH^5_KX!80+T^Q7GZGY@!(8OINP/4$L#!!0 M ( +> !EE?C@P7'@0 $D4 9 >&PO=V]R:W-H965T=F8+6.,5:]$.01[;9T:F;:$2J9)4W.[7 MCY14/2R9MF$+8RM$=FN:/-KB%/$) MS3"1;]:4I4C(6[8Q><8P6A5.:6+:EN6;*8J)$3/*[[#2:*0)(^O%:A1 MCZD,$O!$K\(< ,><$1)%"N0N)' .E*=6JJC0R^E"B5U=4!JZ>\7_FH) M> VA"RW?]^;F:UN%=IS_J,*M5;A:%<\$I92)^!^\*G2 F/,2=0,=RX%[JMR>^AOHNH%=FW7X>C5?3\OWB0J4%$S? B)79KH&^?D2O)X$ MZ,P"WW'W- S8N6I1#X9%^+4(7Q\ZF/-;N2(QAHD F2(OEPOU M(VK *K"V85+[FQ,J2.!=:1"JZFPEO;C?B R M]# 7@"&!P17B ($,LTCFT?5@\2SAIJT@LR:6(R-D+QA/,.Q2;C4%\,(Z40&T M,\&UU-\^QZ-V78I-T8;:0AFZ$WA*RNA1S@VDL="ZFIOJ#9T+TP:.5)#"?N(<-^Q2;BH]U)?Z$Q+'ZR6$-Y@X1^VZ%)LZ#O6% MO(B?3Q01\!ZI/E]\'Z2I!3D[D$9"ZTINF@ 87)HWVC;B;+DCH77E-LT$U'<3 M)P3AM-=L>7 H" ?L'-L[&(1-_8?:FAO^_C6/LU1UDH=7[E%;@+'0NCO,I@>P MK4OWF-HFXNQ-YDAH7;E-_V!?VC]4 .W(ZF\)['[S8!_<$MBM_;Z^=1AG/U8- MTB87]!)(S^3<[V"VSGG4(=MGQ#8QX2#!:PEO30(YG:P\MRIO!,V*HY\7*@1- MB\LM1BO,E(%\OZ8R^ZH;=9I4GQZ&_P)02P,$% @ MX &66N?[^4!! MWQ8 !D !X;"]W;W)K&ULM5C_K0<+@.+.Y6^+UME[;R]7I=OM1MF6;*R!7$G'SWT\"PI<@Y(9!?H@!ZSW> MD_61GK0X4_:5'PD1X'L<)7QI'84X7=LVWQY)C/F$GD@BO]E3%F,A;]G!YB=& M\"X#Q9&-',>W8QPF5K#(GMVQ8$%3$84)N6. IW&,V>,-B>AY:4'KZ<'G\' 4 MZH$=+$[X0-9$?#G=,7EGERR[,"8)#VD"&-DOK=_A]2WR%"!K\7=(SKQV#925 M#:5?U""W)(H4D]3QK2"URG,T$I_I^4]2&,H$;FG$L__@G+>=R<;;E L:%V"I( Z3 M_!-_+SJB!H#3#@ J .A' 6X!<#.CN;+,U@H+'"P8/0.F6DLV=9'U38:6;L)$ M_8QKP>2WH<2)X --#F_O"8O!BFP$> O6>EW/L;D/!_2_T!D#?_0J=9JYW_46P%NS!BZ@C._I*^)6N" M_6JNP%W6#UNKT;-V3675X@^-:VLPG< ?*2@SRTM'U%!L3<_5@@_=,8H*#K36 M%WTP1G* 572 YNQPH:S:$<+3#LLQ0@2L4@0TQXCNLFH'";W^B^V:RJJ0 "^D M!+6[^$!Q M[A;1C)L:65.5 .*,R,D2I@%2O@;)2J&BA.%'TP1CB!53J!YGC2 MM94SVJ@@(R!X6N/0721 3= MIL),WU=^%1%0SXB VA'!@YJY3-?.;0RRIK+:^8 Y(OSQ+0U/,4E$=SPP,[SX M-&",>("J>(!&B0=HT'@P%%NS#ZIX@"X>+6@G,M0.!NT-HIF[K_8J%:">J:# M^6;Q[4;(<>?/BLBNG3ZJH]^/F!W"A(.(["7,F2&"D'C M[/)(\(XPU4!^OZ>RMHH;=<99GFD'_P%02P,$% @ MX &6>/I&NVU!@ MM3@ !D !X;"]W;W)K&ULM9MK;]LV%(;_"N$5 M0SNTD43)3M(E!I)PP;HU:)&TVV=:HFUADNA1E-T"^_&C+C%-CZ:CZ;@?&E]T M'I*O>:3S4M35AHN_RB5C$GW+LZ*\'BVE7+WWO#)>LIR69WS%"O7-G(N<2O56 M++QR)1A-FJ \\[#O3[RM5\]EE,KW@EL[1@GP4JJSRGXOLMR_CF>A2, MGC]X3!=+67_@3:]6=,&>F/RZ^BS4.V]+2=*<%67*"R38_'IT$[PG450'-$?\ MD;)-N?,:U4.99##69&2W;'LS_31"ZO1Q_LFY XYH7\ZQL_D>;[EA_ MA.*JE#SO@E4/\K1H_])OG1 [ <'D0 #N O!^0'0@(.P"PI<&1%U ([77#J71 M@5!)IU>";Y"HCU:T^D4C9A.MAI\6]>_^)(7Z-E5Q_4-CPH@.\1[;F MV3HM%NB>QFF6RN\VB9V,^N3QOES1F%V/U-FA9&+-1M,??P@F_L\V?2!A! AF M:!=MM8L:>OBBV6W3+8+4#1)&@&"&;N.M;F/GG+M9JR2GLX.SK8V>--'UE64] M'?OUORMOO:O'RPXCSK[\SY%.MB.=.$>Z?X:SC=9)Z#M'(&$$"&8H=[Y5[GQ@ M;IU#Z@8)(T P0[>+K6X7SAGWH9!,42425#*;;&WXY4[6^&?^)(KVDLO92E]! M@&"&()=;02Z=@CRI6C:I,I:HND960IUR4') &C?H4RS/$/+/WZ+ZVCNQS2(G MH*]H0#!#M,#7A9O?Z\R%_D&WJ@!&CTH[=,N% JJBH50?W[.$"9JA^TK59\WW MUB+-V5S?= 6E$2B:*?5.C1P,/-5U "CQ(&D$BF:*A[5XV#E/U:1,2]2Z4JMT MV':^\\=[ISMW*[TU :*9FNB2/G#7]"_/W:=/]X]6U4 +?E :@:*9XNJ:/QA: M] >@53\HC4#13/%TX1^X*_^'YTNPJE'56M%#$[6*X< 08HK]V]53B@ MPK\3[A0V(M ^(NAG)+K<:Y0*]IB2A:,1&K.?K&*F@+K4LN?4'>OQB#F@\HFBF3MA^!VS98 M,K>9<1\Y+9QK;FYN[ZD'ZDV@:.8"K#8GV!^8MQC4;H#2"!3-%$_;#>RLR(^N MOG7AN^MJ$]ORF[N9WJ*BMV:G) D/[>M?P7[ZU_NCO26[13. M!&MG@MW.9%B>'UH3YZ">APHFBFX]CCX!KM;Z;VMXA0>)=0>)71[E!=FL&T)S%V.N]OMO9,%U )! MT4S-M04*\< D#D&]#"B-0-%,\79V4;EON0!<36T6. M]RMR=T=ZRW8*(Q-J(Q.ZCOL%E$:@:*:DVN2$%T/3&-2P@-(( M%,T43QN6T'U3YM@:N#N\MW2@=J6C&?M>Q\;ZO+F961N1J/>6KY?M#G=S>V]S M!C4R4#134VUDHJ%[NR)01P)*(U T4SSM2"+W39EC6=J%']TH[FZFMRBGSKE :5E6M-X^P^>J\I"2B>;!FKC-Y*I(F+#D\$]6,=MF MQSMB!E8Q0?T'%,T4<^M[.;D2Q;PJ9/O(U_;3[3-Y-\V3:)X^O'V@[Z&IC4LU)^,,:&&-\O&KKDW8ZF,"(5KCD0:QY@_G4/$ M=G-C8.P';LAZ(_6 Z 4 "W2W1\=(*.$*'H;L-2@6D@9J94 O4TIE^(.<_%V*^(<=$5HW(C MT#<:0%#'F\I8Z<[>NSNW6PE_IK2/'.L+LBU[V*!GT0Y?@J_@@PSNM,AQRL5V M,C[GGQ:[:7UR_+ 9KX_T5"38A[FASJP O@7#^_QIX%I?F\QU1%:S.BRM#MO8 MO9=YTF0WYW S#OW"V7HC2W]FYK9JY,VPFL11*7'4*O$2A)@B(56NKIY0!%(" M%XB%R.<0D,;MR0E'%2$]UQF/#_6^&5;3ZY9ZW5:]9UMU"/$J/W2I.B%JQZVJKP@E<1HWZ6H%OC?9.R*K>9R4'B3+JUV1%:S>EI:/6W=S@6+8R+5/2Y1"(".L4 8)$"G6=A0IJ] !EE *T,"&PO=V]R M:W-H965T/ CY56T9 MT^A;$J?J3J87Q3?WC^45&-^R6 MZ2_9C82S4:6RX@E+%1;^Z M' 1YC5C,ECJ7H/!QSQ8LCG,EJ,>_I>B@*C,//#Q^4O^M, ]F[JAB"Q'_PU=Z M>SF8#="*K>DNUI_$P^^L-#3.]98B5L5_]%!>&PS0T2,I@J$'"T_TG_58V MQ$$ Z-@#)IW MXZV6\"N'.#W_4Z2;UY^93- UN]/H-;IE*1<2_24T4XBF*_3NWQW/H.-T^=W+ M:Z8IC]4KN/C+[35Z^>(5>H%XBCYOQ4Y!A+H8::A9KC]:EK6XVM<"/U.+"?H@ M4KU5Z%VZ8JMZ_ @<5;;PDZTK[!3\8Y<.$0G.$ YP9*G/PAU^S980'A;AQ%$= M4K4R*?3(#[6RK7WV\9$]/A_+;U1&E^QR (-5,7G/!O-??@HGP:\VDO/IA$!?W1\ZL5P7Y7>H M:75=K9+CJI)C9R4;.6VKH5.@;8=X$JMYG51>)QUS;^+3JB>QFM5I977J(?>F M1SDU#8)&WCG+.='%K'(Q<[HH;L0:.LQ6>7?H&#TR*FWYO' &GNCHO')TWF:X MH?_0!Y[R9&=UZ)1JFXV>Q&JNP\#,K4''H5<*>'+K2ZUN]P E0F-88B^Y23W6%C2O<-GGIM^>2UZW5 MNC\]J=6=&V@)NU)+Z!5;?*G5[1IP"=WDTCI](UOZ1DV$<9=ZJBM#.J$;=:L8K[_A2JWLVQ!-V19[0*_/X4JO;-=03NK&G=>+NY6;UQ"60)\W4 M[0.#0L-!H9MF;B1/ESRC,:(EV*WA"?V9#IT=45T4Y']-2WUP4&A *'23D&4T MPH2RV-)TP_)GZ 4\!DL1HUOH/"JYL%KU2DB^U.J/Z0:1<%=$PEX1R9=:W:Y! M).Q&I$]LQ9*L6,#*)%\R=#A8*>0 I'CVE/;6UBB7ZIO@PO83 0=O*';33"I/,Q17!&U]"-Z.-2 MBSOX#,?%DN?$:M8K,OE2JS>)028\[3I8/;%/:;",O6^36;W_=L?2 8 M,0A&W C6/=6/F0Q2/9C,FDNP[HJ<:M0P&7$SV;.IWLCP\^*%M=X"F!8CP.K9 MZT*7+[5ZPQBR(UT7NHA7:O.E5K=KJ(VX%[JZ)_S4\O3LZT[*0+;6XB@"2ON8D^U9:@L05S'RIU>T:,(N<)-3]QEWJ-TC%LGKDKLBI1@\V/[5#LK/G3#ZM M+DD(8$ESSUMI.CJ>K8+AT1:I/M@L,FP6N=FLV*W"4Z7E+G])?H:6(EWQO 7 MI*R:XPRP#(K?BGC5:!*ZV4BVR1<1CQI'2+[AH!,_(J[4CJU ,-^:JKZ[O6QL M:[E)L^7Z@+?(P%MTRK)07M3S MHERI_[UW0>YJM+4Y.MAKG#"Y*;9@*QCU,&#WVXZK;ZMMWF^+S&ULM59M3]LP$/XK5J9-3!K-2],76!N)ETUC H;H7CZ[ MR;6Q<.S,=EN0]N-W3M(T:"%C,+XD/L?W^#D_=_%--E+=Z!3 D-N,"SUU4F/R M0]?5<0H9U3V9@\ O"ZDR:M!42U?G"FA2.&7<#3QOZ&:4"2>:%'-7*IK(E>%, MP)4B>I5E5-T= Y>;J>,[VXEKMDR-G7"C24Z7, /S+;]2:+DU2L(R$)I)010L MILZ1?WCLA]:A6/&=P48WQL2&,I?RQAIGR=3Q+"/@$!L+0?&UAA/@W"(ACY\5 MJ%/O:1V;XRWZQR)X#&9.-9Q(_H,E)ITZ8X&?B8ZEV*Y_Q541DYA;L@^^6)24&3O% QE7+^=N 9W ML6O=N$(\+A&#!Q"'Y$(*DVKR0220W/=WD5U-,=A2/ XZ 3^O1(_TO7 M=[ +:W9A%WIT06]9MLK()5;D.:Q!86V0:XHIW,:TQ/)+=6T%KJ-^;S!QURT, M!C6#03<#)@H&9\( QF?(B?P;C1)PT&31SF%8'[&2HIGFBLF M8I93;HW$!I!*GH#2Q$BT8TX5E/,LRR!AU "_(\D*"!4)R>D=G7-H"[4DXWN- MM/!Z#R3&01W"06<(_=XP&+PFS?QHV[H3Y(FG['N[?ZKWS"RH /XSP<9/W^\\ MQ;JT%8I)]J@F=)L4[7_\$FY\3TFOCU*TJ^D'.R9!)Y.PYS]&SVZ4IY[7[L;P MGWME^"]Q9_B[2\/OOC7^6="P3=#0_T-0M]%:9*"610.E\2Q6PI1=1CU;-VE' M96NR6UYV>!=4+9G0A,,"7;W>".\+539-I6%D7C0JH6]?H-U!+ P04 " "W@ 99ZX!0-SH# 8#@ &0 'AL+W=O MNT M3E59N\]N.,!J8C/;@4[:CY\=TH2MP2T(^$!LQ_?NV?=\%_>77#S*&8!"3UG* MY,"9*34_=5V9S" CLL7GP/2;"1<94;HKIJZ<"R#CPBA+7=_S(C$C67?5=JKL763TL-PY<'?X.%KSEHH\#XBW_-#=#>Z M0,=')__"N)ITQ=ROF/L%;O ZGV4\9PKIHR&5WDK-LXGA"B,J,,R1 M6L0XQ%X4M?ONHL%Y6#D/K:&KT#._9M_=RG=W6UFA/^C52.HYWV !*<)H8N8NBKE9G8":5F!ELF.H M>]4Z>_O79N\ A+%7)W9OK^HLX=XL3[Q68K"5R645XD:_^(4R@PB'X09EXKH^ M8&LVC\,6?DO*LZ/L&J:Z*.!@_\K"UDJS*^>ZEF![,=E:6F&3M$*\45IUR<#6 M!/_&W%>"K$NL;4E^N"X V%X!&B1VL/1GI[)KS.LB@SL'T*FU !EE]!&QBWP8 #0S 9 >&PO=V]R:W-H965T-\\J9FZ02LR+[-UW(Y?G('Y&%N$TVF?Q4 M//PA6H=XS3FPV#\5EO9M$=L-G_V 2I=TD@F;(EL2!2>H4>E:MD[DX'ZD<68GR7HRFO_Y"7>LW M*#R89"$F681)%B.1]<+J[,+JF-BG?ZF%K4HR 5[N6U.W,:V7K_LIM5WN4C89 MW^_'"<)1C[D:+ASBF.LX-@OZN C <9]QR^KC8J-K)PK'=\)QHW!_KT6IKH+\ MCJS+XC:5)*G>JF5X7902S'V76SJ^[Q2U[$#7$H#9G@)J4@YA#G,"7:$(@*D( MVHXFI-'5$X5T=T*Z9B'E4I1$/*I]5"7>DEQ(2#UWX,@[CU%?$P] 43O@NG@0 MS/%LJHD'P&RUF=-F:VQT[T3QO)UXGE&\JWQ>K 2Y$2HI"Y6;FR.9/,+7LS>< M6Y:Z4+79, -@S*9;EU&4^[RZ-GL#!3N# */#% M_-LFK=)FYRE%J?:XVUWHK1"0WD:R8S<1F&1A &1G:Y!U,8>,DOW]2/15<[46,$=7RJT?#W' M'(]Q;8,Z@W&6J^_4 )R"^ M+GL^B2'5BJWPF&PA*EN$RA9CL?5#W179E*,L44@%;!M=3+80E2U"98NQV/K1 M[2I_:B[]S4O4L/SVN17X>M$%X:S XEQ/@D,<=9W &V9! ,@]ESIZR6KV[E3U MNM*?FFO_XY>582E./KRLZQ-G,K-Y-@5AUN$S5+80E2U"98NQV/I![QH3-$!9 M8%!;$JAL(2I;A,H68['U;_]UW0MF[EX8%YC6=C\M\8 -=L4S".V[^O8Y@H',U^^7Q&;O3E6OZP\P8X5Z_ +3\O66XL#V]!4;@O' UZL6 $9= M-]"KH C"\<"FMJ[F2]3CK*O'F;D>C[+TJ>\)3T?4DAR5+41EBU#98BRV?EB[ MXIZAW!=GJ#?&4=E"5+8(E2W&8NM'MVLUL)^X/=[:]F]*^C3P]'P'X%R7^51/ M> "..HY%/3WC04#F%2V M$)4M0F6+L=CZ,>YJ>.:BY#^D6KF-+B9;B,H6H;+%6&S]Z'8]!F;N,9CSW["N MA_,?@ /S'X"#\Q\$!//?2W046-=18(=V% [=0 ]O^BO'?,?2%85PE :#D@3 M,=L=W+ &<73P+$=L]O=4/;MBG9D?(Y@5I=(ND>!# V;;HS,,:HF.RA:ALL58 M;/VG2KL2W;8PU@\;]1$#5+80E2U"98NQV/K1[5H(MKF%\+O(50K,R/SIROWA M@WXMX?XC2.]LU^=:*II!N"#@V@H00C"'!X.F/X1CEN?K/6JSO\?J.=Y[J'\E MRKOF]8M*J;7)Y?;1[-W9W2L>%\V+#=KY2WHVH\#YD)Y%VQ4\F_W+ZBL3V0Q;IYI>"FD+)8-1^7(EF(L@:H[V^+0CX=U /L M7I29_@]02P,$% @ MX &62."GPC" @ N0@ !D !X;"]W;W)K&ULK59K;]HP%/TK5UDUM=)*GM"60:1"F-9)E:H^ML]N M>Z^";T8KQ%Y$B2E@7.15C*Y6R'-JV MB%,LB.BQ$JG:F3->$*FF?&&+DB-)#*G(;<]Q!G9!,FJ%([-VQ\,1JV2>4;SC M(*JB(/S7!'.V&ENNM5FXSQ:IU MV."K) A]0/I5W7,WL5B7)"J0B8Q0XSL?6 MM3N<]37> +YGN!);8]!.GAE[T9.;9&PY.B',,99:@:C'$J>8YUI(I?&ST;3: MD)JX/=ZH?S'>E9=G(G#*\A]9(M.Q=6E!@G-2Y?*>K;YBX\-*2%8T9)5!D='Z2=9-';8(2J>;X#4$;Y\0O$'P&X)_;(2@(03'1N@W!&/= MKKV;PD5$DG#$V0JX1BLU/3#5-VQ5KXSJ]^1!-GG_$\7>=;NPKZG6/2> M8K-W$MLY@J ]@N"0>CB;S]'8Q4GG6=2RUY921U*UB& M3L_K7X[LY7;!.U$#?Q<5=:/<7=3L;Z@=[_W6>_^@=_7> :Y5SQ.HFDZNO"<@ M&8B4<#S7]W\"ZOW4^T2WE:Y*U $&6WE=[9?A-<2]=/:*\!KCN<[%7@TZ0%Y_ MKP+VUEU<(%^8)BB4C8K*^G_9KK9]]MJTE[WUB3NK+=1O](U\W]5O" M%QD5D.-B)9:3K!,Y.JKYAAJKXMD&N VI\S)C<3':#]6@E_ M U!+ P04 " "W@ 99LNK5&I4% 5) &0 'AL+W=OCSKS>5O4S7S$FT,\B+_G-:"7$ M^FHRX?,5*R@?5VM6RF^655U0(6_KIPE?UXPN&J4BG]B6Y4T*FI6CZ77S[+Z> M7E<;D6N#K]G32J@'D^GUFCZQ!R:^K>]K>3?I M4!99P4J>526JV?)F]!E?I3A0"HW$WQG;\H-KI(;R6%7/ZN;+XF9D*8M8SN9" M05#Y\<)F+,\5DK3C1PLZZCB5XN'U*WK2#%X.YI%R-JOR[]E"K&Y&P0@MV))N MOJT!:!7+N&+Q6P3N7P6\5_,99N]EM7!-10:?7=;5% MM9*6:.JB\6^C+3V2E2H4'T0MO\VDGIC^*:/]2SFO"H;N68T>5K1FZ!.:T7R^ MR6D3+>\C)FB6\P_R^;>'"+U_]P&]0Q/$E2Q'68F^E9G@'^5#>?W7JMIP6B[X M]41(^Q3+9-[:O+_QI[^9^-[KG"Z M.'4:/'<@3K,F3DUQM=/U&EVU^+Y,,;%\1?QRZ"Z3F.T$N"\6&<0\U[6LOEAL M$'-(X&MBR;&88SG8M/F=M/F#D[;]V8I9@M$7U@M2PLJ-\6C MS/-JB>1<%C*[VRR658H+F;99^2337"[NV=PTT3LVF%A)&/JN-HDQ)&MB8I4CQ3IK:C3/)X[C MFYU'.N>11M,YX;PHRS>J4".V7,K*?>@T4>^8-!]MZH&HK+; M=Z"U]-VAXTP>VD'Z!\:X8WU_,1ODO=0[QXQDK(5W#$F8'!.&8T_N5?9_VGA3 MDP;!9N^$G7?"0>]$NRRYU#^AP3^^M@#-!IDO]<\Q(QEC?5T:^MZ M:A)R?;,7>P["UO[-TAJN0-+0;,X^J4[!0GI&+G GB]$PU*5[%5"T"!0M!D5+ M0-%2*+1^P!RT(O";[G=;>*@@@D2+0-%B4+0$%"V%0NL'D;T/(GMPU?G*N*BS MN:H-NZBA6UJ?Z$;9QUL'-_3US=0PX<6!<$QJ$XOH)1N4-#&--+ ";:2IR38G M<(,3E6#?N\'#S9L[6C\S<5XA&$2Z.(U)XN"EUS^KFU]/RW-<"R%[0#!0M M D6+0=$24+04"JT?-/LV&O;?MAI ]J5FH&@1*%H,BI: HJ50:/T@VC?S\' W M[Y)J$!PM?M@* J)7 ] VGHDT]/7?MT Y$Q.G[^JDJ4F,$,O1BL'DX!!"P>JG MYGP)EZFZ*<7N=][N:7>&Y7-S !EDP*:9%*@, *T. 9 >&PO=V]R:W-H965TF2#G@, E85M],,*&&/\KG9MP?L4S&A,*,(Y$E M">9/5Q"SS=BPC>W$'5E&4D^8_BC%2YB#_)G.N!J9%4M($J"",(HX+,;&Q+Z< MVJX&Y!&_"&S$WC?24NX96^G!33@V+)T1Q!!(38'5WQJF$,>:2>7Q4)(:U9X: MN/^]9?^P#%TPQP2H!S*, M ;ES9I%9+NL:2^R/.-L@KJ,5 MF_[(O: SM"$2G(6DCC3)B.U MG"C+53+!"L%#1M8X!BH%>G<-$I-8O%<0H:%B9$J5E>8V@S*#JR(#YX4,7'3+ MJ(P$^D1#"!OPTW9\OP5O*CZVI MWX&0G 020C3/4YUL, \%^H/FRB02P)F^A$(EAX9$7VR- EKW./8D.R*KV=&O M[.B?J)C[75K0$5G-@D%EP>"DQ=S*?JP1@VZ39K0^@_Z]P]Z W2E/8T.O9_]2NN=<0),"7>9\D5$(9E45O4,U6O=@D M[T#,77C1R*D[>TFH0#$L%-0Z'ZB]>=$;%0/)TKR]N&=2-2OY9Z3Z2> Z0*TO M&)/;@=Z@ZE#]OU!+ P04 " "W@ 99?B2F<8L# "#$0 &0 'AL+W=O M64$GT2,KVAOWXD92L2@ZKV2U?8I&ZYUR>6 G!T M*O*2S:V4\_V#;;--"@5F]V0/I7BS);3 7#3ISF9["CA1H"*W/<<)[0)GI;68 MJ;XGNIB1BN=9"4\4L:HH,/U["3DYSBW7.G=\R'8IEQWV8K;'.W@&_G'_1$7+ M;EF2K("29:1$%+9SZYW[$+L*H"(^97!DG6P^G]E_5>*%F#5FL"+YYRSAZ=R:6"B!+:YR_H$< M?X-&4"#Y-B1GZB\Z-K&.A385XZ1HP&($15;6O_C4&-$!"!X]P&L WB5@] V MWP#\:S.,&L#HV@Q! U#2[5J[,B["'"]FE!P1E=&"33XH]Q5:^)65 M9@+'%\\IIG"W%%8G:$4*,?\85A6\0_%)M@"]CH#C+&=O1-_'YPB]?O4&O4)9 MB?Y,2<5PF;"WB$D:)CL?LSP7>#:SN1B>3&)OFJ$LZZ%XWQB*CQY)R5.&XC*! M1(./AO'A -X6MK3>>&=OEMX@X>]5>8]\YRWR'&^D&<_J>KBOD_-CV>/OSMXS MPV\GBJ_X_!LGBJ[.-=-(SR2WO@>VQQN86V)O8T /8"U^_LD-G5]T)ILDBTR2 MQ8;(>N48M>48#;$WY5BK[]Q:I=#2:\U>AK,L:&,O8,G+8&3J_;3]"_Z!&?LJ(J=,X-DMPZ ME4V212;)8D-DO4JXSMY-ZXPU0\)33[ M1WL5639L0?\V>S_31B;2E@[:'7QO:WO:+ MP3MU3[[H7[H/*U?3'\DO#.H2^Y6^_CSQB.DN*QG*82M2.?=CH9K6-_ZZP M76G7A(L+LGI, 2= 98!XOR6$GQLR0?O=9?$?4$L#!!0 ( +> !EF.M^ Z M5!( ,$$ 0 9 >&PO=V]R:W-H965TI_=5+(S^UF&MJT*(*^0G61K?_R10+9H$&TI MN?-EQG&DJP'[B6CIH?7V:Y9_V=Q)61C?5LOUYMW975'[&YSV6RV.ZT6EY8@X%]L4K2]=GEV^WW/N:7;[.'8IFN MY%=4W+B[?WB>W\K,L_KC_F)=_NGA6 M%NE*KC=IMC9R>?/N[+WY)IY8U0[;+?Y,Y=?-WM=&]52NL^Q+]8=@\>YL4#TB MN93SHB*2\G^/\DHNEY54/HY_U^C9\YC5COM?/^GN]LF73^8ZV9,\+(M/V5=?UD]H7'GS;+G9_M?X6F\[.#/F#YLB6]4[EX]@E:YW M_T^^U2_$W@[FZ,0.5KV#U76'8;W#L.L.HWJ'T>$.XQ,[C.L=QEU'L.L=[*X[ M3.H=)EUWF-8[3 ]VL$X]AUF]PZSK#N;@Z2E57VQ_M;?[E[^,Z;I*X>GP^[F>+N[U?9JZGL^>MMS][N/WK9[\'///?RY!Q]UW[WM!Q?K=W?D_-1S5WZ+ MA\_Y'6Z]X:G\%MG\B_&/^RJSFU?&WQ]6US(WLAMC&^Q-RP/\L -'[6!UU'^S MN4_F\MU9>5C?R/Q1GEW^]2^F/?B_MI"0F$-B@L1<$O-(S">Q@,1"$HM(+(8P M);"CY\".=/KE5;9^E'DA%Q?BF\SG:77@_2U=&YMM7ML.K!^T8-_ DIA#8F*' MC;=8-7EXO'QM#BQ[]O;B<3^*+9N-)^.)NI77LM5H8EOJ5G[+5M9T.AJHFP7D MTPQ)+"*Q&,*46(R?8S'NS?VW/HG M7=\:\W*ZEB?SXJ',<"'SE7&3Y<:CW%1;;_;3WI9J[:A]4TUB#HD)$G-)S",Q MG\0"_2_DR/@NDWQC3(W5[G2!:1F+Y'O;+UE(/JR(Q&((4R(]>8[T1'LD_F.= MRWEVNT[_4P5U>WKH>GMZ:+Y_>DA^J[Z6;=F=D-DE,8?$!(FY).:1F$]B 8F% M)!:16 QA2GRGS_&=:O\!_&=6E ?-2"R&,"6+ ML^&SM.'S\F1=O'P]4Z_T3AFI M.:@F4,U%-0_5?%0+:FT_BZ.6628=4 MHNT?5'-03:":BVH>JOFH%IAM+:;)<2C1XA&JQ92FAK+I'IG:CL3^I%&N%SVF MBVCY"-4<5!.UIDR.IF/KZ+H(.JJ':CZJ!1U?D1 =-4*UF-+4V#7=(=/^L7.N MSZVB]W6K:#NQ-)RDD(:;I+GQ9[)\D,9'F>].RK9F$ZT0H9J#:@+57%3S4,U' MM0#50E2+4"VF-#7G3:'(U!8>NIR3763+957;*K^U.^"V'V_1:A&J.:@F4,VM MM#Z:'9Z>19M#J!9T? XA.FJ$:C&EJ3ELFD&FOAJT?WJV8^#0W@^J M.:@F4,U%-0_5?%0+:LTT]T_5FK-S:W*82[0BA&HQI:FY;%I"IKXF=.I<;<>, MHM4A5'-03:":BVH>JOFH%M2:DE'+FIV/S,.,HNT@5(LI35TKH.D'6=K>PHGS MMMT2JJ?[)A35'%03J.:BFH=J/JH%M:8F=&J>CPX"BHX:H5I,:6I F^*/U;GX MT2"X:Y6V'!L$^NKX ^J@C58DI3X]PTCBS]=-:[;10A*J M.:@F4,U%-0_5?%0+4"U$M0C58DI3$]Z4FRS]0C2_RZ1:LVPEU\7SF:CMTC3M MIY[0MA*J.:@F4,U%-0_5?%0+7OAUL^IUC\S!T\)'L]/'98R*>E/F\)054Z^7 M&MBFI63I6TJ?TLT7XR:7TDC+XVLY0F'DU='XMV1C)%6$YV64V\.+UI)0S4$U M@6HNJGFHYJ-:4&NSO2GPX'PP&MJ'$^#V[48'ZY9&[=N9DP,OIIZ%&JFF<&3I M"T=.^I@NJJLQWU.Y7'1)$MHW0C4'U02JN:CFH9J/:D&M5:L,-+_ZAREZ>9NH MPS8Q]?-QJOFH%J!:B&H1JL64IH:Z*0@-3>TIU[U0[Y:?3NI/FW5?:WZ(%H10 MS4$U@6HNJGFHYJ-:@&HAJD6H%E.:FN:F;#3LL-30[OUN\^ZX-;/6T=7GT=0: M'5U\OFK;<#"<'&WHM&QHS2;3HPV%_BGT#A':\D$U']4"5 M1+4*UF-+4$.W= M.^R%EL\/O<^M_CKYGCT4QJ=D?2M?#_ZW-7?L;<;8^XRQ-QIC[S3&WFJ,O=<8 M>[,Q]FYC[.W&V/N-_8KNT+#I#@U'O_R=+UH:0C4'U02JN:CFH9J/:@&JA:@6 MH5I,:6J:F^K04+]847WLS:MC;X=+*K6F.]%]U6$;I\,V0O_(>V<'+>6@FH]J M :J%J!:A6DQI:G::4LY0WT=@WO!:X_9WO&B'!]4<5!.HYJ*:AVH^J@6H%J): MA&HQI:DY;[H\0_T]S(AWO&BI!]4<5!.HYJ*:AVH^J@6H%J):A&HQI:EI;FI$ M0WV-J.\[WK9JQ[DU/GS3VVDSI]MF0O\4>H<([?.@FH]J :J%J!:A6DQI:HB: M-M'PI7N1[>[W5W_^NOV8-SNZLF%: [OE6DG+AH/!K.5:R?&&DY:5_(7^P?>. M#]K/034?U0)4"U$M0K68TI3XC)I*T.A75((.9XYE2%JGCOK!^[[91#4'U02J MN:CFH9J/:@&JA:@6H5I,:6K0FYK0Z)?7A$9H30C5'%03J.:BFH=J/JH%J!:B M6H1J,:6I:6YJ0B-]3:CGU+'6E,G>P2*)5QVV<3IL(_2/O'=VT'80JOFH%J!: MB&H1JL64IF:G:0>-7FH'O3QC'!VO[=+>KFO;L+5=U[)A>[M._^A[YP>MW:": MCVH!JH6H%J%:3&EJ?IK:S4A;!* N-IZ:,J*-'%1S4$V@FHMJ'JKYJ!:@6HAJ M$:K%E*8&O6GDC/2+^1!31G3A'E1S4$V@FHMJ'JKYJ!:@6HAJ$:K%E*:FN>D( MC?0=H;Y31OMXJF<=OOE]>1NGPS9"_\A[9P?MW:":CVH!JH6H%J%:3&EJ=IK> MS>B%-72Z3!DG1Q.\F3TZGN!=M6PX'4R.YY9.RX;CV?CXLJ70/_K>^4&;+JCF MHUJ :B&J1:@64YJ:GZ;I,M(W7;:K>=0+/!JNO,X?DOR[8=JO#&M@F3^P_H!^ MO-[O*]$%=5!-H)J+:AZJ^:@6H%J(:A&JQ92F9KLIX(QFOWR6B*[7@VH.J@E4 M.J*/:@&JA:@6H5I, M:6HJFV;.6-_,^6=6E&]XVVX-9NS=="A[E/GVY@?WS<2W/N"^,M:RJ(ZZ-[M; M$?VWN;M,8171<(U1Q4$ZCFHIJ':CZJ!:@6HEJ$:C&E MJ9EM"DKCD?:,U'Y4-Z^,OS^LKLNC;7E$_5RM&-U^,$5;1ZCFH)I -1?5/%3S M42U M1#5(E2+*4U-;],Z&NO7 =J[X?6UO$W7VWL!JK>]WJ[\WG[#(3W>.\AH MX0C5!*JYM3;>>U=L6M/)\9MBM$J$:D''YQ"BHT:H%E.:&KZF)#36EX2NLG4Y M,RWDXD)\D_D\K:[$OI0X='D@5'-03:":BVH>JOFH%M3:?BY?F\MHW_\7714#]5\5 LZ MOB(A.FJ$:C&EJ;%K>DOC:9^9Y-'-JG>KM3O5:NUNM5K[G]M[&7TL9YO;J69K M(M'F$JHYJ"90S44U#]5\5 M0+42U"-5B2E/3W327QOJE@SK,-+O=;TP_3N], MH_TE5!.HYHZ/[YHUM,_M\>&<$RTFH5K0[2F$Z* 1JL64IJ30;AI']@N-HQ-3 MSF[1T^-]HX=J#JH)5'-1S4,U']6"6C/-O8A.K:-;^(7HJ!&JQ92F1K1I&MGZ MII%V]MDQIVCO"-4<5!.UIAP1!N<'JZ2XZ)@>JOFH%M2:DK_C%R1$!XU0+:8T M-7Y-I-MH90S4$U@6HNJGFHYJ-:@&HAJD6H%E.: M&NNF6F3KJT78]%,_3N],H]4C5!.HYM;:_I%Z-CT?']P#VD,']5$MJ#7EX-KR M'$)TU C58DI38]BTA6QMG^%GYY]H<0C5'%03J.:BFH=J/JH%M:9$U!J8Y];D M,*-H)PC58DI3,]IT@NS.G: ?GH"BQ2!4@Z!)#J.:C M6M#M!0G102-4BRE-S5]3"[+M#C/0[&D&VOV3W39:#D(U!]4$JKFHYJ&:CVH! MJH6H%J%:3&EJAIL*D:VO$+V_O7U5N_-8?0<3U4\U$MZ/R:A.BX$:K%;<]B/+*MZ=ZS4+/4]()L_7I& M;7/&I%>^T!80JCFH)E#-134/U7Q4"VI-S:"I_/+6$40+/J@64YH:TZ;@8^L+ M/G4XD^NEW/\8V.;DQ\#T7N]8HD4>5!.U]F)=%AW50S4?U8*.KTB(CAJA6DQI M2MXF395GHJ_R*'DCRK+Z\?KF$=4<5!.HYJ*:AVH^J@6UIF];A.B8$:K%E*9F MMNGV3/3=GKW,_ERS0#].[ZRB#1]4$Y/CAD_;"59T4 _5?%0+NKT@(3IHA&HQ MI:DI;"H^$_VJ0DP/R,;D@ISZPH*["0NVRM\PTC.&E$1:Y;AN'I!WE.2K" E MSVB)&%DMM"OS,C)GM:!I\7=&MGQO&]67\D3ICWKG]V2A&?6(2$YB42.P_'@F M-R3/:Y(3%/F),;FO^3)2)=:.<:2L@*5[FXI]O? M2'=!;LV+:SAG=(E:W MEK1ZHXEOHY81R5!N_Y72BN,RX7-=R%'5;#WN1G#= MCL!Z9P0VNJ6E2#D*RH0D(_H;M=[[2.^K]:;U$2!0 RS5%>@R'GU0K+>@7%M* MXA]5>89LXQ19AN6,W9&OR7VUW">QE)N-W!Z['5_K/53+;_$K,NQWU=%'G>=G MR'(;N:6(A-U/#[OAV1.GQYC-6Y(S3JI?*9=\@V.RT.0[@Q/V3+3ESS^9GO'K M6(0A83XD+("$A9"P" @V,(K3&\51T9?!2YQ)>PC\@O(,/V5Y)E['3-)2O(92 MIPG/2U=F#7/]>3_XGVGD*\_CP5029XZRUN8NW?;3,M#MXWL77113+L:BJL1,C:IW/)E,PW'L@Z!"]AE PD)(6 0$&\1_ MUL=_-CW^IXCT#VLRFK JH5/=,#N:N_+1>CC!(7L,(&$A)"P"@@V\<-Y[X5SI MA3JA1%/R.25NJ@L@83XD+("$A9"P" @V<,M%[Y8+L,3_ M(HD# ?$A9 PD)( M6 0$&QC%-'85%&/:2V;36N44X4JDE&7_R:P2%[0J1U,/-7VJ?4!I/B@M *6% M'6T_S3*-YF_X;HV@NAW:8Z_ 9BKM<=5$7OJC+@QGY1I592*_?!S[9=0!^U\]5@G!_1SO8:@O490M&$\K5T\K8_R"&M2'J'F39[@D#0? ME!: TD)06@1%&[IF5T=]G$ZT%]DW1YAO5,&%[7[LCBQ@9MN;LI?"5S8]68SSYT=6@.T M@@I%:ZVA[RT<*0A;-VN".(KK5TJ[AJ0_VJ\[NFI6V^B[YNVBI5O,UEG)44Y6 M4FJ2-8>TZH'9'T$VS#.6)"D&+9C,E6+ZJZ@;R_(I2\;93=]"OQEK^#U!+ M P04 " "W@ 996K%_'VL( ");P &0 'AL+W=O=W-7T.7CRY#03%_E<[R9516#_.70;'*9;38!"V3@34<3@;+*$Y[TYO- MML=\>I.MRR1.Y6-N%.OE,LK_NI-)]G;;,WL?&[[&+Z]EO6$PO5E%+_))EK^O M'O/JT6"G+.*E3(LX2XU\/Z&?4WFZ3;Q%=I$J=U?3R5>?73N(HKIW?KHMI2%,9]MIS%:50G;6'\TWC:UHOQ MJR/+*$Z*WZIMOS\YQJ^__&;\8L2I\1 G2;WOS:"LGD:-#>;-D/YV2.O(D+;Q MD*7E:V&XZ4(N.N*%/GZBB1]4+W_W.[ ^?@=WEA9\B/XR;/,?AC6T1AU/Y_[S M:'-R--K11W]9Y7W#O#P:[GXV>!4^//['@T/ M3@^WN_+@YT8/_^_1E2RR=Y5D;SS[G$KJ>%IW6V;4S=3OA]?%*IK+VU[UAE?( M_+OL3?_^-W,R_%=7;I*80V(NB7DDYI-80&*"Q$((4XIAM"N&D4Z??IG_N8Z+ MN-S.HI*HE MCGA5E9T%HJ7,+@L0<$G-)S",Q?XN9VR-;/:/^/K4F_>J@^'T_ MTSOV,ONFNI/HIB[5O<*NO?9V4E)NO$NYL?;X^S%CR9Z-67,HED4U_ZX2,9>+ MZZ[$&Y.)1V(.B;DDYI&83V(!B0D2"R%,*8O)KBPFVB.QGV6+MVJN;LCW575. M6AV'R\R8R>H</*S.L:OY_#Q;2J.,WHW5.E]E5>5TU8MVI'/KA<0<$G-) MS",Q?XN9UMYQ:'-R;L\FLT2 MV95BVL!S4XS$'!)S2Q@,0$B840IA3#U:X8KK3O!8_K?/X:%=)8Y?&\\RU!&W]N%9"80V(NB7E7 M'6_N_9'ZWNZ3(P8D)D@LA# EN\UA^_GZ\+3Y=R[GV4L:_[?S(^\[O7)NEJ.: M@VHNJGF--ME+](,IK(\.&*":0+60TM14WVLEF=I4?\CR/"Z,NR2:?^O,<6WX MV3E.:@ZJN:CFH9J/:@&J"50+*4TM!ZLM!XN9YC<.51>DYJ":BVH>JOFH%J": M0+60TM2Z:/NDIK;S=,*,7P^<71!HCQ35W$93)NIV?Z+.8#QT3!_5 E03J!92 MFIKH;0_4U#=!3YWZH_U/5'-0S6TT]=/DPP^F/71,']4"5!.H%E*:FNUM^]74 MMK&FC_>B,[O1)BNJ.:CFHIJ':CZJ!:@F4"VD-+4*VFZK.8$F_6@S%=4<5'-1 MS4,U']4"5!.H%E*:6A=MQ]?4MWQ/F/2CK5]4ZBFH-J;J,=-*,N#K,=;=RB6H!J M5"2E.S MO>W>FOKVK9]+F1I/]0B=68XV;U'-0347U3Q4\U$M0#6!:B&EJ>N(VF:O-61F M_Q;:[D4U!]5<5/-0S4>U -4$JH64IM9%VQFV])WASV?_>N#L@D![PXVF3&!& MAW\IZZ)C>JCFHUJ :@+50DI3$[WM^5K:WMFIDW^]XT=2IS+AOJ7,9!QW4134/U7Q4"U!-H%I(:6JFMVU@Z\15 MMY^_N_EN^1_7L M_^-TH#/7T?XNJCFHYJ*:AVH^J@6H)E MI#2U)-HVL 4M\K701C"J.:CFHIJ' M:CZJ!:@F4"VD-+4NVH:Q];/K?:V.Q:OVN'^E3F/N]>.EH,QC5/%3S42U M-8%J(:6IEP-LF\$VLO*W4=235.OP[V/N]8.=F^ZHYJ*:AVH^J@6H)E MI#0U MW=L>KZWO\3Y]%4:0)8LX?>F^["7:X44U!]5<5/-0S4>U -4$JH64II9#VPFV MH=6_-MH+1C4'U5Q4\U#-1[4 U02JA92FUL7>59)_=O6O'CB[(-@K)+.72&:O MD))F]2C)[F63V.LG-&NS]Y1BC\=['YFJFMUU@6]M-.WG^C_: 4?'CO7_^JCSDYO=/TOJKFHYJ&:CVH! MJ@E4"RE-K8*V\6M#ZW]MM/6+:@ZJN:CFH9J/:@&J"50+*4VMB[9#;.L[Q&?= M$$)OG5T;:*L8U5Q4\U#-;[2),D\XN-0X.J) M9#2MAD_V+O'UE+F+YM[NA55 M#J_3O [-CNS"OP^U=X5I^>Y.ZARA_B=/"2.1S M-=2P?U&]Q>7;^[YM'Y39:G.'KUE6EMER\^VKC!8RKW>H?OZ<9>7'@WJ W=WW MIO\#4$L#!!0 ( +> !EELOIR;>@( )@% 9 >&PO=V]R:W-H965T M!#KTCI#F"8U7\,"[+*^-W0*>Y9<5*!0:,4,%)-@.KR^8R66G][ ZW^22(G""0D%G'P&G9P!RD=$0DXZ7C#/J0#KB_W['? M^-PIEQ5'F&OY)');3H+O ((X_ ,0=(/:ZVT!>Y16W/$V,WC+CO(G-;7RJ'DWBA'(_96$- MW0K"V736(%D0V5Q7*Z&X*Q6RK^Q66:[68B4!V>D56"XDGI$]CN(QFV8OC4"Q M\YU[F6#H)\F6H!0ULA,F%+L34CI+$EI2ZV*&6:=LUBJ+/U!VP>ZTLB6R:Y5# M_C\^I"S[5.-=JK/X*.'O1@W8*/K2YK!<7+'3D[,CO*.^A"//._J ]QJMH.=! MA=(%O3(JC8&<WR,O9>=LQLN#'ODLH%#&EN689N]Z_%-&O\8Q$FX.1#\O ]^?C3XD^\6 MBCW=@*'F9^]JE@A%(]D?40 [_0O[=K/!&29 M;I1M&Z>W]F-GVG;;NWL[L^ZX60OJ 0D%0:/!-U)EVCG0'JRN?>^MM*46\=N2 M1B<8YT#WA=9V=W !^F&<_@-02P,$% @ MX &67*A\($J P CPD !D M !X;"]W;W)K&ULK99=;]LV%(;_"J$50PNTD41] M9[: UL:P#AL6-.UV3=@R M+H-Z-K3=Z7JF>BNXA#M-3-^V3#]^ *$.\R .GAH^\>W.NH:PGG5L"_=@OW1W M&FOAE&7-6Y"&*TDT;.;!^_AV$4=.,$3\S>%@3LK$65DI]=55/J[G0>2(0$!C M70J&KSTL0 B7"3G^/28-ICZ=\+3\E/W7P3R:63$#"R7^X6N[FP=E0-:P8;VP MG]3A-S@:RER^1@DS/,EAC,VR@#2]L:H]BI&@Y7)\LX?C0)P(XO0[ GH4T!\5 M)$=!,A@=R09;2V99/=/J0+2+QFRN,(S-H$8W7+IIO+<:OW+4V?I]T^@>UN0/ MSE9<<,O!D-=+L(P+\X:\(U_NE^3UJS?D%>&2?-ZIWC"Y-K/08M\N0]@<^_DP M]D._T\_OO;PA2?26T(BF'OGBNGP)#+)-)]MTR)?\N.T;GZDQ M2^K/XK;8K>E8 _, ]Y !O8>@_OFG.(]^\5G\GY(],YQ,AI-KV>M[)IA&EV_) M 7TS.DLW)]Z\T05:1%/4<^@ MTPDZO0K]49I>,]D $=_FR<D_B-"[.&"^C:%71R,^838S92P/KAK/3 M>+)J^S@.+#PTW "Q[,'/FUV2Q#3*SW@OH^(BBJB?-Y]X\ZN\2]B UKCT->Q! M]N##RR\[SJHR/L/S1)5)GOGQB@FON(JW&(X\T(BW8M8_>L5EQS2Y&#U/5)'0 MW(]73GCE"RO2 FY.2SKVR%8""-Y$0LGM.VQN\?I861]PZ0&.D_(,V!]5^8&K M";BZ"OR7W8'V,5672S JT^2,R1.55E7J9XJC;Y=.=)7JL[),X!4^'L(O;.YC MKOS93.9%=L[JBRL+>G(,C+3AR6WI?E7^9'K+I2$"-BB,;@JTJ\?;?ZQ8U0T7 MZ$I97)M#<8=_3*!= '[?*&6?*NY.GO[!ZO\ 4$L#!!0 ( +> !EE>WD/F M1@, *P4 - >&PO_Q.??8OB%NAZ59 M"W:[8,P$JUS(AP-V^IB/2C2](X.0F*F4CW'3RO@C(1>T.>]%3MM>QB][Z?O ML%'RP$-NF2@M\>;.!5:R$P[H0QL-,R;8>(N("-C/-6?! Q8A, MJ.!3S8&5T9R+M0OW(#!30NG V$*T5KH0*1\=W'4]J-%:)^=2Z2JWR^!^3^OA M>\"F!P:Y$(W!'G&!\;"@QC MKVVG&EP%GT!!W;Y;%];A7--UMW=)6D)ULTFF M2J=,-VFZ9!,:#P7+P([F\P72:2JV3=O:/^95?K'CJ/]:EJMOE7W# M7H_U6_G835Z^!9/Q6S#Y)FIR@JT*G]4VQ'WXY/64:7PMPU MX(BT[>\LY-VY.U#87ERE;L712=_5\6C4#V[!9ZPL( M^\AU=?D1C.,P/P(8E@=S@'$<"\OS/\UG@,['89BW@1<9H)P!RG$L'S*I/E@> M/R>QEW^F21)%<8RMZ&3B=3#!UBV.X<>OAGD#!I8',OW=6N.[C5?(X3K ]O10 MA6 SQ2L1FRF^UH#XUPT82>+?;2P/,+!=P&H'\OOS0$WY.5$$NXIYPYY@'$D2 M#(%:]-=H'".K$\/'OS_84Q)%2>)' /,[B"(,@:<11S 'X %#HJAZ#^Z]C\+- M>RIL_S\Y_@-02P,$% @ MX &69>*NQS $P( L !?3T\$MP>:4#M.*2VBZD8_1!2:5K5N %(MB6/:(7->=I3W;+T]!;X"O.DQQ0FE(2S,.\,W2?S+W\PPU M1>5*(Y5;&GC3Y?YVX$G1H2)8%II%R=.B':5_'J%+K? MVABSO>ET=+9A%=5_RRT3]LA:JHH:NZF*CMXJ1G.]86B]>WK MH:^YZH0;TK#,<"GL3K?CF;,7_?]QMTEV7/,5+[EYZ[?\]Y*U2,4%K_@OEO=; MW1;1&_ER+Q7_)86AY2)3LBS[K=[^P#-3AF&J1$U[+N2]9:+PG5CSZ(3G(:/P^%S'\0; M]3MAE.LUS]A(9G7%A-G'4;'2 0J]X5O=(H)6K-\Z-"%4Y&0LC T2F8A]5[:M M.U/[UY-\?];&X@8Q5#?<'E"3W(/C00YGT\7L83(:+,0U 'E].V8Z)FY(EELA#\ MHTU G2#[Y+N4^0LO2R^]F=DP99UGJ"@;V+EALJ&(A&Z2&'K(;/$S;)E^6DZ&L;$_Z9#PA M*_20M>#Y;'K;UBK;6$JK!UDH6H5\D!IZR&ZXK3473&L7O!47^P9AO0S9(4*V M@Q67JNW /G#JIV;'XHH@.T3(=M@+P0:MXL;G-J^)H?2:9>'E%X%3#F0]S.D; MV6EWV_J?BXR1$==9*5U.#B$A6T3(MI@(S7,;S:6BN2M2!DI9S9XH(X*4$2$K MHZ&&LI.V]V]_A920/2)D>S244^1J25W!^@ M(2;DFQC9-^?*G09,<)$+V3@-A47CB$/&B9&-T[B@0*Y&S%!>'F-"RHDOH)RV M*S)H42A6A)B0=6)DZS1C[O5C8QIB0M:)D:T#RO%HJ2N&[!,CVP?&C$-,R#XQ MLGT^.+SM1U]D]H[_.$=,( $ER (ZP5S83O.Z9.[NS\-K,X$4E" KZ 3S'_9& MW+;/4L,0$U)0\D=7Q/R@[V2YI)T%63V.UWB9#6F:U;1YB0NI)D-5S!G,@#&_G1Q=D"JDG15;/V6E%FXQ? MMZ%Z4D@]Z:5F/S:BF0ES>@JI)[W8[,??12$FI)X463V-:[[.0'554?468D+J M2;$G0&0V M5\1][!\X)JE[:+"NR]+EO9EXD#0_O!ET>*OIV[]02P,$% @ MX &60P_ MD/SE 0 ?R$ !H !X;"]?Z)0A&.14&#YE36V/+UW_B3 M97O^DG9MV7:'O-GV>7+<[PYYT6Q*Z1]"R,M-VK?YINO3X7QDU0W[MIR7PSKT M[?*]7:>@T^DL##]G-(_SGS,GKZ<^_65BMUIME^FI6W[LTZ'\,CA\=L-[WJ14 MFLEK.ZQ3633AN+ONSN&RD9OSY&;R_+9HAN"X(M M!&(+DBT$9@NB+01J"[(M!&X+PBT$<@O2+01V"^(M!'HKZJT$>BOJK01ZZ^AA MFT!O1;V50&]%O95 ;T6]E4!O1;V50&]%O95 ;T6]E4!O1;V50&]#O8U ;T.] MC4!O0[V-0&\;O2PAT-M0;R/0VU!O(]#;4&\CT-M0;R/0VU!O(]#;4&\CT-M1 M;R?0VU%O)]#;46\GT-M1;R?0VTD4#OB'I' KTCZAT)](ZH=R30.XX^5A+H'5'O^)]ZYW+: MI7SM^5[C]?^3ZG(^-UTO?UE^[QS=XQ>< _QO\?@%4$L#!!0 ( +> !EF/ MX;=ITP$ #8A 3 6T-O;G1E;G1?5'EP97-=+GAM;,W:R6[",!0%T%]! MV5;$> @=!&S:;EL6_0$W>4!$$ENVH?#W=<(@M:*HB$J]&R)B^]T76SJ;9/2V MM>1[F[IJ_#A9A& ?&//Y@FKM4V.IB2,SXVH=XE\W9U;G2STG)@:#(F&2>.*I_T'G<3VZQQHJVMRER'.,[63?$MI;]/ M2./*;HY?E-;?Q D).YG0COPJ^C87(A?+\(QX38^FKGX_:TRZH^&5VW-X/XY;=>7C67:[?XZ]G M?*Q_81\"I \)TH<"Z2,#Z6,(TLYQ.034$L! A0#% @ MX &60=!36*! L0 ! M ( ! &1O8U!R;W!S+V%P<"YX;6Q02P$"% ,4 " "W@ 99L#+$@.\ M K @ $0 @ &O 9&]C4')O<',O8V]R92YX;6Q02P$" M% ,4 " "W@ 99F5R<(Q & "<)P $P @ '- 0 >&PO M=&AE;64O=&AE;64Q+GAM;%!+ 0(4 Q0 ( +> !EE\6'L%V 4 .(> 8 M " @0X( !X;"]W;W)K&PO M=V]R:W-H965T&UL4$L! A0#% @ MX &6<$-;LY3 P M;0L !@ ("!C!4 'AL+W=O !EEGK%LNJ 4 / 9 8 " @149 M !X;"]W;W)K&PO=V]R:W-H965T&UL4$L! A0#% @ MX &64H M!EF'_"MAI@D !%1 8 " @7PJ !X;"]W;W)K&PO=V]R:W-H965T&UL4$L! A0#% M @ MX &60#WHW(X! O0D !@ ("!;#@ 'AL+W=O&PO=V]R:W-H965T !EG+:4C4Z0X "HP 9 " M@5A/ !X;"]W;W)K&UL4$L! A0#% @ MX & M6;76L- Y P U < !D ("!>%X 'AL+W=O&PO=V]R:W-H965T !EFRS9!?\@( #T' 9 " @=AG !X;"]W;W)K M&UL4$L! A0#% @ MX &6;$@71/9! [A( M !D ("! 6L 'AL+W=O&PO=V]R:W-H965T !ED6:&QS M%P4 .0, 9 " @79X !X;"]W;W)K&UL4$L! A0#% @ MX &66L\L[?'!@ @10 !D M ("!Q'T 'AL+W=O&PO=V]R:W-H965T M !EG.+1&&M0( !<& 9 M " @3R( !X;"]W;W)K&UL4$L! A0# M% @ MX &65UP (*X @ BPD !D ("!*(L 'AL+W=O M&PO=V]R:W-H965T !ED[O$.!*@0 %0+ 9 " @9*0 M !X;"]W;W)K&UL4$L! A0#% @ MX &61RD MR !9!@ MQL !D ("!\Y0 'AL+W=O&PO=V]R:W-H965T !ED1FA4EC 4 .44 9 " @;J? !X;"]W;W)K&UL4$L! A0#% @ MX &6 @ Q04 !D M ("!?:4 'AL+W=O&PO M=V]R:W-H965T !EFB*@P05 0 M %<1 9 " @?VM !X;"]W;W)K&UL4$L! A0#% @ MX &66/5.[Z7!@ !D !D ("! MB+( 'AL+W=O&PO=V]R:W-H965T !EEDJ;N;(P, -<' 9 M " @3V\ !X;"]W;W)K&UL4$L! A0#% M @ MX &62O04C@/ @ EP0 !D ("!E[\ 'AL+W=O&PO=V]R:W-H965T !EF"G2CFM , $(/ 9 " @8+- !X M;"]W;W)K&UL4$L! A0#% @ MX &633UP*B? M! =A< !D ("!;=$ 'AL+W=O&PO=V]R:W-H965T M!EE?C@P7'@0 $D4 9 " @<79 !X;"]W;W)K&UL4$L! A0#% @ MX &66N?[^4!! WQ8 !D M ("!&MX 'AL+W=O&PO=V]R M:W-H965T !EEO#JCL+@, %P, M 9 " @3[I !X;"]W;W)K&UL M4$L! A0#% @ MX &64 K0P)S!@ ""\ !D ("!H^P M 'AL+W=O&PO=V]R:W-H965T !EGK@% W.@, !@. 9 M " @:GV !X;"]W;W)K&UL4$L! A0#% @ MMX &67T$;&+?!@ -#, !D ("!&OH 'AL+W=O&PO=V]R:W-H965T !EF. MM^ Z5!( ,$$ 0 9 " @1@1 0!X;"]W;W)K&UL4$L! A0#% @ MX &69]&4',)!0 F24 !D M ("!HR,! 'AL+W=O&PO=V]R:W-H M965T !EELOIR;>@( )@% 9 M " @84Q 0!X;"]W;W)K&UL4$L! M A0#% @ MX &67*A\($J P CPD !D ("!-C0! 'AL M+W=O&PO !EF7BKL

!EG[2Q,FS 0 %DE / " M ?$[ 0!X;"]W;W)K8F]O:RYX;6Q02P$"% ,4 " "W@ 99##^0_.4! !_ M(0 &@ @ 'J0 $ >&PO7W)E;',O=V]R:V)O;VLN>&UL+G)E M;'-02P$"% ,4 " "W@ 99C^&W:=,! V(0 $P @ $' L0P$ 6T-O;G1E;G1?5'EP97-=+GAM;%!+!08 0 ! '<1 +10$ ! end XML 69 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 70 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 72 FilingSummary.xml IDEA: XBRL DOCUMENT 3.24.2.u1 html 284 278 1 false 71 0 false 6 false false R1.htm 995200090 - Document - Document and Entity Information Sheet http://www.topbuild.com/role/DocumentDocumentAndEntityInformation Document and Entity Information Cover 1 false false R2.htm 995200100 - Statement - CONSOLIDATED BALANCE SHEETS Sheet http://www.topbuild.com/role/StatementConsolidatedBalanceSheets CONSOLIDATED BALANCE SHEETS Statements 2 false false R3.htm 995200105 - Statement - CONSOLIDATED BALANCE SHEETS (Parenthetical) Sheet http://www.topbuild.com/role/StatementConsolidatedBalanceSheetsParenthetical CONSOLIDATED BALANCE SHEETS (Parenthetical) Statements 3 false false R4.htm 995200200 - Statement - CONSOLIDATED STATEMENTS OF OPERATIONS Sheet http://www.topbuild.com/role/StatementConsolidatedStatementsOfOperations CONSOLIDATED STATEMENTS OF OPERATIONS Statements 4 false false R5.htm 995200300 - Statement - CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME Sheet http://www.topbuild.com/role/StatementConsolidatedStatementsOfComprehensiveIncome CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME Statements 5 false false R6.htm 995200400 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS Sheet http://www.topbuild.com/role/StatementConsolidatedStatementsOfCashFlows CONSOLIDATED STATEMENTS OF CASH FLOWS Statements 6 false false R7.htm 995200500 - Statement - CONSOLIDATED STATEMENTS OF CHANGES IN SHAREHOLDERS' EQUITY Sheet http://www.topbuild.com/role/StatementConsolidatedStatementsOfChangesInShareholdersEquity CONSOLIDATED STATEMENTS OF CHANGES IN SHAREHOLDERS' EQUITY Statements 7 false false R8.htm 995200505 - Statement - CONSOLIDATED STATEMENTS OF CHANGES IN SHAREHOLDERS' EQUITY (Parenthetical) Sheet http://www.topbuild.com/role/StatementConsolidatedStatementsOfChangesInShareholdersEquityParenthetical CONSOLIDATED STATEMENTS OF CHANGES IN SHAREHOLDERS' EQUITY (Parenthetical) Statements 8 false false R9.htm 995210101 - Disclosure - Basis of Presentation Sheet http://www.topbuild.com/role/DisclosureBasisOfPresentation Basis of Presentation Notes 9 false false R10.htm 995210201 - Disclosure - Accounting Policies Sheet http://www.topbuild.com/role/DisclosureAccountingPolicies Accounting Policies Notes 10 false false R11.htm 995210301 - Disclosure - Revenue Recognition Sheet http://www.topbuild.com/role/DisclosureRevenueRecognition Revenue Recognition Notes 11 false false R12.htm 995210401 - Disclosure - Goodwill and Other Intangibles Sheet http://www.topbuild.com/role/DisclosureGoodwillAndOtherIntangibles Goodwill and Other Intangibles Notes 12 false false R13.htm 995210501 - Disclosure - Long-Term Debt Sheet http://www.topbuild.com/role/DisclosureLongTermDebt Long-Term Debt Notes 13 false false R14.htm 995210601 - Disclosure - Fair Value Measurements Sheet http://www.topbuild.com/role/DisclosureFairValueMeasurements Fair Value Measurements Notes 14 false false R15.htm 995210701 - Disclosure - Segment Information Sheet http://www.topbuild.com/role/DisclosureSegmentInformation Segment Information Notes 15 false false R16.htm 995210801 - Disclosure - Income Taxes Sheet http://www.topbuild.com/role/DisclosureIncomeTaxes Income Taxes Notes 16 false false R17.htm 995210901 - Disclosure - Net Income Per Share Sheet http://www.topbuild.com/role/DisclosureNetIncomePerShare Net Income Per Share Notes 17 false false R18.htm 995211001 - Disclosure - Share-Based Compensation Sheet http://www.topbuild.com/role/DisclosureShareBasedCompensation Share-Based Compensation Notes 18 false false R19.htm 995211101 - Disclosure - Share Repurchase Program Sheet http://www.topbuild.com/role/DisclosureShareRepurchaseProgram Share Repurchase Program Notes 19 false false R20.htm 995211201 - Disclosure - Business Combinations Sheet http://www.topbuild.com/role/DisclosureBusinessCombinations Business Combinations Notes 20 false false R21.htm 995211301 - Disclosure - Accrued Liabilities Sheet http://www.topbuild.com/role/DisclosureAccruedLiabilities Accrued Liabilities Notes 21 false false R22.htm 995211401 - Disclosure - Other Commitments and Contingencies Sheet http://www.topbuild.com/role/DisclosureOtherCommitmentsAndContingencies Other Commitments and Contingencies Notes 22 false false R23.htm 995410 - Disclosure - Pay vs Performance Disclosure Sheet http://xbrl.sec.gov/ecd/role/PvpDisclosure Pay vs Performance Disclosure Notes 23 false false R24.htm 995445 - Disclosure - Insider Trading Arrangements Sheet http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements Insider Trading Arrangements Notes 24 false false R25.htm 99920202 - Disclosure - Accounting Policies (Policies) Sheet http://www.topbuild.com/role/DisclosureAccountingPoliciesPolicies Accounting Policies (Policies) Policies http://www.topbuild.com/role/DisclosureAccountingPolicies 25 false false R26.htm 99930303 - Disclosure - Revenue Recognition (Tables) Sheet http://www.topbuild.com/role/DisclosureRevenueRecognitionTables Revenue Recognition (Tables) Tables http://www.topbuild.com/role/DisclosureRevenueRecognition 26 false false R27.htm 99930403 - Disclosure - Goodwill and Other Intangibles (Tables) Sheet http://www.topbuild.com/role/DisclosureGoodwillAndOtherIntangiblesTables Goodwill and Other Intangibles (Tables) Tables http://www.topbuild.com/role/DisclosureGoodwillAndOtherIntangibles 27 false false R28.htm 99930503 - Disclosure - Long-Term Debt (Tables) Sheet http://www.topbuild.com/role/DisclosureLongTermDebtTables Long-Term Debt (Tables) Tables http://www.topbuild.com/role/DisclosureLongTermDebt 28 false false R29.htm 99930603 - Disclosure - Fair Value Measurements (Tables) Sheet http://www.topbuild.com/role/DisclosureFairValueMeasurementsTables Fair Value Measurements (Tables) Tables http://www.topbuild.com/role/DisclosureFairValueMeasurements 29 false false R30.htm 99930703 - Disclosure - Segment Information (Tables) Sheet http://www.topbuild.com/role/DisclosureSegmentInformationTables Segment Information (Tables) Tables http://www.topbuild.com/role/DisclosureSegmentInformation 30 false false R31.htm 99930903 - Disclosure - Net Income Per Share (Tables) Sheet http://www.topbuild.com/role/DisclosureNetIncomePerShareTables Net Income Per Share (Tables) Tables http://www.topbuild.com/role/DisclosureNetIncomePerShare 31 false false R32.htm 99931003 - Disclosure - Share-Based Compensation (Tables) Sheet http://www.topbuild.com/role/DisclosureShareBasedCompensationTables Share-Based Compensation (Tables) Tables http://www.topbuild.com/role/DisclosureShareBasedCompensation 32 false false R33.htm 99931103 - Disclosure - Share Repurchase Program (Tables) Sheet http://www.topbuild.com/role/DisclosureShareRepurchaseProgramTables Share Repurchase Program (Tables) Tables http://www.topbuild.com/role/DisclosureShareRepurchaseProgram 33 false false R34.htm 99931303 - Disclosure - Accrued Liabilities (Tables) Sheet http://www.topbuild.com/role/DisclosureAccruedLiabilitiesTables Accrued Liabilities (Tables) Tables http://www.topbuild.com/role/DisclosureAccruedLiabilities 34 false false R35.htm 99940101 - Disclosure - Basis of Presentation (Details) Sheet http://www.topbuild.com/role/DisclosureBasisOfPresentationDetails Basis of Presentation (Details) Details http://www.topbuild.com/role/DisclosureBasisOfPresentation 35 false false R36.htm 99940301 - Disclosure - Revenue Recognition - Disaggregation (Details) Sheet http://www.topbuild.com/role/DisclosureRevenueRecognitionDisaggregationDetails Revenue Recognition - Disaggregation (Details) Details 36 false false R37.htm 99940302 - Disclosure - Revenue Recognition - Other (Details) Sheet http://www.topbuild.com/role/DisclosureRevenueRecognitionOtherDetails Revenue Recognition - Other (Details) Details 37 false false R38.htm 99940401 - Disclosure - Goodwill and Other Intangibles - Goodwill (Details) Sheet http://www.topbuild.com/role/DisclosureGoodwillAndOtherIntangiblesGoodwillDetails Goodwill and Other Intangibles - Goodwill (Details) Details 38 false false R39.htm 99940402 - Disclosure - Goodwill and Other Intangibles - Other intangible assets (Details) Sheet http://www.topbuild.com/role/DisclosureGoodwillAndOtherIntangiblesOtherIntangibleAssetsDetails Goodwill and Other Intangibles - Other intangible assets (Details) Details 39 false false R40.htm 99940501 - Disclosure - Long-Term Debt - Reconciliation (Details) Sheet http://www.topbuild.com/role/DisclosureLongTermDebtReconciliationDetails Long-Term Debt - Reconciliation (Details) Details 40 false false R41.htm 99940502 - Disclosure - Long-Term Debt - Schedule of debt maturity (Details) Sheet http://www.topbuild.com/role/DisclosureLongTermDebtScheduleOfDebtMaturityDetails Long-Term Debt - Schedule of debt maturity (Details) Details 41 false false R42.htm 99940503 - Disclosure - Long-Term Debt - Key Terms of Credit Agreement (Details) Sheet http://www.topbuild.com/role/DisclosureLongTermDebtKeyTermsOfCreditAgreementDetails Long-Term Debt - Key Terms of Credit Agreement (Details) Details 42 false false R43.htm 99940504 - Disclosure - Long-Term Debt - Revolving Facility (Details) Sheet http://www.topbuild.com/role/DisclosureLongTermDebtRevolvingFacilityDetails Long-Term Debt - Revolving Facility (Details) Details 43 false false R44.htm 99940505 - Disclosure - Long-Term Debt - Senior Notes and Equipment Notes (Details) Notes http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails Long-Term Debt - Senior Notes and Equipment Notes (Details) Details 44 false false R45.htm 99940506 - Disclosure - Long-Term Debt - Other (Details) Sheet http://www.topbuild.com/role/DisclosureLongTermDebtOtherDetails Long-Term Debt - Other (Details) Details 45 false false R46.htm 99940601 - Disclosure - Fair Value Measurements (Details) Sheet http://www.topbuild.com/role/DisclosureFairValueMeasurementsDetails Fair Value Measurements (Details) Details http://www.topbuild.com/role/DisclosureFairValueMeasurementsTables 46 false false R47.htm 99940701 - Disclosure - Segment Information (Details) Sheet http://www.topbuild.com/role/DisclosureSegmentInformationDetails Segment Information (Details) Details http://www.topbuild.com/role/DisclosureSegmentInformationTables 47 false false R48.htm 99940801 - Disclosure - Income Taxes (Details) Sheet http://www.topbuild.com/role/DisclosureIncomeTaxesDetails Income Taxes (Details) Details http://www.topbuild.com/role/DisclosureIncomeTaxes 48 false false R49.htm 99940901 - Disclosure - Net Income Per Share - Calculation (Details) Sheet http://www.topbuild.com/role/DisclosureNetIncomePerShareCalculationDetails Net Income Per Share - Calculation (Details) Details 49 false false R50.htm 99940902 - Disclosure - Net Income Per Share - Anti-dilutive common stock equivalents (Details) Sheet http://www.topbuild.com/role/DisclosureNetIncomePerShareAntiDilutiveCommonStockEquivalentsDetails Net Income Per Share - Anti-dilutive common stock equivalents (Details) Details 50 false false R51.htm 99941001 - Disclosure - Share-Based Compensation - Expense (Details) Sheet http://www.topbuild.com/role/DisclosureShareBasedCompensationExpenseDetails Share-Based Compensation - Expense (Details) Details 51 false false R52.htm 99941002 - Disclosure - Share-Based Compensation - Activity (Details) Sheet http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails Share-Based Compensation - Activity (Details) Details 52 false false R53.htm 99941101 - Disclosure - Share Repurchase Program (Details) Sheet http://www.topbuild.com/role/DisclosureShareRepurchaseProgramDetails Share Repurchase Program (Details) Details http://www.topbuild.com/role/DisclosureShareRepurchaseProgramTables 53 false false R54.htm 99941201 - Disclosure - Business Combinations - Summary (Details) Sheet http://www.topbuild.com/role/DisclosureBusinessCombinationsSummaryDetails Business Combinations - Summary (Details) Details 54 false false R55.htm 99941202 - Disclosure - Business Combinations - Intangibles (Details) Sheet http://www.topbuild.com/role/DisclosureBusinessCombinationsIntangiblesDetails Business Combinations - Intangibles (Details) Details 55 false false R56.htm 99941301 - Disclosure - Accrued Liabilities (Details) Sheet http://www.topbuild.com/role/DisclosureAccruedLiabilitiesDetails Accrued Liabilities (Details) Details http://www.topbuild.com/role/DisclosureAccruedLiabilitiesTables 56 false false All Reports Book All Reports bld-20240630.xsd bld-20240630_cal.xml bld-20240630_def.xml bld-20240630_lab.xml bld-20240630_pre.xml bld-20240630x10q.htm http://fasb.org/srt/2024 http://fasb.org/us-gaap/2024 http://xbrl.sec.gov/dei/2024 http://xbrl.sec.gov/ecd/2024 true true JSON 75 MetaLinks.json IDEA: XBRL DOCUMENT { "version": "2.2", "instance": { "bld-20240630x10q.htm": { "nsprefix": "bld", "nsuri": "http://www.topbuild.com/20240630", "dts": { "schema": { "local": [ "bld-20240630.xsd" ], "remote": [ "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd", "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd", "http://www.xbrl.org/2003/xl-2003-12-31.xsd", "http://www.xbrl.org/2003/xlink-2003-12-31.xsd", "http://www.xbrl.org/2005/xbrldt-2005.xsd", "http://www.xbrl.org/2006/ref-2006-02-27.xsd", "http://www.xbrl.org/lrr/arcrole/esma-arcrole-2018-11-21.xsd", "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd", "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd", "https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd", "https://www.xbrl.org/2023/calculation-1.1.xsd", "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd", "https://www.xbrl.org/dtr/type/2022-03-31/types.xsd", "https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd", "https://xbrl.fasb.org/srt/2024/elts/srt-roles-2024.xsd", "https://xbrl.fasb.org/srt/2024/elts/srt-types-2024.xsd", "https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd", "https://xbrl.fasb.org/us-gaap/2024/elts/us-roles-2024.xsd", "https://xbrl.fasb.org/us-gaap/2024/elts/us-types-2024.xsd", "https://xbrl.sec.gov/country/2024/country-2024.xsd", "https://xbrl.sec.gov/dei/2024/dei-2024.xsd", "https://xbrl.sec.gov/ecd/2024/ecd-2024.xsd", "https://xbrl.sec.gov/ecd/2024/ecd-sub-2024.xsd", "https://xbrl.sec.gov/stpr/2024/stpr-2024.xsd" ] }, "calculationLink": { "local": [ "bld-20240630_cal.xml" ] }, "definitionLink": { "local": [ "bld-20240630_def.xml" ] }, "labelLink": { "local": [ "bld-20240630_lab.xml" ] }, "presentationLink": { "local": [ "bld-20240630_pre.xml" ] }, "inline": { "local": [ "bld-20240630x10q.htm" ] } }, "keyStandard": 232, "keyCustom": 46, "axisStandard": 21, "axisCustom": 2, "memberStandard": 24, "memberCustom": 43, "hidden": { "total": 11, "http://xbrl.sec.gov/dei/2024": 5, "http://fasb.org/us-gaap/2024": 6 }, "contextCount": 284, "entityCount": 1, "segmentCount": 71, "elementCount": 574, "unitCount": 6, "baseTaxonomies": { "http://fasb.org/us-gaap/2024": 730, "http://xbrl.sec.gov/dei/2024": 29, "http://xbrl.sec.gov/ecd/2024": 4, "http://fasb.org/srt/2024": 2 }, "report": { "R1": { "role": "http://www.topbuild.com/role/DocumentDocumentAndEntityInformation", "longName": "995200090 - Document - Document and Entity Information", "shortName": "Document and Entity Information", "isDefault": "true", "groupType": "document", "subGroupType": "", "menuCat": "Cover", "order": "1", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "dei:DocumentType", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "dei:DocumentType", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true } }, "R2": { "role": "http://www.topbuild.com/role/StatementConsolidatedBalanceSheets", "longName": "995200100 - Statement - CONSOLIDATED BALANCE SHEETS", "shortName": "CONSOLIDATED BALANCE SHEETS", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "2", "firstAnchor": { "contextRef": "As_Of_6_30_2024_lI9hmKA8Hk-IGag9IxNgBg", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "unitRef": "Unit_Standard_USD_uAxSJM4WCEuee1ZYlJUzcw", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_6_30_2024_lI9hmKA8Hk-IGag9IxNgBg", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "unitRef": "Unit_Standard_USD_uAxSJM4WCEuee1ZYlJUzcw", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true } }, "R3": { "role": "http://www.topbuild.com/role/StatementConsolidatedBalanceSheetsParenthetical", "longName": "995200105 - Statement - CONSOLIDATED BALANCE SHEETS (Parenthetical)", "shortName": "CONSOLIDATED BALANCE SHEETS (Parenthetical)", "isDefault": "false", "groupType": "statement", "subGroupType": "parenthetical", "menuCat": "Statements", "order": "3", "firstAnchor": { "contextRef": "As_Of_6_30_2024_lI9hmKA8Hk-IGag9IxNgBg", "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent", "unitRef": "Unit_Standard_USD_uAxSJM4WCEuee1ZYlJUzcw", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_6_30_2024_lI9hmKA8Hk-IGag9IxNgBg", "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent", "unitRef": "Unit_Standard_USD_uAxSJM4WCEuee1ZYlJUzcw", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true } }, "R4": { "role": "http://www.topbuild.com/role/StatementConsolidatedStatementsOfOperations", "longName": "995200200 - Statement - CONSOLIDATED STATEMENTS OF OPERATIONS", "shortName": "CONSOLIDATED STATEMENTS OF OPERATIONS", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "4", "firstAnchor": { "contextRef": "Duration_4_1_2024_To_6_30_2024_w8I3VUsSW0ehXDeXSGMHjg", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "Unit_Standard_USD_uAxSJM4WCEuee1ZYlJUzcw", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_4_1_2024_To_6_30_2024_w8I3VUsSW0ehXDeXSGMHjg", "name": "us-gaap:CostOfGoodsAndServicesSold", "unitRef": "Unit_Standard_USD_uAxSJM4WCEuee1ZYlJUzcw", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "unique": true } }, "R5": { "role": "http://www.topbuild.com/role/StatementConsolidatedStatementsOfComprehensiveIncome", "longName": "995200300 - Statement - CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME", "shortName": "CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "5", "firstAnchor": { "contextRef": "Duration_4_1_2024_To_6_30_2024_w8I3VUsSW0ehXDeXSGMHjg", "name": "us-gaap:NetIncomeLoss", "unitRef": "Unit_Standard_USD_uAxSJM4WCEuee1ZYlJUzcw", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_4_1_2024_To_6_30_2024_w8I3VUsSW0ehXDeXSGMHjg", "name": "us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax", "unitRef": "Unit_Standard_USD_uAxSJM4WCEuee1ZYlJUzcw", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "unique": true } }, "R6": { "role": "http://www.topbuild.com/role/StatementConsolidatedStatementsOfCashFlows", "longName": "995200400 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS", "shortName": "CONSOLIDATED STATEMENTS OF CASH FLOWS", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "6", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:ProfitLoss", "unitRef": "Unit_Standard_USD_uAxSJM4WCEuee1ZYlJUzcw", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:ProfitLoss", "unitRef": "Unit_Standard_USD_uAxSJM4WCEuee1ZYlJUzcw", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true } }, "R7": { "role": "http://www.topbuild.com/role/StatementConsolidatedStatementsOfChangesInShareholdersEquity", "longName": "995200500 - Statement - CONSOLIDATED STATEMENTS OF CHANGES IN SHAREHOLDERS' EQUITY", "shortName": "CONSOLIDATED STATEMENTS OF CHANGES IN SHAREHOLDERS' EQUITY", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "7", "firstAnchor": { "contextRef": "As_Of_12_31_2022_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_WdDldt9EDkWZPqJA4T0hfg", "name": "us-gaap:StockholdersEquity", "unitRef": "Unit_Standard_USD_uAxSJM4WCEuee1ZYlJUzcw", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_3_31_2023_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_JNhR-T82i0WYkuiPlGvyEg", "name": "us-gaap:NetIncomeLoss", "unitRef": "Unit_Standard_USD_uAxSJM4WCEuee1ZYlJUzcw", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "unique": true } }, "R8": { "role": "http://www.topbuild.com/role/StatementConsolidatedStatementsOfChangesInShareholdersEquityParenthetical", "longName": "995200505 - Statement - CONSOLIDATED STATEMENTS OF CHANGES IN SHAREHOLDERS' EQUITY (Parenthetical)", "shortName": "CONSOLIDATED STATEMENTS OF CHANGES IN SHAREHOLDERS' EQUITY (Parenthetical)", "isDefault": "false", "groupType": "statement", "subGroupType": "parenthetical", "menuCat": "Statements", "order": "8", "firstAnchor": { "contextRef": "As_Of_6_30_2024_lI9hmKA8Hk-IGag9IxNgBg", "name": "us-gaap:CommonStockParOrStatedValuePerShare", "unitRef": "Unit_Divide_USD_shares_gCjCKU-iFkCivGUzt8R3lQ", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "As_Of_6_30_2023_CT91Et5bDUSlOat5-vc8UA", "name": "us-gaap:CommonStockParOrStatedValuePerShare", "unitRef": "Unit_Divide_USD_shares_gCjCKU-iFkCivGUzt8R3lQ", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "b", "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "unique": true } }, "R9": { "role": "http://www.topbuild.com/role/DisclosureBasisOfPresentation", "longName": "995210101 - Disclosure - Basis of Presentation", "shortName": "Basis of Presentation", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "9", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true } }, "R10": { "role": "http://www.topbuild.com/role/DisclosureAccountingPolicies", "longName": "995210201 - Disclosure - Accounting Policies", "shortName": "Accounting Policies", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "10", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:SignificantAccountingPoliciesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:SignificantAccountingPoliciesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true } }, "R11": { "role": "http://www.topbuild.com/role/DisclosureRevenueRecognition", "longName": "995210301 - Disclosure - Revenue Recognition", "shortName": "Revenue Recognition", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "11", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true } }, "R12": { "role": "http://www.topbuild.com/role/DisclosureGoodwillAndOtherIntangibles", "longName": "995210401 - Disclosure - Goodwill and Other Intangibles", "shortName": "Goodwill and Other Intangibles", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "12", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true } }, "R13": { "role": "http://www.topbuild.com/role/DisclosureLongTermDebt", "longName": "995210501 - Disclosure - Long-Term Debt", "shortName": "Long-Term Debt", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "13", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:LongTermDebtTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:LongTermDebtTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true } }, "R14": { "role": "http://www.topbuild.com/role/DisclosureFairValueMeasurements", "longName": "995210601 - Disclosure - Fair Value Measurements", "shortName": "Fair Value Measurements", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "14", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:FairValueDisclosuresTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:FairValueDisclosuresTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true } }, "R15": { "role": "http://www.topbuild.com/role/DisclosureSegmentInformation", "longName": "995210701 - Disclosure - Segment Information", "shortName": "Segment Information", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "15", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true } }, "R16": { "role": "http://www.topbuild.com/role/DisclosureIncomeTaxes", "longName": "995210801 - Disclosure - Income Taxes", "shortName": "Income Taxes", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "16", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true } }, "R17": { "role": "http://www.topbuild.com/role/DisclosureNetIncomePerShare", "longName": "995210901 - Disclosure - Net Income Per Share", "shortName": "Net Income Per Share", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "17", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:EarningsPerShareTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:EarningsPerShareTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true } }, "R18": { "role": "http://www.topbuild.com/role/DisclosureShareBasedCompensation", "longName": "995211001 - Disclosure - Share-Based Compensation", "shortName": "Share-Based Compensation", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "18", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true } }, "R19": { "role": "http://www.topbuild.com/role/DisclosureShareRepurchaseProgram", "longName": "995211101 - Disclosure - Share Repurchase Program", "shortName": "Share Repurchase Program", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "19", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "bld:ShareRepurchaseProgramTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "bld:ShareRepurchaseProgramTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true } }, "R20": { "role": "http://www.topbuild.com/role/DisclosureBusinessCombinations", "longName": "995211201 - Disclosure - Business Combinations", "shortName": "Business Combinations", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "20", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:BusinessCombinationDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:BusinessCombinationDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true } }, "R21": { "role": "http://www.topbuild.com/role/DisclosureAccruedLiabilities", "longName": "995211301 - Disclosure - Accrued Liabilities", "shortName": "Accrued Liabilities", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "21", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "bld:AccruedLiabilitiesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "bld:AccruedLiabilitiesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true } }, "R22": { "role": "http://www.topbuild.com/role/DisclosureOtherCommitmentsAndContingencies", "longName": "995211401 - Disclosure - Other Commitments and Contingencies", "shortName": "Other Commitments and Contingencies", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "22", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true } }, "R23": { "role": "http://xbrl.sec.gov/ecd/role/PvpDisclosure", "longName": "995410 - Disclosure - Pay vs Performance Disclosure", "shortName": "Pay vs Performance Disclosure", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "23", "firstAnchor": { "contextRef": "Duration_4_1_2024_To_6_30_2024_w8I3VUsSW0ehXDeXSGMHjg", "name": "us-gaap:NetIncomeLoss", "unitRef": "Unit_Standard_USD_uAxSJM4WCEuee1ZYlJUzcw", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true }, "uniqueAnchor": null }, "R24": { "role": "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements", "longName": "995445 - Disclosure - Insider Trading Arrangements", "shortName": "Insider Trading Arrangements", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "24", "firstAnchor": { "contextRef": "Duration_4_1_2024_To_6_30_2024_w8I3VUsSW0ehXDeXSGMHjg", "name": "ecd:Rule10b51ArrAdoptedFlag", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_4_1_2024_To_6_30_2024_w8I3VUsSW0ehXDeXSGMHjg", "name": "ecd:Rule10b51ArrAdoptedFlag", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true } }, "R25": { "role": "http://www.topbuild.com/role/DisclosureAccountingPoliciesPolicies", "longName": "99920202 - Disclosure - Accounting Policies (Policies)", "shortName": "Accounting Policies (Policies)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "policies", "menuCat": "Policies", "order": "25", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:SignificantAccountingPoliciesTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:SignificantAccountingPoliciesTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true } }, "R26": { "role": "http://www.topbuild.com/role/DisclosureRevenueRecognitionTables", "longName": "99930303 - Disclosure - Revenue Recognition (Tables)", "shortName": "Revenue Recognition (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "26", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true } }, "R27": { "role": "http://www.topbuild.com/role/DisclosureGoodwillAndOtherIntangiblesTables", "longName": "99930403 - Disclosure - Goodwill and Other Intangibles (Tables)", "shortName": "Goodwill and Other Intangibles (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "27", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:ScheduleOfGoodwillTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:ScheduleOfGoodwillTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true } }, "R28": { "role": "http://www.topbuild.com/role/DisclosureLongTermDebtTables", "longName": "99930503 - Disclosure - Long-Term Debt (Tables)", "shortName": "Long-Term Debt (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "28", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:ScheduleOfDebtTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:LongTermDebtTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:ScheduleOfDebtTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:LongTermDebtTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true } }, "R29": { "role": "http://www.topbuild.com/role/DisclosureFairValueMeasurementsTables", "longName": "99930603 - Disclosure - Fair Value Measurements (Tables)", "shortName": "Fair Value Measurements (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "29", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:FairValueLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:FairValueLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true } }, "R30": { "role": "http://www.topbuild.com/role/DisclosureSegmentInformationTables", "longName": "99930703 - Disclosure - Segment Information (Tables)", "shortName": "Segment Information (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "30", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:SegmentReportingDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:SegmentReportingDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true } }, "R31": { "role": "http://www.topbuild.com/role/DisclosureNetIncomePerShareTables", "longName": "99930903 - Disclosure - Net Income Per Share (Tables)", "shortName": "Net Income Per Share (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "31", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:EarningsPerShareTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:EarningsPerShareTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true } }, "R32": { "role": "http://www.topbuild.com/role/DisclosureShareBasedCompensationTables", "longName": "99931003 - Disclosure - Share-Based Compensation (Tables)", "shortName": "Share-Based Compensation (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "32", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "bld:ScheduleOfShareBasedCompensationExpenseTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "bld:ScheduleOfShareBasedCompensationExpenseTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true } }, "R33": { "role": "http://www.topbuild.com/role/DisclosureShareRepurchaseProgramTables", "longName": "99931103 - Disclosure - Share Repurchase Program (Tables)", "shortName": "Share Repurchase Program (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "33", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "bld:ScheduleOfShareRepurchasesTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "bld:ScheduleOfShareRepurchasesTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true } }, "R34": { "role": "http://www.topbuild.com/role/DisclosureAccruedLiabilitiesTables", "longName": "99931303 - Disclosure - Accrued Liabilities (Tables)", "shortName": "Accrued Liabilities (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "34", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "bld:AccruedLiabilitiesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "bld:AccruedLiabilitiesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true } }, "R35": { "role": "http://www.topbuild.com/role/DisclosureBasisOfPresentationDetails", "longName": "99940101 - Disclosure - Basis of Presentation (Details)", "shortName": "Basis of Presentation (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "35", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:NumberOfReportableSegments", "unitRef": "Unit_Standard_segment_AbSKKedzC0SBkIhfO2EGBw", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:NumberOfReportableSegments", "unitRef": "Unit_Standard_segment_AbSKKedzC0SBkIhfO2EGBw", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true } }, "R36": { "role": "http://www.topbuild.com/role/DisclosureRevenueRecognitionDisaggregationDetails", "longName": "99940301 - Disclosure - Revenue Recognition - Disaggregation (Details)", "shortName": "Revenue Recognition - Disaggregation (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "36", "firstAnchor": { "contextRef": "Duration_4_1_2024_To_6_30_2024_w8I3VUsSW0ehXDeXSGMHjg", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "Unit_Standard_USD_uAxSJM4WCEuee1ZYlJUzcw", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_4_1_2024_To_6_30_2024_srt_ProductOrServiceAxis_bld_InsulationAndAccessoriesMember_p6wZ1enYWEi-G-8BUOuN_A", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "Unit_Standard_USD_uAxSJM4WCEuee1ZYlJUzcw", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:DisaggregationOfRevenueTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "unique": true } }, "R37": { "role": "http://www.topbuild.com/role/DisclosureRevenueRecognitionOtherDetails", "longName": "99940302 - Disclosure - Revenue Recognition - Other (Details)", "shortName": "Revenue Recognition - Other (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "37", "firstAnchor": { "contextRef": "As_Of_6_30_2024_lI9hmKA8Hk-IGag9IxNgBg", "name": "us-gaap:ContractWithCustomerLiabilityCurrent", "unitRef": "Unit_Standard_USD_uAxSJM4WCEuee1ZYlJUzcw", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "bld:AccruedLiabilitiesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "As_Of_6_30_2024_lI9hmKA8Hk-IGag9IxNgBg", "name": "us-gaap:RevenueRemainingPerformanceObligation", "unitRef": "Unit_Standard_USD_uAxSJM4WCEuee1ZYlJUzcw", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "unique": true } }, "R38": { "role": "http://www.topbuild.com/role/DisclosureGoodwillAndOtherIntangiblesGoodwillDetails", "longName": "99940401 - Disclosure - Goodwill and Other Intangibles - Goodwill (Details)", "shortName": "Goodwill and Other Intangibles - Goodwill (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "38", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:NumberOfReportingUnits", "unitRef": "Unit_Standard_item_1M3qcKgggUOkPQRDkR-E-g", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:NumberOfReportingUnits", "unitRef": "Unit_Standard_item_1M3qcKgggUOkPQRDkR-E-g", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "p", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true } }, "R39": { "role": "http://www.topbuild.com/role/DisclosureGoodwillAndOtherIntangiblesOtherIntangibleAssetsDetails", "longName": "99940402 - Disclosure - Goodwill and Other Intangibles - Other intangible assets (Details)", "shortName": "Goodwill and Other Intangibles - Other intangible assets (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "39", "firstAnchor": { "contextRef": "As_Of_6_30_2024_lI9hmKA8Hk-IGag9IxNgBg", "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "unitRef": "Unit_Standard_USD_uAxSJM4WCEuee1ZYlJUzcw", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock", "bld:ScheduleOfAcquiredFiniteLivedAndIndefiniteLivedIntangibleAssetTableTextBlock", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2023_3YvuEEXSqUKmsTjTo2AawA", "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "unitRef": "Unit_Standard_USD_uAxSJM4WCEuee1ZYlJUzcw", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock", "bld:ScheduleOfAcquiredFiniteLivedAndIndefiniteLivedIntangibleAssetTableTextBlock", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "unique": true } }, "R40": { "role": "http://www.topbuild.com/role/DisclosureLongTermDebtReconciliationDetails", "longName": "99940501 - Disclosure - Long-Term Debt - Reconciliation (Details)", "shortName": "Long-Term Debt - Reconciliation (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "40", "firstAnchor": { "contextRef": "As_Of_6_30_2024_lI9hmKA8Hk-IGag9IxNgBg", "name": "us-gaap:DebtInstrumentCarryingAmount", "unitRef": "Unit_Standard_USD_uAxSJM4WCEuee1ZYlJUzcw", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "us-gaap:LongTermDebtTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "As_Of_6_30_2024_lI9hmKA8Hk-IGag9IxNgBg", "name": "us-gaap:DeferredFinanceCostsNet", "unitRef": "Unit_Standard_USD_uAxSJM4WCEuee1ZYlJUzcw", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfDebtTableTextBlock", "us-gaap:LongTermDebtTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "unique": true } }, "R41": { "role": "http://www.topbuild.com/role/DisclosureLongTermDebtScheduleOfDebtMaturityDetails", "longName": "99940502 - Disclosure - Long-Term Debt - Schedule of debt maturity (Details)", "shortName": "Long-Term Debt - Schedule of debt maturity (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "41", "firstAnchor": { "contextRef": "As_Of_6_30_2024_lI9hmKA8Hk-IGag9IxNgBg", "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear", "unitRef": "Unit_Standard_USD_uAxSJM4WCEuee1ZYlJUzcw", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "us-gaap:LongTermDebtTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_6_30_2024_lI9hmKA8Hk-IGag9IxNgBg", "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear", "unitRef": "Unit_Standard_USD_uAxSJM4WCEuee1ZYlJUzcw", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "us-gaap:LongTermDebtTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true } }, "R42": { "role": "http://www.topbuild.com/role/DisclosureLongTermDebtKeyTermsOfCreditAgreementDetails", "longName": "99940503 - Disclosure - Long-Term Debt - Key Terms of Credit Agreement (Details)", "shortName": "Long-Term Debt - Key Terms of Credit Agreement (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "42", "firstAnchor": { "contextRef": "As_Of_6_30_2024_us-gaap_LongtermDebtTypeAxis_us-gaap_RevolvingCreditFacilityMember_0OfvXrPkPkeDOzQN-s2svg", "name": "us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity", "unitRef": "Unit_Standard_USD_uAxSJM4WCEuee1ZYlJUzcw", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "bld:ScheduleOfAvailabilityUnderRevolvingFacilityTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "As_Of_6_30_2024_us-gaap_DebtInstrumentAxis_bld_AmendmentNo.4ToCreditAgreementMember_XxQUtYIWLE-EK5ffhP3qQw", "name": "us-gaap:DebtInstrumentInterestRateEffectivePercentage", "unitRef": "Unit_Standard_pure_YRKiXsP0nkiB28wcIUgH_w", "xsiNil": "false", "lang": null, "decimals": "4", "ancestors": [ "p", "td", "tr", "table", "bld:SummaryOfKeyTermsOfCreditAgreementTableTextBlock", "us-gaap:LongTermDebtTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "unique": true } }, "R43": { "role": "http://www.topbuild.com/role/DisclosureLongTermDebtRevolvingFacilityDetails", "longName": "99940504 - Disclosure - Long-Term Debt - Revolving Facility (Details)", "shortName": "Long-Term Debt - Revolving Facility (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "43", "firstAnchor": { "contextRef": "As_Of_6_30_2024_us-gaap_LongtermDebtTypeAxis_us-gaap_RevolvingCreditFacilityMember_0OfvXrPkPkeDOzQN-s2svg", "name": "us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity", "unitRef": "Unit_Standard_USD_uAxSJM4WCEuee1ZYlJUzcw", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "bld:ScheduleOfAvailabilityUnderRevolvingFacilityTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "As_Of_6_30_2024_us-gaap_LongtermDebtTypeAxis_us-gaap_RevolvingCreditFacilityMember_0OfvXrPkPkeDOzQN-s2svg", "name": "us-gaap:LettersOfCreditOutstandingAmount", "unitRef": "Unit_Standard_USD_uAxSJM4WCEuee1ZYlJUzcw", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "bld:ScheduleOfAvailabilityUnderRevolvingFacilityTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "unique": true } }, "R44": { "role": "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails", "longName": "99940505 - Disclosure - Long-Term Debt - Senior Notes and Equipment Notes (Details)", "shortName": "Long-Term Debt - Senior Notes and Equipment Notes (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "44", "firstAnchor": { "contextRef": "As_Of_6_30_2024_lI9hmKA8Hk-IGag9IxNgBg", "name": "us-gaap:LongTermDebt", "unitRef": "Unit_Standard_USD_uAxSJM4WCEuee1ZYlJUzcw", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfDebtTableTextBlock", "us-gaap:LongTermDebtTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_us-gaap_LongtermDebtTypeAxis_bld_EquipmentNotesMember_fyL3XhWnvkSKe24AWC62xw", "name": "us-gaap:DebtInstrumentTerm", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "unique": true } }, "R45": { "role": "http://www.topbuild.com/role/DisclosureLongTermDebtOtherDetails", "longName": "99940506 - Disclosure - Long-Term Debt - Other (Details)", "shortName": "Long-Term Debt - Other (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "45", "firstAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "bld:DebtInstrumentCovenantNetLeverageRatio", "unitRef": "Unit_Standard_pure_YRKiXsP0nkiB28wcIUgH_w", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "p", "td", "tr", "table", "bld:ScheduleOfKeyFinancialCovenantsTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "bld:DebtInstrumentCovenantNetLeverageRatio", "unitRef": "Unit_Standard_pure_YRKiXsP0nkiB28wcIUgH_w", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "p", "td", "tr", "table", "bld:ScheduleOfKeyFinancialCovenantsTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true } }, "R46": { "role": "http://www.topbuild.com/role/DisclosureFairValueMeasurementsDetails", "longName": "99940601 - Disclosure - Fair Value Measurements (Details)", "shortName": "Fair Value Measurements (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "46", "firstAnchor": { "contextRef": "As_Of_6_30_2024_lI9hmKA8Hk-IGag9IxNgBg", "name": "us-gaap:DebtInstrumentCarryingAmount", "unitRef": "Unit_Standard_USD_uAxSJM4WCEuee1ZYlJUzcw", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "us-gaap:LongTermDebtTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "As_Of_6_30_2024_us-gaap_DebtInstrumentAxis_bld_SeniorNotesDue2029Member_slfqAZl8YE2nB55Cle_ZfA", "name": "us-gaap:DebtInstrumentCarryingAmount", "unitRef": "Unit_Standard_USD_uAxSJM4WCEuee1ZYlJUzcw", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:FairValueLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "unique": true } }, "R47": { "role": "http://www.topbuild.com/role/DisclosureSegmentInformationDetails", "longName": "99940701 - Disclosure - Segment Information (Details)", "shortName": "Segment Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "47", "firstAnchor": { "contextRef": "Duration_4_1_2024_To_6_30_2024_w8I3VUsSW0ehXDeXSGMHjg", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "Unit_Standard_USD_uAxSJM4WCEuee1ZYlJUzcw", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "bld:BusinessCombinationTerminationFee", "unitRef": "Unit_Standard_USD_uAxSJM4WCEuee1ZYlJUzcw", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "span", "td", "tr", "table", "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "us-gaap:SegmentReportingDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "unique": true } }, "R48": { "role": "http://www.topbuild.com/role/DisclosureIncomeTaxesDetails", "longName": "99940801 - Disclosure - Income Taxes (Details)", "shortName": "Income Taxes (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "48", "firstAnchor": { "contextRef": "Duration_4_1_2024_To_6_30_2024_w8I3VUsSW0ehXDeXSGMHjg", "name": "us-gaap:EffectiveIncomeTaxRateContinuingOperations", "unitRef": "Unit_Standard_pure_YRKiXsP0nkiB28wcIUgH_w", "xsiNil": "false", "lang": null, "decimals": "3", "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_4_1_2024_To_6_30_2024_w8I3VUsSW0ehXDeXSGMHjg", "name": "us-gaap:EffectiveIncomeTaxRateContinuingOperations", "unitRef": "Unit_Standard_pure_YRKiXsP0nkiB28wcIUgH_w", "xsiNil": "false", "lang": null, "decimals": "3", "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true } }, "R49": { "role": "http://www.topbuild.com/role/DisclosureNetIncomePerShareCalculationDetails", "longName": "99940901 - Disclosure - Net Income Per Share - Calculation (Details)", "shortName": "Net Income Per Share - Calculation (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "49", "firstAnchor": { "contextRef": "Duration_4_1_2024_To_6_30_2024_w8I3VUsSW0ehXDeXSGMHjg", "name": "us-gaap:NetIncomeLoss", "unitRef": "Unit_Standard_USD_uAxSJM4WCEuee1ZYlJUzcw", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_4_1_2024_To_6_30_2024_w8I3VUsSW0ehXDeXSGMHjg", "name": "bld:IncrementalCommonSharesAttributableToDilutiveEffectOfStockOptions", "unitRef": "Unit_Standard_shares_iojNp85YukO21H0dnbg2bQ", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "us-gaap:EarningsPerShareTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "unique": true } }, "R50": { "role": "http://www.topbuild.com/role/DisclosureNetIncomePerShareAntiDilutiveCommonStockEquivalentsDetails", "longName": "99940902 - Disclosure - Net Income Per Share - Anti-dilutive common stock equivalents (Details)", "shortName": "Net Income Per Share - Anti-dilutive common stock equivalents (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "50", "firstAnchor": { "contextRef": "Duration_4_1_2023_To_6_30_2023_-ib1McU460SuMV94bThicQ", "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "unitRef": "Unit_Standard_shares_iojNp85YukO21H0dnbg2bQ", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock", "us-gaap:EarningsPerShareTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_4_1_2023_To_6_30_2023_-ib1McU460SuMV94bThicQ", "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "unitRef": "Unit_Standard_shares_iojNp85YukO21H0dnbg2bQ", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock", "us-gaap:EarningsPerShareTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true } }, "R51": { "role": "http://www.topbuild.com/role/DisclosureShareBasedCompensationExpenseDetails", "longName": "99941001 - Disclosure - Share-Based Compensation - Expense (Details)", "shortName": "Share-Based Compensation - Expense (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "51", "firstAnchor": { "contextRef": "Duration_4_1_2024_To_6_30_2024_w8I3VUsSW0ehXDeXSGMHjg", "name": "us-gaap:AllocatedShareBasedCompensationExpense", "unitRef": "Unit_Standard_USD_uAxSJM4WCEuee1ZYlJUzcw", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "bld:ScheduleOfShareBasedCompensationExpenseTableTextBlock", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_4_1_2024_To_6_30_2024_w8I3VUsSW0ehXDeXSGMHjg", "name": "us-gaap:AllocatedShareBasedCompensationExpense", "unitRef": "Unit_Standard_USD_uAxSJM4WCEuee1ZYlJUzcw", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "bld:ScheduleOfShareBasedCompensationExpenseTableTextBlock", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true } }, "R52": { "role": "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails", "longName": "99941002 - Disclosure - Share-Based Compensation - Activity (Details)", "shortName": "Share-Based Compensation - Activity (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "52", "firstAnchor": { "contextRef": "Duration_4_1_2024_To_6_30_2024_w8I3VUsSW0ehXDeXSGMHjg", "name": "us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised", "unitRef": "Unit_Standard_shares_iojNp85YukO21H0dnbg2bQ", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageRemainingContractualTerm1", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "td", "tr", "table", "us-gaap:ScheduleOfShareBasedCompensationActivityTableTextBlock", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "unique": true } }, "R53": { "role": "http://www.topbuild.com/role/DisclosureShareRepurchaseProgramDetails", "longName": "99941101 - Disclosure - Share Repurchase Program (Details)", "shortName": "Share Repurchase Program (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "53", "firstAnchor": { "contextRef": "As_Of_6_30_2024_lI9hmKA8Hk-IGag9IxNgBg", "name": "us-gaap:ShareRepurchaseProgramExciseTaxPayable", "unitRef": "Unit_Standard_USD_uAxSJM4WCEuee1ZYlJUzcw", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "span", "p", "bld:ShareRepurchaseProgramTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2024_To_6_30_2024_7vY_MoWIkkygFVWrae_Erg", "name": "us-gaap:TreasuryStockSharesAcquired", "unitRef": "Unit_Standard_shares_iojNp85YukO21H0dnbg2bQ", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "td", "tr", "table", "bld:ScheduleOfShareRepurchasesTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "unique": true } }, "R54": { "role": "http://www.topbuild.com/role/DisclosureBusinessCombinationsSummaryDetails", "longName": "99941201 - Disclosure - Business Combinations - Summary (Details)", "shortName": "Business Combinations - Summary (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "54", "firstAnchor": { "contextRef": "Duration_4_1_2024_To_6_30_2024_w8I3VUsSW0ehXDeXSGMHjg", "name": "us-gaap:BusinessCombinationAcquisitionRelatedCosts", "unitRef": "Unit_Standard_USD_uAxSJM4WCEuee1ZYlJUzcw", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:BusinessCombinationDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_4_1_2024_To_6_30_2024_w8I3VUsSW0ehXDeXSGMHjg", "name": "us-gaap:BusinessCombinationAcquisitionRelatedCosts", "unitRef": "Unit_Standard_USD_uAxSJM4WCEuee1ZYlJUzcw", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:BusinessCombinationDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true } }, "R55": { "role": "http://www.topbuild.com/role/DisclosureBusinessCombinationsIntangiblesDetails", "longName": "99941202 - Disclosure - Business Combinations - Intangibles (Details)", "shortName": "Business Combinations - Intangibles (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "55", "firstAnchor": { "contextRef": "As_Of_6_30_2024_us-gaap_BusinessAcquisitionAxis_bld_Acquisitions2024Member_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember_QkZoM1hX6ke4wS_I0E-4ow", "name": "us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles", "unitRef": "Unit_Standard_USD_uAxSJM4WCEuee1ZYlJUzcw", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:BusinessCombinationDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_6_30_2024_us-gaap_BusinessAcquisitionAxis_bld_Acquisitions2024Member_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember_QkZoM1hX6ke4wS_I0E-4ow", "name": "us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles", "unitRef": "Unit_Standard_USD_uAxSJM4WCEuee1ZYlJUzcw", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "p", "us-gaap:BusinessCombinationDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true } }, "R56": { "role": "http://www.topbuild.com/role/DisclosureAccruedLiabilitiesDetails", "longName": "99941301 - Disclosure - Accrued Liabilities (Details)", "shortName": "Accrued Liabilities (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "56", "firstAnchor": { "contextRef": "As_Of_6_30_2024_lI9hmKA8Hk-IGag9IxNgBg", "name": "us-gaap:EmployeeRelatedLiabilitiesCurrent", "unitRef": "Unit_Standard_USD_uAxSJM4WCEuee1ZYlJUzcw", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "bld:AccruedLiabilitiesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_6_30_2024_lI9hmKA8Hk-IGag9IxNgBg", "name": "us-gaap:EmployeeRelatedLiabilitiesCurrent", "unitRef": "Unit_Standard_USD_uAxSJM4WCEuee1ZYlJUzcw", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "bld:AccruedLiabilitiesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "bld-20240630x10q.htm", "first": true, "unique": true } } }, "tag": { "us-gaap_AccountingPoliciesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccountingPoliciesAbstract", "lang": { "en-us": { "role": { "label": "Accounting Policies" } } }, "auth_ref": [] }, "us-gaap_AccountsPayableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccountsPayableCurrent", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Accounts Payable, Current", "terseLabel": "Accounts payable", "documentation": "Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r54", "r638" ] }, "us-gaap_AccountsReceivableNetCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccountsReceivableNetCurrent", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Accounts Receivable, Net, Current", "terseLabel": "Receivables, net of an allowance for credit losses of $22,718 at June 30, 2024, and $23,948 at December 31, 2023", "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current." } } }, "auth_ref": [ "r772" ] }, "bld_AccruedCustomerRebatesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "AccruedCustomerRebatesCurrent", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/DisclosureAccruedLiabilitiesDetails" ], "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 for customer rebates. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).", "label": "Accrued Customer Rebates, Current", "terseLabel": "Customer rebates" } } }, "auth_ref": [] }, "us-gaap_AccruedInsuranceCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccruedInsuranceCurrent", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/DisclosureAccruedLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Accrued Insurance, Current", "terseLabel": "Insurance liabilities", "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)." } } }, "auth_ref": [ "r57" ] }, "us-gaap_AccruedInsuranceNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccruedInsuranceNoncurrent", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Accrued Insurance, Noncurrent", "terseLabel": "Long-term portion of insurance reserves", "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." } } }, "auth_ref": [ "r62" ] }, "bld_AccruedLiabilitiesAndEmployeeRelatedLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "AccruedLiabilitiesAndEmployeeRelatedLiabilitiesCurrent", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/DisclosureAccruedLiabilitiesDetails", "http://www.topbuild.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Also includes the 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": "Accrued Liabilities and Employee-related Liabilities, Current", "terseLabel": "Accrued liabilities", "totalLabel": "Total accrued liabilities" } } }, "auth_ref": [] }, "bld_AccruedLiabilitiesDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "AccruedLiabilitiesDisclosureTextBlock", "presentation": [ "http://www.topbuild.com/role/DisclosureAccruedLiabilities" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for accrued liabilities at the end of the reporting period.", "label": "Accrued Liabilities Disclosure [Text Block]", "terseLabel": "Accrued Liabilities" } } }, "auth_ref": [] }, "us-gaap_AccruedLiabilitiesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccruedLiabilitiesMember", "presentation": [ "http://www.topbuild.com/role/DisclosureRevenueRecognitionOtherDetails" ], "lang": { "en-us": { "role": { "label": "Accrued liabilities", "terseLabel": "Accrued liabilities", "documentation": "This item represents obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered." } } }, "auth_ref": [ "r57" ] }, "bld_AccruedSalesPropertyAndExciseTaxesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "AccruedSalesPropertyAndExciseTaxesCurrent", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/DisclosureAccruedLiabilitiesDetails" ], "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 for sales, property and excise taxes. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).", "label": "Accrued Sales, Property and Excise Taxes, Current", "terseLabel": "Sales, property, and excise taxes" } } }, "auth_ref": [] }, "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Accumulated Other Comprehensive Income (Loss), Net of Tax", "terseLabel": "Accumulated other comprehensive loss", "documentation": "Amount, after tax, of accumulated increase (decrease) in equity from transaction and other event and circumstance from nonowner source." } } }, "auth_ref": [ "r19", "r20", "r74", "r157", "r484", "r519", "r520" ] }, "us-gaap_AccumulatedOtherComprehensiveIncomeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccumulatedOtherComprehensiveIncomeMember", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfChangesInShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Accumulated Other Comprehensive (Loss) Income", "terseLabel": "Accumulated Other Comprehensive (Loss) Income", "documentation": "Accumulated increase (decrease) in equity from transactions and other events and circumstances from non-owner sources, attributable to the parent. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners." } } }, "auth_ref": [ "r3", "r11", "r20", "r418", "r421", "r462", "r515", "r516", "r751", "r752", "r753", "r759", "r760", "r761", "r763" ] }, "us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AcquiredFiniteLivedIntangibleAssetsLineItems", "presentation": [ "http://www.topbuild.com/role/DisclosureBusinessCombinationsIntangiblesDetails" ], "lang": { "en-us": { "role": { "label": "Acquired Finite-Lived Intangible Assets [Line Items]", "terseLabel": "Estimates of acquired intangible assets", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r267", "r268", "r269", "r271", "r587" ] }, "us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife", "presentation": [ "http://www.topbuild.com/role/DisclosureBusinessCombinationsIntangiblesDetails" ], "lang": { "en-us": { "role": { "label": "Acquired Finite-lived Intangible Assets, Weighted Average Useful Life", "terseLabel": "Weighted Average Estimated Useful Life (Years)", "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." } } }, "auth_ref": [ "r269", "r587" ] }, "bld_Acquisitions2024Member": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "Acquisitions2024Member", "presentation": [ "http://www.topbuild.com/role/DisclosureBusinessCombinationsIntangiblesDetails", "http://www.topbuild.com/role/DisclosureBusinessCombinationsSummaryDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to 2024 acquisitions.", "label": "Acquisitions 2024 [Member]", "terseLabel": "2024 Acquisitions" } } }, "auth_ref": [] }, "ecd_Additional402vDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "Additional402vDisclosureTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Additional 402(v) Disclosure [Text Block]", "terseLabel": "Additional 402(v) Disclosure" } } }, "auth_ref": [ "r694" ] }, "us-gaap_AdditionalPaidInCapitalCommonStock": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AdditionalPaidInCapitalCommonStock", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Additional Paid in Capital, Common Stock", "terseLabel": "Additional paid-in capital", "documentation": "Value received from shareholders in common stock-related transactions that are in excess of par value or stated value and amounts received from other stock-related transactions. Includes only common stock transactions (excludes preferred stock transactions). May be called contributed capital, capital in excess of par, capital surplus, or paid-in capital." } } }, "auth_ref": [ "r67" ] }, "us-gaap_AdditionalPaidInCapitalMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AdditionalPaidInCapitalMember", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfChangesInShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Additional Paid-in Capital", "terseLabel": "Additional Paid-in Capital", "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders." } } }, "auth_ref": [ "r527", "r759", "r760", "r761", "r763", "r843", "r896" ] }, "ecd_AdjToCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AdjToCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Adjustment to Compensation Amount", "terseLabel": "Adjustment to Compensation, Amount" } } }, "auth_ref": [ "r707" ] }, "ecd_AdjToCompAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AdjToCompAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Adjustment to Compensation [Axis]", "terseLabel": "Adjustment to Compensation:" } } }, "auth_ref": [ "r707" ] }, "ecd_AdjToNonPeoNeoCompFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AdjToNonPeoNeoCompFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Adjustment to Non-PEO NEO Compensation Footnote [Text Block]", "terseLabel": "Adjustment to Non-PEO NEO Compensation Footnote" } } }, "auth_ref": [ "r707" ] }, "ecd_AdjToPeoCompFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AdjToPeoCompFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Adjustment To PEO Compensation, Footnote [Text Block]", "terseLabel": "Adjustment To PEO Compensation, Footnote" } } }, "auth_ref": [ "r707" ] }, "us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfChangesInShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Adjustments Related to Tax Withholding for Share-based Compensation", "negatedLabel": "Shares withheld to pay taxes on employees' equity awards", "documentation": "Amount of decrease to equity for grantee's tax withholding obligation for award under share-based payment arrangement." } } }, "auth_ref": [] }, "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfChangesInShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Adjustments to Additional Paid in Capital, Share-based Compensation, Requisite Service Period Recognition", "terseLabel": "Share-based compensation", "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement." } } }, "auth_ref": [ "r41", "r42", "r348" ] }, "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfCashFlows" ], "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:" } } }, "auth_ref": [] }, "ecd_AggtChngPnsnValInSummryCompstnTblForAplblYrMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AggtChngPnsnValInSummryCompstnTblForAplblYrMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Aggregate Change in Present Value of Accumulated Benefit for All Pension Plans Reported in Summary Compensation Table [Member]", "terseLabel": "Aggregate Change in Present Value of Accumulated Benefit for All Pension Plans Reported in Summary Compensation Table" } } }, "auth_ref": [ "r740" ] }, "ecd_AggtErrCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AggtErrCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Aggregate Erroneous Compensation Amount", "terseLabel": "Aggregate Erroneous Compensation Amount" } } }, "auth_ref": [ "r666", "r676", "r686", "r718" ] }, "ecd_AggtErrCompNotYetDeterminedTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AggtErrCompNotYetDeterminedTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Aggregate Erroneous Compensation Not Yet Determined [Text Block]", "terseLabel": "Aggregate Erroneous Compensation Not Yet Determined" } } }, "auth_ref": [ "r669", "r679", "r689", "r721" ] }, "ecd_AggtPnsnAdjsSvcCstMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AggtPnsnAdjsSvcCstMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Aggregate Pension Adjustments Service Cost [Member]", "terseLabel": "Aggregate Pension Adjustments Service Cost" } } }, "auth_ref": [ "r741" ] }, "ecd_AllAdjToCompMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AllAdjToCompMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "All Adjustments to Compensation [Member]", "terseLabel": "All Adjustments to Compensation" } } }, "auth_ref": [ "r707" ] }, "ecd_AllExecutiveCategoriesMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AllExecutiveCategoriesMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "All Executive Categories [Member]", "terseLabel": "All Executive Categories" } } }, "auth_ref": [ "r714" ] }, "ecd_AllIndividualsMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AllIndividualsMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure", "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure", "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements", "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "All Individuals [Member]", "terseLabel": "All Individuals" } } }, "auth_ref": [ "r670", "r680", "r690", "r714", "r722", "r726", "r734" ] }, "bld_AllOtherProductsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "AllOtherProductsMember", "presentation": [ "http://www.topbuild.com/role/DisclosureRevenueRecognitionDisaggregationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents in aggregate all other product categories.", "label": "All other", "terseLabel": "All other" } } }, "auth_ref": [] }, "ecd_AllTradingArrangementsMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AllTradingArrangementsMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "All Trading Arrangements [Member]", "terseLabel": "All Trading Arrangements" } } }, "auth_ref": [ "r732" ] }, "us-gaap_AllocatedShareBasedCompensationExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AllocatedShareBasedCompensationExpense", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationExpenseDetails" ], "lang": { "en-us": { "role": { "label": "Allocated Share-based Compensation Expense", "terseLabel": "Share-based compensation expense", "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized." } } }, "auth_ref": [ "r377", "r382" ] }, "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AllowanceForDoubtfulAccountsReceivableCurrent", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Allowance for Doubtful Accounts Receivable, Current", "terseLabel": "Allowance for credit losses", "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current." } } }, "auth_ref": [ "r158", "r244", "r248" ] }, "dei_AmendmentFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "AmendmentFlag", "presentation": [ "http://www.topbuild.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Amendment Flag", "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission." } } }, "auth_ref": [] }, "bld_AmendmentNo.4ToCreditAgreementMember": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "AmendmentNo.4ToCreditAgreementMember", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtKeyTermsOfCreditAgreementDetails" ], "lang": { "en-us": { "role": { "documentation": "Information pertaining to Amendment No. 4 to the original credit agreement entered into on July 26, 2023.", "label": "Amendment No. 4 to Credit Agreement", "terseLabel": "Credit Agreement" } } }, "auth_ref": [] }, "us-gaap_AmortizationOfFinancingCosts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AmortizationOfFinancingCosts", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Amortization of Financing Costs", "terseLabel": "Amortization of debt issuance costs", "documentation": "Amount of amortization expense attributable to debt issuance costs." } } }, "auth_ref": [ "r83", "r315", "r755", "r853" ] }, "us-gaap_AmortizationOfIntangibleAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AmortizationOfIntangibleAssets", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/DisclosureGoodwillAndOtherIntangiblesOtherIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Amortization of Intangible Assets", "terseLabel": "Amortization expense", "documentation": "The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method." } } }, "auth_ref": [ "r8", "r266", "r273", "r605" ] }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "presentation": [ "http://www.topbuild.com/role/DisclosureNetIncomePerShareAntiDilutiveCommonStockEquivalentsDetails" ], "lang": { "en-us": { "role": { "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount", "verboseLabel": "Total anti-dilutive common stock equivalents", "documentation": "Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented." } } }, "auth_ref": [ "r204" ] }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis", "presentation": [ "http://www.topbuild.com/role/DisclosureNetIncomePerShareAntiDilutiveCommonStockEquivalentsDetails" ], "lang": { "en-us": { "role": { "label": "Antidilutive Securities [Axis]", "documentation": "Information by type of antidilutive security." } } }, "auth_ref": [ "r27" ] }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems", "presentation": [ "http://www.topbuild.com/role/DisclosureNetIncomePerShareAntiDilutiveCommonStockEquivalentsDetails" ], "lang": { "en-us": { "role": { "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]", "terseLabel": "Anti-dilutive common stock equivalents", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_AntidilutiveSecuritiesNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AntidilutiveSecuritiesNameDomain", "presentation": [ "http://www.topbuild.com/role/DisclosureNetIncomePerShareAntiDilutiveCommonStockEquivalentsDetails" ], "lang": { "en-us": { "role": { "label": "Antidilutive Securities, Name [Domain]", "documentation": "Incremental common shares attributable to securities that were not included in diluted earnings per share (EPS) because to do so would increase EPS amounts or decrease loss per share amounts for the period presented." } } }, "auth_ref": [ "r27" ] }, "us-gaap_Assets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "Assets", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/DisclosureSegmentInformationDetails", "http://www.topbuild.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Assets", "terseLabel": "Total Assets", "totalLabel": "Total assets", "documentation": "Amount of asset recognized for present right to economic benefit." } } }, "auth_ref": [ "r102", "r113", "r152", "r178", "r208", "r214", "r232", "r236", "r245", "r289", "r290", "r292", "r293", "r294", "r295", "r296", "r298", "r299", "r411", "r415", "r443", "r479", "r551", "r598", "r599", "r638", "r657", "r807", "r808", "r855" ] }, "us-gaap_AssetsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AssetsAbstract", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Assets [Abstract]", "terseLabel": "ASSETS" } } }, "auth_ref": [] }, "us-gaap_AssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AssetsCurrent", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Assets, Current", "totalLabel": "Total current assets", "documentation": "Amount of asset recognized for present right to economic benefit, classified as current." } } }, "auth_ref": [ "r146", "r160", "r178", "r245", "r289", "r290", "r292", "r293", "r294", "r295", "r296", "r298", "r299", "r411", "r415", "r443", "r638", "r807", "r808", "r855" ] }, "us-gaap_AssetsCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AssetsCurrentAbstract", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Assets, Current [Abstract]", "terseLabel": "Current assets:" } } }, "auth_ref": [] }, "ecd_AwardExrcPrice": { "xbrltype": "perShareItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardExrcPrice", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Exercise Price", "terseLabel": "Exercise Price" } } }, "auth_ref": [ "r729" ] }, "ecd_AwardGrantDateFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardGrantDateFairValue", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Grant Date Fair Value", "terseLabel": "Fair Value as of Grant Date" } } }, "auth_ref": [ "r730" ] }, "ecd_AwardTmgDiscLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardTmgDiscLineItems", "lang": { "en-us": { "role": { "label": "Award Timing Disclosures [Line Items]", "terseLabel": "Award Timing Disclosures" } } }, "auth_ref": [ "r725" ] }, "ecd_AwardTmgHowMnpiCnsdrdTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardTmgHowMnpiCnsdrdTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Timing, How MNPI Considered [Text Block]", "terseLabel": "Award Timing, How MNPI Considered" } } }, "auth_ref": [ "r725" ] }, "ecd_AwardTmgMethodTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardTmgMethodTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Timing Method [Text Block]", "terseLabel": "Award Timing Method" } } }, "auth_ref": [ "r725" ] }, "ecd_AwardTmgMnpiCnsdrdFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardTmgMnpiCnsdrdFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Timing MNPI Considered [Flag]", "terseLabel": "Award Timing MNPI Considered" } } }, "auth_ref": [ "r725" ] }, "ecd_AwardTmgMnpiDiscTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardTmgMnpiDiscTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Timing MNPI Disclosure [Text Block]", "terseLabel": "Award Timing MNPI Disclosure" } } }, "auth_ref": [ "r725" ] }, "ecd_AwardTmgPredtrmndFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardTmgPredtrmndFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Timing Predetermined [Flag]", "terseLabel": "Award Timing Predetermined" } } }, "auth_ref": [ "r725" ] }, "us-gaap_AwardTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AwardTypeAxis", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails", "http://www.topbuild.com/role/DisclosureShareBasedCompensationTables", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Type [Axis]", "terseLabel": "Award Type", "documentation": "Information by type of award under share-based payment arrangement." } } }, "auth_ref": [ "r351", "r352", "r353", "r354", "r355", "r356", "r357", "r358", "r359", "r360", "r361", "r362", "r363", "r364", "r365", "r366", "r367", "r368", "r369", "r370", "r371", "r372", "r373", "r374", "r375", "r376" ] }, "ecd_AwardUndrlygSecuritiesAmt": { "xbrltype": "decimalItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardUndrlygSecuritiesAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Underlying Securities Amount", "terseLabel": "Underlying Securities" } } }, "auth_ref": [ "r728" ] }, "ecd_AwardsCloseToMnpiDiscIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardsCloseToMnpiDiscIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Awards Close in Time to MNPI Disclosures, Individual Name", "terseLabel": "Name" } } }, "auth_ref": [ "r727" ] }, "ecd_AwardsCloseToMnpiDiscTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardsCloseToMnpiDiscTable", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Awards Close in Time to MNPI Disclosures [Table]", "terseLabel": "Awards Close in Time to MNPI Disclosures" } } }, "auth_ref": [ "r726" ] }, "ecd_AwardsCloseToMnpiDiscTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardsCloseToMnpiDiscTableTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Awards Close in Time to MNPI Disclosures [Table Text Block]", "terseLabel": "Awards Close in Time to MNPI Disclosures, Table" } } }, "auth_ref": [ "r726" ] }, "us-gaap_BalanceSheetLocationAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BalanceSheetLocationAxis", "presentation": [ "http://www.topbuild.com/role/DisclosureRevenueRecognitionOtherDetails" ], "lang": { "en-us": { "role": { "label": "Balance Sheet Location [Axis]", "documentation": "Information by location in statement of financial position where disaggregated cumulative balance has been reported." } } }, "auth_ref": [ "r279", "r865", "r866" ] }, "us-gaap_BalanceSheetLocationDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BalanceSheetLocationDomain", "presentation": [ "http://www.topbuild.com/role/DisclosureRevenueRecognitionOtherDetails" ], "lang": { "en-us": { "role": { "label": "Balance Sheet Location [Domain]", "documentation": "Location in statement of financial position where disaggregated cumulative balance has been reported." } } }, "auth_ref": [ "r50", "r51", "r279", "r865", "r866" ] }, "bld_BaseRateBorrowingsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "BaseRateBorrowingsMember", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtKeyTermsOfCreditAgreementDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information regarding Base Rate borrowings.", "label": "Base Rate Borrowings", "terseLabel": "Base Rate Borrowings" } } }, "auth_ref": [] }, "us-gaap_BasisOfAccountingPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BasisOfAccountingPolicyPolicyTextBlock", "presentation": [ "http://www.topbuild.com/role/DisclosureAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Basis of Accounting, Policy [Policy Text Block]", "terseLabel": "Financial Statement Presentation", "documentation": "Disclosure of accounting policy for basis of accounting, or basis of presentation, used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS)." } } }, "auth_ref": [] }, "bld_BrabbleMember": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "BrabbleMember", "presentation": [ "http://www.topbuild.com/role/DisclosureBusinessCombinationsSummaryDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to Brabble, a residential and light commercial insulation business.", "label": "Brabble [Member]", "terseLabel": "Brabble" } } }, "auth_ref": [] }, "us-gaap_BusinessAcquisitionAcquireeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessAcquisitionAcquireeDomain", "presentation": [ "http://www.topbuild.com/role/DisclosureBusinessCombinationsIntangiblesDetails", "http://www.topbuild.com/role/DisclosureBusinessCombinationsSummaryDetails" ], "lang": { "en-us": { "role": { "label": "Business Acquisition, Acquiree [Domain]", "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." } } }, "auth_ref": [ "r267", "r268", "r269", "r270", "r271", "r406", "r622", "r623" ] }, "us-gaap_BusinessAcquisitionAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessAcquisitionAxis", "presentation": [ "http://www.topbuild.com/role/DisclosureBusinessCombinationsIntangiblesDetails", "http://www.topbuild.com/role/DisclosureBusinessCombinationsSummaryDetails" ], "lang": { "en-us": { "role": { "label": "Business Acquisition [Axis]", "documentation": "Information by business combination or series of individually immaterial business combinations." } } }, "auth_ref": [ "r44", "r45", "r267", "r268", "r269", "r270", "r271", "r406", "r622", "r623" ] }, "us-gaap_BusinessAcquisitionLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessAcquisitionLineItems", "presentation": [ "http://www.topbuild.com/role/DisclosureBusinessCombinationsSummaryDetails" ], "lang": { "en-us": { "role": { "label": "Business Acquisition [Line Items]", "terseLabel": "Business Combinations", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r406" ] }, "us-gaap_BusinessAcquisitionPurchasePriceAllocationGoodwillExpectedTaxDeductibleAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessAcquisitionPurchasePriceAllocationGoodwillExpectedTaxDeductibleAmount", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/DisclosureBusinessCombinationsSummaryDetails" ], "lang": { "en-us": { "role": { "label": "Business Acquisition, Goodwill, Expected Tax Deductible Amount", "terseLabel": "Goodwill expected to be deducted for income tax purposes", "documentation": "The amount of goodwill arising from a business combination that is expected to be deductible for tax purposes." } } }, "auth_ref": [ "r49" ] }, "us-gaap_BusinessCombinationAcquisitionRelatedCosts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessCombinationAcquisitionRelatedCosts", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/DisclosureBusinessCombinationsSummaryDetails" ], "lang": { "en-us": { "role": { "label": "Business Combination, Acquisition Related Costs", "terseLabel": "Acquisition related costs", "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." } } }, "auth_ref": [ "r43" ] }, "us-gaap_BusinessCombinationConsiderationTransferred1": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessCombinationConsiderationTransferred1", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/DisclosureBusinessCombinationsSummaryDetails" ], "lang": { "en-us": { "role": { "label": "Business Combination, Consideration Transferred", "terseLabel": "Purchase price", "documentation": "Amount of consideration transferred, consisting of acquisition-date fair value of assets transferred by the acquirer, liabilities incurred by the acquirer, and equity interest issued by the acquirer." } } }, "auth_ref": [ "r0", "r1", "r10" ] }, "us-gaap_BusinessCombinationDescriptionAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessCombinationDescriptionAbstract", "presentation": [ "http://www.topbuild.com/role/DisclosureBusinessCombinationsSummaryDetails" ], "lang": { "en-us": { "role": { "label": "Business Combination, Description [Abstract]", "verboseLabel": "Summary of businesses acquired:" } } }, "auth_ref": [] }, "us-gaap_BusinessCombinationDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessCombinationDisclosureTextBlock", "presentation": [ "http://www.topbuild.com/role/DisclosureBusinessCombinations" ], "lang": { "en-us": { "role": { "label": "Business Combination Disclosure [Text Block]", "terseLabel": "Business Combinations", "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)." } } }, "auth_ref": [ "r101", "r407" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/DisclosureBusinessCombinationsIntangiblesDetails", "http://www.topbuild.com/role/DisclosureBusinessCombinationsSummaryDetails" ], "lang": { "en-us": { "role": { "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Finite-Lived Intangibles", "terseLabel": "Intangible assets", "verboseLabel": "Estimated Fair Value", "documentation": "The amount of identifiable intangible assets recognized as of the acquisition date." } } }, "auth_ref": [ "r46", "r47" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNetAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNetAbstract", "presentation": [ "http://www.topbuild.com/role/DisclosureBusinessCombinationsSummaryDetails" ], "lang": { "en-us": { "role": { "label": "Business Combination, Recognized Identifiable Assets Acquired, Goodwill, and Liabilities Assumed, Net [Abstract]", "verboseLabel": "Estimated fair values" } } }, "auth_ref": [] }, "bld_BusinessCombinationTerminationFee": { "xbrltype": "monetaryItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "BusinessCombinationTerminationFee", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/DisclosureSegmentInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "The termination fee required to be paid to the seller per the terms of the purchase agreement in a business combination.", "label": "Business Combination Termination Fee", "verboseLabel": "Acquisition termination fee" } } }, "auth_ref": [] }, "us-gaap_BusinessCombinationsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessCombinationsAbstract", "lang": { "en-us": { "role": { "label": "Business Combinations" } } }, "auth_ref": [] }, "us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessDescriptionAndBasisOfPresentationTextBlock", "presentation": [ "http://www.topbuild.com/role/DisclosureBasisOfPresentation" ], "lang": { "en-us": { "role": { "label": "Business Description and Basis of Presentation [Text Block]", "terseLabel": "Basis of Presentation", "documentation": "The entire disclosure for the business description and basis of presentation concepts. Business description describes the nature and type of organization including but not limited to organizational structure as may be applicable to holding companies, parent and subsidiary relationships, business divisions, business units, business segments, affiliates and information about significant ownership of the reporting entity. Basis of presentation describes the underlying basis used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS)." } } }, "auth_ref": [ "r53", "r92", "r93" ] }, "us-gaap_CapitalExpendituresIncurredButNotYetPaid": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CapitalExpendituresIncurredButNotYetPaid", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Capital Expenditures Incurred but Not yet Paid", "terseLabel": "Accruals for property and equipment", "documentation": "Future cash outflow to pay for purchases of fixed assets that have occurred." } } }, "auth_ref": [ "r24", "r25", "r26" ] }, "us-gaap_CashAndCashEquivalentsAtCarryingValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CashAndCashEquivalentsAtCarryingValue", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Cash and Cash Equivalents, at Carrying Value", "terseLabel": "Cash and cash equivalents", "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation." } } }, "auth_ref": [ "r23", "r148", "r589" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents", "periodEndLabel": "Cash and cash equivalents- End of period", "periodStartLabel": "Cash and cash equivalents- Beginning of period", "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r23", "r89", "r176" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Cash and Cash Equivalents, Period Increase (Decrease)", "totalLabel": "Net (decrease) increase in cash and cash equivalents", "documentation": "Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r2", "r89" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffectAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffectAbstract", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Cash and Cash Equivalents, Period Increase (Decrease) [Abstract]", "terseLabel": "Cash and Cash Equivalents" } } }, "auth_ref": [] }, "bld_ChangeInControlScenarioMember": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "ChangeInControlScenarioMember", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails" ], "lang": { "en-us": { "role": { "documentation": "The scenario representing a change in control.", "label": "Change in Control Scenario", "terseLabel": "Change in Control Scenario" } } }, "auth_ref": [] }, "ecd_ChangedPeerGroupFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ChangedPeerGroupFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Changed Peer Group, Footnote [Text Block]", "terseLabel": "Changed Peer Group, Footnote" } } }, "auth_ref": [ "r705" ] }, "ecd_ChngInFrValAsOfVstngDtOfPrrYrEqtyAwrdsVstdInCvrdYrMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ChngInFrValAsOfVstngDtOfPrrYrEqtyAwrdsVstdInCvrdYrMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Change in Fair Value as of Vesting Date of Prior Year Equity Awards Vested in Covered Year [Member]", "terseLabel": "Change in Fair Value as of Vesting Date of Prior Year Equity Awards Vested in Covered Year" } } }, "auth_ref": [ "r702" ] }, "ecd_ChngInFrValOfOutsdngAndUnvstdEqtyAwrdsGrntdInPrrYrsMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ChngInFrValOfOutsdngAndUnvstdEqtyAwrdsGrntdInPrrYrsMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Year-over-Year Change in Fair Value of Equity Awards Granted in Prior Years That are Outstanding and Unvested [Member]", "terseLabel": "Year-over-Year Change in Fair Value of Equity Awards Granted in Prior Years That are Outstanding and Unvested" } } }, "auth_ref": [ "r700" ] }, "dei_CityAreaCode": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "CityAreaCode", "presentation": [ "http://www.topbuild.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "City Area Code", "documentation": "Area code of city" } } }, "auth_ref": [] }, "us-gaap_ClassOfTreasuryStockTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ClassOfTreasuryStockTable", "presentation": [ "http://www.topbuild.com/role/DisclosureShareRepurchaseProgramDetails" ], "lang": { "en-us": { "role": { "label": "Class of Treasury Stock [Table]", "documentation": "Disclosure of information about treasury stock, including, but not limited to, average cost per share, description of share repurchase program, shares repurchased, shares held for each class of treasury stock." } } }, "auth_ref": [ "r35", "r36", "r37", "r38" ] }, "ecd_CoSelectedMeasureAmt": { "xbrltype": "decimalItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "CoSelectedMeasureAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Company Selected Measure Amount", "terseLabel": "Company Selected Measure Amount" } } }, "auth_ref": [ "r706" ] }, "ecd_CoSelectedMeasureName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "CoSelectedMeasureName", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Company Selected Measure Name", "terseLabel": "Company Selected Measure Name" } } }, "auth_ref": [ "r706" ] }, "bld_CommercialAndIndustrialMember": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "CommercialAndIndustrialMember", "presentation": [ "http://www.topbuild.com/role/DisclosureRevenueRecognitionDisaggregationDetails" ], "lang": { "en-us": { "role": { "documentation": "Information pertaining to the commercial and industrial market.", "label": "Commercial and Industrial", "terseLabel": "Commercial and Industrial" } } }, "auth_ref": [] }, "bld_CommercialInsulationBusinessPciMember": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "CommercialInsulationBusinessPciMember", "presentation": [ "http://www.topbuild.com/role/DisclosureBusinessCombinationsSummaryDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to Commercial Insulation Business PCI.", "label": "Commercial Insulation Business PCI [Member]", "terseLabel": "PCI" } } }, "auth_ref": [] }, "us-gaap_CommitmentsAndContingencies": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommitmentsAndContingencies", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Commitments and Contingencies", "terseLabel": "Commitments and contingencies", "documentation": "Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur." } } }, "auth_ref": [ "r63", "r105", "r481", "r538" ] }, "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommitmentsAndContingenciesDisclosureAbstract", "lang": { "en-us": { "role": { "label": "Other Commitments and Contingencies" } } }, "auth_ref": [] }, "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommitmentsAndContingenciesDisclosureTextBlock", "presentation": [ "http://www.topbuild.com/role/DisclosureOtherCommitmentsAndContingencies" ], "lang": { "en-us": { "role": { "label": "Commitments and Contingencies Disclosure [Text Block]", "terseLabel": "Other Commitments and Contingencies", "documentation": "The entire disclosure for commitments and contingencies." } } }, "auth_ref": [ "r95", "r282", "r283", "r584", "r797", "r802" ] }, "us-gaap_CommonStockMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockMember", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfChangesInShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Common Stock", "terseLabel": "Common Stock", "documentation": "Stock that is subordinate to all other stock of the issuer." } } }, "auth_ref": [ "r647", "r648", "r649", "r651", "r652", "r653", "r654", "r759", "r760", "r763", "r843", "r895", "r896" ] }, "us-gaap_CommonStockParOrStatedValuePerShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockParOrStatedValuePerShare", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedBalanceSheetsParenthetical", "http://www.topbuild.com/role/StatementConsolidatedStatementsOfChangesInShareholdersEquityParenthetical" ], "lang": { "en-us": { "role": { "label": "Common Stock, Par Value (in dollars per share)", "terseLabel": "Common stock, par value (in dollars per share)", "documentation": "Face amount or stated value per share of common stock." } } }, "auth_ref": [ "r66" ] }, "us-gaap_CommonStockSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockSharesAuthorized", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Common Stock, Shares Authorized", "terseLabel": "Common stock, shares authorized", "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws." } } }, "auth_ref": [ "r66", "r539" ] }, "us-gaap_CommonStockSharesIssued": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockSharesIssued", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Common Stock, Shares, Issued", "terseLabel": "Common stock, shares issued", "documentation": "Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury." } } }, "auth_ref": [ "r66" ] }, "us-gaap_CommonStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockSharesOutstanding", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Common Stock, Shares, Outstanding", "terseLabel": "Common stock, shares outstanding", "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation." } } }, "auth_ref": [ "r12", "r66", "r539", "r557", "r896", "r897" ] }, "us-gaap_CommonStockValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockValue", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Common Stock, Value, Issued", "verboseLabel": "Common stock, $0.01 par value: 250,000,000 shares authorized; 39,561,321 shares issued and 30,584,176 outstanding at June 30, 2024, and 39,492,037 shares issued and 31,776,039 outstanding at December 31, 2023", "documentation": "Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity." } } }, "auth_ref": [ "r66", "r483", "r638" ] }, "ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "CompActuallyPaidVsCoSelectedMeasureTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Compensation Actually Paid vs. Company Selected Measure [Text Block]", "terseLabel": "Compensation Actually Paid vs. Company Selected Measure" } } }, "auth_ref": [ "r711" ] }, "ecd_CompActuallyPaidVsNetIncomeTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "CompActuallyPaidVsNetIncomeTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Compensation Actually Paid vs. Net Income [Text Block]", "terseLabel": "Compensation Actually Paid vs. Net Income" } } }, "auth_ref": [ "r710" ] }, "ecd_CompActuallyPaidVsOtherMeasureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "CompActuallyPaidVsOtherMeasureTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Compensation Actually Paid vs. Other Measure [Text Block]", "terseLabel": "Compensation Actually Paid vs. Other Measure" } } }, "auth_ref": [ "r712" ] }, "ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "CompActuallyPaidVsTotalShareholderRtnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Compensation Actually Paid vs. Total Shareholder Return [Text Block]", "terseLabel": "Compensation Actually Paid vs. Total Shareholder Return" } } }, "auth_ref": [ "r709" ] }, "us-gaap_ComprehensiveIncomeNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ComprehensiveIncomeNetOfTax", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent", "totalLabel": "Comprehensive income", "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners." } } }, "auth_ref": [ "r21", "r163", "r165", "r170", "r476", "r491", "r492" ] }, "srt_ConsolidationItemsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "ConsolidationItemsAxis", "presentation": [ "http://www.topbuild.com/role/DisclosureRevenueRecognitionDisaggregationDetails", "http://www.topbuild.com/role/DisclosureSegmentInformationDetails" ], "lang": { "en-us": { "role": { "label": "Consolidation Items [Axis]", "documentation": "Information by components, eliminations, non-segment corporate-level activity and reconciling items used in consolidating a parent entity and its subsidiaries or its operating segments." } } }, "auth_ref": [ "r111", "r118", "r130", "r131", "r132", "r133", "r134", "r135", "r136", "r137", "r138", "r180", "r208", "r216", "r230", "r231", "r232", "r233", "r234", "r236", "r237", "r238", "r289", "r290", "r291", "r292", "r294", "r295", "r296", "r297", "r298", "r598", "r599", "r747", "r748", "r807", "r808" ] }, "srt_ConsolidationItemsDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "ConsolidationItemsDomain", "presentation": [ "http://www.topbuild.com/role/DisclosureRevenueRecognitionDisaggregationDetails", "http://www.topbuild.com/role/DisclosureSegmentInformationDetails" ], "lang": { "en-us": { "role": { "label": "Consolidation Items [Domain]", "documentation": "Components, elimination, non-segment corporate-level activity and reconciling items used in consolidating a parent entity and its subsidiaries or its operating segments." } } }, "auth_ref": [ "r111", "r118", "r130", "r131", "r132", "r133", "r134", "r135", "r136", "r137", "r138", "r180", "r208", "r216", "r230", "r231", "r232", "r233", "r234", "r236", "r237", "r238", "r289", "r290", "r291", "r292", "r294", "r295", "r296", "r297", "r298", "r598", "r599", "r747", "r748", "r807", "r808" ] }, "us-gaap_ConstructionContractorReceivableRetainage": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ConstructionContractorReceivableRetainage", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/DisclosureRevenueRecognitionOtherDetails" ], "lang": { "en-us": { "role": { "label": "Construction Contractor, Receivable, Retainage", "terseLabel": "Retainage receivables", "documentation": "Amount of right to consideration in exchange for good or service transferred to customer withheld under retainage provision in long-term contract or program when right to consideration is unconditional." } } }, "auth_ref": [ "r156", "r469" ] }, "us-gaap_ContractWithCustomerAssetAndLiabilityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ContractWithCustomerAssetAndLiabilityAbstract", "presentation": [ "http://www.topbuild.com/role/DisclosureRevenueRecognitionOtherDetails" ], "lang": { "en-us": { "role": { "label": "Contract with Customer, Asset and Liability [Abstract]", "terseLabel": "Contract assets and contract liabilities with customers:" } } }, "auth_ref": [] }, "us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ContractWithCustomerAssetAndLiabilityTableTextBlock", "presentation": [ "http://www.topbuild.com/role/DisclosureRevenueRecognitionTables" ], "lang": { "en-us": { "role": { "label": "Contract with Customer, Asset and Liability [Table Text Block]", "verboseLabel": "Schedule of contract assets and contract liabilities with customers", "documentation": "Tabular disclosure of receivable, contract asset, and contract liability from contract with customer. Includes, but is not limited to, change in contract asset and contract liability." } } }, "auth_ref": [ "r813" ] }, "us-gaap_ContractWithCustomerAssetNetCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ContractWithCustomerAssetNetCurrent", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/DisclosureRevenueRecognitionOtherDetails" ], "lang": { "en-us": { "role": { "label": "Contract with Customer, Asset, Net, Current", "terseLabel": "Receivables, unbilled", "documentation": "Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time, classified as current." } } }, "auth_ref": [ "r322", "r324", "r335" ] }, "us-gaap_ContractWithCustomerAssetNetCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ContractWithCustomerAssetNetCurrentAbstract", "presentation": [ "http://www.topbuild.com/role/DisclosureRevenueRecognitionOtherDetails" ], "lang": { "en-us": { "role": { "label": "Contract with Customer, Asset, Net, Current [Abstract]", "terseLabel": "Contract Assets" } } }, "auth_ref": [] }, "us-gaap_ContractWithCustomerLiabilityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ContractWithCustomerLiabilityAbstract", "presentation": [ "http://www.topbuild.com/role/DisclosureRevenueRecognitionOtherDetails" ], "lang": { "en-us": { "role": { "label": "Contract with Customer, Liability [Abstract]", "terseLabel": "Contract Liabilities" } } }, "auth_ref": [] }, "us-gaap_ContractWithCustomerLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ContractWithCustomerLiabilityCurrent", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/DisclosureAccruedLiabilitiesDetails", "http://www.topbuild.com/role/DisclosureRevenueRecognitionOtherDetails" ], "lang": { "en-us": { "role": { "label": "Contract with Customer, Liability, Current", "terseLabel": "Deferred revenue", "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current." } } }, "auth_ref": [ "r322", "r323", "r335" ] }, "us-gaap_CorporateNonSegmentMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CorporateNonSegmentMember", "presentation": [ "http://www.topbuild.com/role/DisclosureSegmentInformationDetails" ], "lang": { "en-us": { "role": { "label": "Corporate", "documentation": "Corporate headquarters or functional department that may not earn revenues or may earn revenues that are only incidental to the activities of the entity and is not considered an operating segment." } } }, "auth_ref": [ "r16", "r231", "r232", "r233", "r234", "r237", "r768" ] }, "us-gaap_CostOfGoodsAndServicesSold": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CostOfGoodsAndServicesSold", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "label": "Cost of Goods and Services Sold", "terseLabel": "Cost of sales", "documentation": "The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities." } } }, "auth_ref": [ "r77", "r78", "r470" ] }, "dei_CoverAbstract": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "CoverAbstract", "lang": { "en-us": { "role": { "label": "Cover page.", "documentation": "Cover page." } } }, "auth_ref": [] }, "us-gaap_CreditFacilityAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CreditFacilityAxis", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtKeyTermsOfCreditAgreementDetails" ], "lang": { "en-us": { "role": { "label": "Credit Facility [Axis]", "documentation": "Information by type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing." } } }, "auth_ref": [ "r288", "r805" ] }, "us-gaap_CreditFacilityDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CreditFacilityDomain", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtKeyTermsOfCreditAgreementDetails" ], "lang": { "en-us": { "role": { "label": "Credit Facility [Domain]", "documentation": "Type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing." } } }, "auth_ref": [ "r288", "r805", "r806" ] }, "dei_CurrentFiscalYearEndDate": { "xbrltype": "gMonthDayItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "CurrentFiscalYearEndDate", "presentation": [ "http://www.topbuild.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Current Fiscal Year End Date", "documentation": "End date of current fiscal year in the format --MM-DD." } } }, "auth_ref": [] }, "us-gaap_CustomerRelationshipsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CustomerRelationshipsMember", "presentation": [ "http://www.topbuild.com/role/DisclosureBusinessCombinationsIntangiblesDetails" ], "lang": { "en-us": { "role": { "label": "Customer relationships", "terseLabel": "Customer relationships", "documentation": "Customer relationship that exists between an entity and its customer, for example, but not limited to, tenant relationships." } } }, "auth_ref": [ "r48", "r787", "r788", "r789", "r790", "r791", "r792", "r794", "r795" ] }, "bld_DebitInstrumentApplicableMarginBasedOnTotalLeverageRatio": { "xbrltype": "percentItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "DebitInstrumentApplicableMarginBasedOnTotalLeverageRatio", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtKeyTermsOfCreditAgreementDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the applicable margin based on the total leverage ratio per the terms of the credit agreement.", "label": "Debit Instrument Applicable Margin Based on Total Leverage Ratio", "terseLabel": "Applicable margin based on total leverage ratio" } } }, "auth_ref": [] }, "us-gaap_DebtDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtDisclosureAbstract", "lang": { "en-us": { "role": { "label": "Long-Term Debt" } } }, "auth_ref": [] }, "us-gaap_DebtInstrumentAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentAxis", "presentation": [ "http://www.topbuild.com/role/DisclosureFairValueMeasurementsDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtKeyTermsOfCreditAgreementDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtOtherDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails" ], "lang": { "en-us": { "role": { "label": "Debt Instrument [Axis]", "documentation": "Information by type of debt instrument, including, but not limited to, draws against credit facilities." } } }, "auth_ref": [ "r18", "r56", "r57", "r103", "r104", "r180", "r300", "r301", "r302", "r303", "r304", "r305", "r306", "r307", "r308", "r309", "r310", "r311", "r312", "r313", "r314", "r315", "r606", "r607", "r608", "r609", "r610", "r636", "r756", "r798", "r799", "r800", "r852", "r854" ] }, "us-gaap_DebtInstrumentBasisSpreadOnVariableRate1": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentBasisSpreadOnVariableRate1", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtKeyTermsOfCreditAgreementDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Basis Spread on Variable Rate", "terseLabel": "Basis spread", "documentation": "Percentage points added to the reference rate to compute the variable rate on the debt instrument." } } }, "auth_ref": [] }, "us-gaap_DebtInstrumentCarryingAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentCarryingAmount", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/DisclosureFairValueMeasurementsDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtReconciliationDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtScheduleOfDebtMaturityDetails" ], "lang": { "en-us": { "role": { "label": "Long-term Debt, Gross", "terseLabel": "Amount outstanding", "totalLabel": "Total", "verboseLabel": "Long-term debt", "documentation": "Amount, before unamortized (discount) premium and debt issuance costs, of long-term debt. Includes, but is not limited to, notes payable, bonds payable, commercial loans, mortgage loans, convertible debt, subordinated debt and other types of debt." } } }, "auth_ref": [ "r18", "r104", "r317" ] }, "bld_DebtInstrumentConditionalRedemptionThresholdPercentageOfAggregatePrincipalAmountOriginallyIssuedRemainsOutstanding": { "xbrltype": "percentItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "DebtInstrumentConditionalRedemptionThresholdPercentageOfAggregatePrincipalAmountOriginallyIssuedRemainsOutstanding", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails" ], "lang": { "en-us": { "role": { "documentation": "Threshold percentage of aggregate principal amount of the debt instrument originally issued should remain outstanding after redemption under the debt instrument arrangement.", "label": "Debt Instrument, Conditional Redemption, Threshold Percentage Of Aggregate Principal Amount Originally Issued Remains Outstanding", "terseLabel": "Debt instrument, conditional redemption, threshold percentage of aggregate principal amount originally issued remains outstanding" } } }, "auth_ref": [] }, "bld_DebtInstrumentCovenantMinimumInterestCoverageRatio": { "xbrltype": "pureItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "DebtInstrumentCovenantMinimumInterestCoverageRatio", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtOtherDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the minimum interest coverage ratio allowed under the terms of the credit agreement's covenants.", "label": "Debt Instrument Covenant Minimum Interest Coverage Ratio", "terseLabel": "Minimum Interest Coverage Ratio" } } }, "auth_ref": [] }, "bld_DebtInstrumentCovenantNetLeverageRatio": { "xbrltype": "pureItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "DebtInstrumentCovenantNetLeverageRatio", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtOtherDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the ratio of total debt (less certain cash) to consolidated adjusted earnings before, interest, taxes, depreciation and amortization allowed under the terms of the credit agreement's covenants.", "label": "Debt Instrument Covenant Net Leverage Ratio", "terseLabel": "Maximum Net Leverage Ratio" } } }, "auth_ref": [] }, "us-gaap_DebtInstrumentFaceAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentFaceAmount", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtKeyTermsOfCreditAgreementDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Face Amount", "terseLabel": "Principal amount of debt", "documentation": "Face (par) amount of debt instrument at time of issuance." } } }, "auth_ref": [ "r300", "r455", "r456", "r607", "r608", "r636" ] }, "us-gaap_DebtInstrumentFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentFairValue", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/DisclosureFairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Fair Value Disclosure", "terseLabel": "Fair value", "documentation": "Fair value portion of debt instrument payable, including, but not limited to, notes payable and loans payable." } } }, "auth_ref": [ "r308", "r442", "r607", "r608", "r844", "r845", "r846", "r847", "r848" ] }, "us-gaap_DebtInstrumentInterestRateEffectivePercentage": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentInterestRateEffectivePercentage", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtKeyTermsOfCreditAgreementDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Interest Rate, Effective Percentage", "terseLabel": "Interest rate", "documentation": "Effective interest rate for the funds borrowed under the debt agreement considering interest compounding and original issue discount or premium." } } }, "auth_ref": [ "r59", "r319", "r455", "r456", "r636" ] }, "bld_DebtInstrumentInterestRatePercentageFloor": { "xbrltype": "percentItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "DebtInstrumentInterestRatePercentageFloor", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtKeyTermsOfCreditAgreementDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails" ], "lang": { "en-us": { "role": { "documentation": "The debt instrument percentage rate floor.", "label": "Debt Instrument Interest Rate Percentage, Floor", "terseLabel": "Interest rate floor (as a percent)" } } }, "auth_ref": [] }, "us-gaap_DebtInstrumentInterestRateStatedPercentage": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentInterestRateStatedPercentage", "presentation": [ "http://www.topbuild.com/role/DisclosureFairValueMeasurementsDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtOtherDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtReconciliationDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtRevolvingFacilityDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Interest Rate, Stated Percentage", "terseLabel": "Interest rate (as a percent)", "documentation": "Contractual interest rate for funds borrowed, under the debt agreement." } } }, "auth_ref": [ "r59", "r301" ] }, "us-gaap_DebtInstrumentLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentLineItems", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtKeyTermsOfCreditAgreementDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtOtherDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtReconciliationDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtRevolvingFacilityDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtScheduleOfDebtMaturityDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails" ], "lang": { "en-us": { "role": { "label": "Debt Instrument [Line Items]", "terseLabel": "Long-Term Debt", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r180", "r300", "r301", "r302", "r303", "r304", "r305", "r306", "r307", "r308", "r309", "r310", "r311", "r312", "r313", "r314", "r315", "r316", "r606", "r607", "r608", "r609", "r610", "r636", "r756", "r852", "r854" ] }, "us-gaap_DebtInstrumentMaturityDate": { "xbrltype": "dateItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentMaturityDate", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtKeyTermsOfCreditAgreementDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Maturity Date", "terseLabel": "Scheduled maturity date", "documentation": "Date when the debt instrument is scheduled to be fully repaid, in YYYY-MM-DD format." } } }, "auth_ref": [ "r154", "r606", "r846", "r847" ] }, "us-gaap_DebtInstrumentNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentNameDomain", "presentation": [ "http://www.topbuild.com/role/DisclosureFairValueMeasurementsDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtKeyTermsOfCreditAgreementDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtOtherDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Name [Domain]", "documentation": "The name for the particular debt instrument or borrowing that distinguishes it from other debt instruments or borrowings, including draws against credit facilities." } } }, "auth_ref": [ "r18", "r180", "r300", "r301", "r302", "r303", "r304", "r305", "r306", "r307", "r308", "r309", "r310", "r311", "r312", "r313", "r314", "r315", "r606", "r607", "r608", "r609", "r610", "r636", "r756", "r798", "r799", "r800", "r852", "r854" ] }, "us-gaap_DebtInstrumentRedemptionPeriodAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentRedemptionPeriodAxis", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Redemption, Period [Axis]", "documentation": "Information by period of debt redemption feature under terms of debt agreement." } } }, "auth_ref": [ "r109" ] }, "us-gaap_DebtInstrumentRedemptionPeriodDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentRedemptionPeriodDomain", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Redemption, Period [Domain]", "documentation": "Period as defined under terms of the debt agreement for debt redemption features." } } }, "auth_ref": [ "r109" ] }, "us-gaap_DebtInstrumentRedemptionPeriodFiveMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentRedemptionPeriodFiveMember", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails" ], "lang": { "en-us": { "role": { "label": "On October 15, 2029 and thereafter", "documentation": "Period five representing fifth most current period of debt redemption features under terms of the debt agreement." } } }, "auth_ref": [ "r109" ] }, "us-gaap_DebtInstrumentRedemptionPeriodFourMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentRedemptionPeriodFourMember", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails" ], "lang": { "en-us": { "role": { "label": "On or after October 15, 2028", "documentation": "Period four representing fourth most current period of debt redemption features under terms of the debt agreement." } } }, "auth_ref": [ "r109" ] }, "bld_DebtInstrumentRedemptionPeriodSevenMember": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "DebtInstrumentRedemptionPeriodSevenMember", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails" ], "lang": { "en-us": { "role": { "documentation": "Period seven representing debt redemption features under terms of the debt agreement.", "label": "Prior to October 15, 2024" } } }, "auth_ref": [] }, "bld_DebtInstrumentRedemptionPeriodSixMember": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "DebtInstrumentRedemptionPeriodSixMember", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails" ], "lang": { "en-us": { "role": { "documentation": "Period six representing debt redemption features under terms of the debt agreement.", "label": "Prior to October 15, 2026" } } }, "auth_ref": [] }, "us-gaap_DebtInstrumentRedemptionPeriodThreeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentRedemptionPeriodThreeMember", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails" ], "lang": { "en-us": { "role": { "label": "On or after October 15, 2027", "documentation": "Period three representing third most current period of debt redemption features under terms of the debt agreement." } } }, "auth_ref": [ "r109" ] }, "us-gaap_DebtInstrumentRedemptionPeriodTwoMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentRedemptionPeriodTwoMember", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails" ], "lang": { "en-us": { "role": { "label": "On or after October 15, 2026", "documentation": "Period two representing second most current period of debt redemption features under terms of the debt agreement." } } }, "auth_ref": [ "r109" ] }, "bld_DebtInstrumentRedemptionPriceBasisSpreadOnTreasuryRate": { "xbrltype": "percentItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "DebtInstrumentRedemptionPriceBasisSpreadOnTreasuryRate", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails" ], "lang": { "en-us": { "role": { "documentation": "Percentage points added to the reference rate to compute the redemption price of the debt instrument.", "label": "Debt Instrument, Redemption Price, Basis Spread on Treasury Rate", "terseLabel": "Basis spread on treasury rate" } } }, "auth_ref": [] }, "us-gaap_DebtInstrumentRedemptionPricePercentage": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentRedemptionPricePercentage", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtKeyTermsOfCreditAgreementDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Redemption Price, Percentage", "terseLabel": "Redemption price as a percentage of principal", "documentation": "Percentage price of original principal amount of debt at which debt can be redeemed by the issuer." } } }, "auth_ref": [ "r109" ] }, "us-gaap_DebtInstrumentRedemptionPricePercentageOfPrincipalAmountRedeemed": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentRedemptionPricePercentageOfPrincipalAmountRedeemed", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtKeyTermsOfCreditAgreementDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Redemption Price, Percentage of Principal Amount Redeemed", "terseLabel": "Redemption price, percentage of principal amount redeemed", "documentation": "Percentage of principal amount of debt redeemed." } } }, "auth_ref": [] }, "bld_DebtInstrumentReferenceRateMaturityPeriod": { "xbrltype": "durationItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "DebtInstrumentReferenceRateMaturityPeriod", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtKeyTermsOfCreditAgreementDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails" ], "lang": { "en-us": { "role": { "documentation": "The maturity of the reference rate.", "label": "Debt Instrument Reference Rate Maturity Period", "terseLabel": "Maturity of the reference rate" } } }, "auth_ref": [] }, "us-gaap_DebtInstrumentTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentTable", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtKeyTermsOfCreditAgreementDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtReconciliationDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtScheduleOfDebtMaturityDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Long-term Debt Instruments [Table]", "documentation": "Disclosure of information about long-term debt instrument or arrangement." } } }, "auth_ref": [ "r18", "r33", "r34", "r52", "r97", "r98", "r180", "r300", "r301", "r302", "r303", "r304", "r305", "r306", "r307", "r308", "r309", "r310", "r311", "r312", "r313", "r314", "r315", "r316", "r606", "r607", "r608", "r609", "r610", "r636", "r756", "r852", "r854" ] }, "us-gaap_DebtInstrumentTerm": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentTerm", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtKeyTermsOfCreditAgreementDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Term", "terseLabel": "Debt term", "documentation": "Period of time between issuance and maturity of debt instrument, in PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [] }, "us-gaap_DeferredFinanceCostsNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DeferredFinanceCostsNet", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtReconciliationDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Finance Costs, Net", "negatedLabel": "Unamortized debt issuance costs", "documentation": "Amount, after accumulated amortization, of debt issuance costs. Includes, but is not limited to, legal, accounting, underwriting, printing, and registration costs." } } }, "auth_ref": [ "r810", "r851", "r852", "r854" ] }, "us-gaap_DeferredIncomeTaxLiabilitiesNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DeferredIncomeTaxLiabilitiesNet", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Liabilities, Net, Noncurrent", "terseLabel": "Deferred tax liabilities, net", "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences with jurisdictional netting." } } }, "auth_ref": [ "r385", "r386", "r480" ] }, "bld_DelayedDrawTermLoanFacilityOneMember": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "DelayedDrawTermLoanFacilityOneMember", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtKeyTermsOfCreditAgreementDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the delayed draw term loan facility, one.", "label": "Delayed Draw Term Loan Facility One [Member]", "terseLabel": "Term Facility One" } } }, "auth_ref": [] }, "bld_DelayedDrawTermLoanFacilityTwoMember": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "DelayedDrawTermLoanFacilityTwoMember", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtKeyTermsOfCreditAgreementDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the delayed draw term loan facility, two.", "label": "Delayed Draw Term Loan Facility Two [Member]", "terseLabel": "Term Facility Two" } } }, "auth_ref": [] }, "us-gaap_DepreciationDepletionAndAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DepreciationDepletionAndAmortization", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Depreciation, Depletion and Amortization", "terseLabel": "Depreciation and amortization", "documentation": "The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets." } } }, "auth_ref": [ "r8", "r208", "r219", "r236", "r598", "r599" ] }, "us-gaap_DisaggregationOfRevenueLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DisaggregationOfRevenueLineItems", "presentation": [ "http://www.topbuild.com/role/DisclosureRevenueRecognitionDisaggregationDetails" ], "lang": { "en-us": { "role": { "label": "Disaggregation of Revenue [Line Items]", "terseLabel": "Revenue Recognition", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r334", "r612", "r613", "r614", "r615", "r616", "r617", "r618" ] }, "us-gaap_DisaggregationOfRevenueTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DisaggregationOfRevenueTable", "presentation": [ "http://www.topbuild.com/role/DisclosureRevenueRecognitionDisaggregationDetails" ], "lang": { "en-us": { "role": { "label": "Disaggregation of Revenue [Table]", "documentation": "Disclosure of information about disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor." } } }, "auth_ref": [ "r334", "r612", "r613", "r614", "r615", "r616", "r617", "r618" ] }, "us-gaap_DisaggregationOfRevenueTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DisaggregationOfRevenueTableTextBlock", "presentation": [ "http://www.topbuild.com/role/DisclosureRevenueRecognitionTables" ], "lang": { "en-us": { "role": { "label": "Disaggregation of Revenue [Table Text Block]", "terseLabel": "Schedule of revenues disaggregated by market and product", "documentation": "Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor." } } }, "auth_ref": [ "r814" ] }, "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensation" ], "lang": { "en-us": { "role": { "label": "Disclosure of Compensation Related Costs, Share-based Payments [Text Block]", "terseLabel": "Share-Based Compensation", "documentation": "The entire disclosure for share-based payment arrangement." } } }, "auth_ref": [ "r346", "r350", "r378", "r379", "r381", "r625" ] }, "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract", "lang": { "en-us": { "role": { "label": "Share-Based Compensation." } } }, "auth_ref": [] }, "bld_DistributionSegmentMember": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "DistributionSegmentMember", "presentation": [ "http://www.topbuild.com/role/DisclosureGoodwillAndOtherIntangiblesGoodwillDetails", "http://www.topbuild.com/role/DisclosureRevenueRecognitionDisaggregationDetails", "http://www.topbuild.com/role/DisclosureSegmentInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the distribution segment of the reporting entity.", "label": "Specialty Distribution", "terseLabel": "Specialty Distribution" } } }, "auth_ref": [] }, "dei_DocumentFiscalPeriodFocus": { "xbrltype": "fiscalPeriodItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "DocumentFiscalPeriodFocus", "presentation": [ "http://www.topbuild.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Fiscal Period Focus", "documentation": "Fiscal period values are FY, Q1, Q2, and Q3. 1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY." } } }, "auth_ref": [] }, "dei_DocumentFiscalYearFocus": { "xbrltype": "gYearItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "DocumentFiscalYearFocus", "presentation": [ "http://www.topbuild.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Fiscal Year Focus", "documentation": "This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006." } } }, "auth_ref": [] }, "dei_DocumentPeriodEndDate": { "xbrltype": "dateItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "DocumentPeriodEndDate", "presentation": [ "http://www.topbuild.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Period End Date", "documentation": "For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period. The format of the date is YYYY-MM-DD." } } }, "auth_ref": [] }, "dei_DocumentQuarterlyReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "DocumentQuarterlyReport", "presentation": [ "http://www.topbuild.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Quarterly Report", "documentation": "Boolean flag that is true only for a form used as an quarterly report." } } }, "auth_ref": [ "r661" ] }, "dei_DocumentTransitionReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "DocumentTransitionReport", "presentation": [ "http://www.topbuild.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Transition Report", "documentation": "Boolean flag that is true only for a form used as a transition report." } } }, "auth_ref": [ "r693" ] }, "dei_DocumentType": { "xbrltype": "submissionTypeItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "DocumentType", "presentation": [ "http://www.topbuild.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Type", "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'." } } }, "auth_ref": [] }, "ecd_DvddsOrOthrErngsPdOnEqtyAwrdsNtOthrwsRflctdInTtlCompForCvrdYrMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "DvddsOrOthrErngsPdOnEqtyAwrdsNtOthrwsRflctdInTtlCompForCvrdYrMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Dividends or Other Earnings Paid on Equity Awards not Otherwise Reflected in Total Compensation for Covered Year [Member]", "terseLabel": "Dividends or Other Earnings Paid on Equity Awards not Otherwise Reflected in Total Compensation for Covered Year" } } }, "auth_ref": [ "r704" ] }, "us-gaap_EarningsPerShareAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EarningsPerShareAbstract", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "label": "Net Income Per Share", "verboseLabel": "Net income per common share:" } } }, "auth_ref": [] }, "us-gaap_EarningsPerShareBasic": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EarningsPerShareBasic", "presentation": [ "http://www.topbuild.com/role/DisclosureNetIncomePerShareCalculationDetails", "http://www.topbuild.com/role/StatementConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "label": "Earnings Per Share, Basic", "terseLabel": "Basic", "verboseLabel": "Basic net income per common share", "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period." } } }, "auth_ref": [ "r171", "r186", "r187", "r188", "r189", "r190", "r191", "r197", "r199", "r201", "r202", "r203", "r207", "r404", "r409", "r424", "r425", "r477", "r493", "r591" ] }, "us-gaap_EarningsPerShareDiluted": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EarningsPerShareDiluted", "presentation": [ "http://www.topbuild.com/role/DisclosureNetIncomePerShareCalculationDetails", "http://www.topbuild.com/role/StatementConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "label": "Earnings Per Share, Diluted", "terseLabel": "Diluted", "verboseLabel": "Diluted net income per common share", "documentation": "The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period." } } }, "auth_ref": [ "r171", "r186", "r187", "r188", "r189", "r190", "r191", "r199", "r201", "r202", "r203", "r207", "r404", "r409", "r424", "r425", "r477", "r493", "r591" ] }, "us-gaap_EarningsPerShareReconciliationAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EarningsPerShareReconciliationAbstract", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "label": "Earnings Per Share, Basic and Diluted, Other Disclosures [Abstract]", "verboseLabel": "Weighted average shares outstanding:" } } }, "auth_ref": [] }, "us-gaap_EarningsPerShareTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EarningsPerShareTextBlock", "presentation": [ "http://www.topbuild.com/role/DisclosureNetIncomePerShare" ], "lang": { "en-us": { "role": { "label": "Earnings Per Share [Text Block]", "terseLabel": "Net Income Per Share", "documentation": "The entire disclosure for earnings per share." } } }, "auth_ref": [ "r196", "r204", "r205", "r206" ] }, "us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Impact of exchange rate changes on cash", "verboseLabel": "Impact of exchange rate changes on cash", "documentation": "Amount of increase (decrease) from effect of exchange rate changes on cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; held in foreign currencies. Excludes amounts for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r446" ] }, "us-gaap_EffectiveIncomeTaxRateContinuingOperations": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EffectiveIncomeTaxRateContinuingOperations", "presentation": [ "http://www.topbuild.com/role/DisclosureIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "label": "Effective Income Tax Rate Reconciliation, Percent", "terseLabel": "Effective tax rate (as a percent)", "documentation": "Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations." } } }, "auth_ref": [ "r388", "r627" ] }, "bld_EliminationsAndReconcilingItemsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "EliminationsAndReconcilingItemsMember", "presentation": [ "http://www.topbuild.com/role/DisclosureRevenueRecognitionDisaggregationDetails", "http://www.topbuild.com/role/DisclosureSegmentInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Eliminating entries used in operating segment consolidation and Items used in reconciling reportable segments' amounts to consolidated amount.", "label": "Eliminations", "verboseLabel": "Eliminations" } } }, "auth_ref": [] }, "us-gaap_EmployeeRelatedLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EmployeeRelatedLiabilitiesCurrent", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/DisclosureAccruedLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Employee-related Liabilities, Current", "verboseLabel": "Salaries, wages, and bonus/commissions", "documentation": "Total of the carrying values as of the balance sheet date of obligations incurred through that date and payable for obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r57" ] }, "us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationExpenseDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Compensation Cost [Line Items]", "terseLabel": "Share-Based Compensation", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "label": "Employee Service Share-based Compensation, Nonvested Awards, Compensation Cost Not yet Recognized", "totalLabel": "Total unrecognized compensation expense related to unvested awards", "documentation": "Amount of cost not yet recognized for nonvested award under share-based payment arrangement." } } }, "auth_ref": [ "r380" ] }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedAbstract", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "label": "Unrecognized share-based compensation expense relating to unvested awards", "terseLabel": "Unrecognized share-based compensation expense" } } }, "auth_ref": [] }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition", "terseLabel": "Weighted Average Remaining Compensation Expense Period", "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." } } }, "auth_ref": [ "r380" ] }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "label": "Employee Service Share-based Compensation, Nonvested Awards, Compensation Not yet Recognized, Share-based Awards Other than Options", "verboseLabel": "RSAs, Unrecognized Compensation Expense on Unvested Awards", "documentation": "Amount of cost to be recognized for nonvested award under share-based payment arrangement. Excludes share and unit options." } } }, "auth_ref": [ "r841" ] }, "us-gaap_EmployeeStockOptionMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EmployeeStockOptionMember", "presentation": [ "http://www.topbuild.com/role/DisclosureNetIncomePerShareAntiDilutiveCommonStockEquivalentsDetails", "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Employee Stock Option [Member]", "terseLabel": "Employee Stock Option", "documentation": "Share-based payment arrangement granting right, subject to vesting and other restrictions, to purchase or sell certain number of shares at predetermined price for specified period of time." } } }, "auth_ref": [] }, "dei_EntityAddressAddressLine1": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityAddressAddressLine1", "presentation": [ "http://www.topbuild.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Address, Address Line One", "documentation": "Address Line 1 such as Attn, Building Name, Street Name" } } }, "auth_ref": [] }, "dei_EntityAddressCityOrTown": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityAddressCityOrTown", "presentation": [ "http://www.topbuild.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Address, City or Town", "documentation": "Name of the City or Town" } } }, "auth_ref": [] }, "dei_EntityAddressPostalZipCode": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityAddressPostalZipCode", "presentation": [ "http://www.topbuild.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Address, Postal Zip Code", "documentation": "Code for the postal or zip code" } } }, "auth_ref": [] }, "dei_EntityAddressStateOrProvince": { "xbrltype": "stateOrProvinceItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityAddressStateOrProvince", "presentation": [ "http://www.topbuild.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Address, State or Province", "documentation": "Name of the state or province." } } }, "auth_ref": [] }, "dei_EntityCentralIndexKey": { "xbrltype": "centralIndexKeyItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityCentralIndexKey", "presentation": [ "http://www.topbuild.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Central Index Key", "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK." } } }, "auth_ref": [ "r659" ] }, "dei_EntityCommonStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityCommonStockSharesOutstanding", "presentation": [ "http://www.topbuild.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Common Stock, Shares Outstanding", "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument." } } }, "auth_ref": [] }, "dei_EntityCurrentReportingStatus": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityCurrentReportingStatus", "presentation": [ "http://www.topbuild.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Current Reporting Status", "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure." } } }, "auth_ref": [] }, "dei_EntityEmergingGrowthCompany": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityEmergingGrowthCompany", "presentation": [ "http://www.topbuild.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Emerging Growth Company", "documentation": "Indicate if registrant meets the emerging growth company criteria." } } }, "auth_ref": [ "r659" ] }, "dei_EntityFileNumber": { "xbrltype": "fileNumberItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityFileNumber", "presentation": [ "http://www.topbuild.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity File Number", "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen." } } }, "auth_ref": [] }, "dei_EntityFilerCategory": { "xbrltype": "filerCategoryItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityFilerCategory", "presentation": [ "http://www.topbuild.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Filer Category", "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure." } } }, "auth_ref": [ "r659" ] }, "dei_EntityIncorporationStateCountryCode": { "xbrltype": "edgarStateCountryItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityIncorporationStateCountryCode", "presentation": [ "http://www.topbuild.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Incorporation, State or Country Code", "documentation": "Two-character EDGAR code representing the state or country of incorporation." } } }, "auth_ref": [] }, "dei_EntityInteractiveDataCurrent": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityInteractiveDataCurrent", "presentation": [ "http://www.topbuild.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Interactive Data Current", "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files)." } } }, "auth_ref": [ "r743" ] }, "dei_EntityRegistrantName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityRegistrantName", "presentation": [ "http://www.topbuild.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Registrant Name", "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC." } } }, "auth_ref": [ "r659" ] }, "dei_EntityShellCompany": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityShellCompany", "presentation": [ "http://www.topbuild.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Shell Company", "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act." } } }, "auth_ref": [ "r659" ] }, "dei_EntitySmallBusiness": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntitySmallBusiness", "presentation": [ "http://www.topbuild.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Small Business", "documentation": "Indicates that the company is a Smaller Reporting Company (SRC)." } } }, "auth_ref": [ "r659" ] }, "dei_EntityTaxIdentificationNumber": { "xbrltype": "employerIdItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityTaxIdentificationNumber", "presentation": [ "http://www.topbuild.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Tax Identification Number", "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS." } } }, "auth_ref": [ "r659" ] }, "ecd_EqtyAwrdsAdjFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "EqtyAwrdsAdjFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Equity Awards Adjustments, Footnote [Text Block]", "terseLabel": "Equity Awards Adjustments, Footnote" } } }, "auth_ref": [ "r698" ] }, "ecd_EqtyAwrdsAdjsExclgValRprtdInSummryCompstnTblMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "EqtyAwrdsAdjsExclgValRprtdInSummryCompstnTblMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Equity Awards Adjustments, Excluding Value Reported in the Compensation Table [Member]", "terseLabel": "Equity Awards Adjustments, Excluding Value Reported in Compensation Table" } } }, "auth_ref": [ "r739" ] }, "ecd_EqtyAwrdsAdjsMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "EqtyAwrdsAdjsMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Equity Awards Adjustments [Member]", "terseLabel": "Equity Awards Adjustments" } } }, "auth_ref": [ "r739" ] }, "ecd_EqtyAwrdsInSummryCompstnTblForAplblYrMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "EqtyAwrdsInSummryCompstnTblForAplblYrMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Aggregate Grant Date Fair Value of Equity Award Amounts Reported in Summary Compensation Table [Member]", "terseLabel": "Aggregate Grant Date Fair Value of Equity Award Amounts Reported in Summary Compensation Table" } } }, "auth_ref": [ "r739" ] }, "bld_EquipmentNotesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "EquipmentNotesMember", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtReconciliationDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtScheduleOfDebtMaturityDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails" ], "lang": { "en-us": { "role": { "documentation": "Information relating to equipment notes executed under a Master Loan and Security Agreement with Banc of America Leasing &amp; Capital, LLC.", "label": "Equipment Notes", "terseLabel": "Equipment Notes" } } }, "auth_ref": [] }, "us-gaap_EquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EquityAbstract", "lang": { "en-us": { "role": { "label": "Share Repurchase Program" } } }, "auth_ref": [] }, "us-gaap_EquityClassOfTreasuryStockLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EquityClassOfTreasuryStockLineItems", "presentation": [ "http://www.topbuild.com/role/DisclosureShareRepurchaseProgramDetails" ], "lang": { "en-us": { "role": { "label": "Equity, Class of Treasury Stock [Line Items]", "terseLabel": "Share Repurchase Program", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_EquityComponentDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EquityComponentDomain", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfChangesInShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Equity Component [Domain]", "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc." } } }, "auth_ref": [ "r12", "r143", "r166", "r167", "r168", "r181", "r182", "r183", "r185", "r190", "r192", "r194", "r209", "r246", "r247", "r277", "r321", "r394", "r395", "r401", "r402", "r403", "r405", "r408", "r409", "r417", "r418", "r419", "r420", "r421", "r422", "r423", "r448", "r450", "r451", "r452", "r453", "r454", "r457", "r458", "r462", "r490", "r515", "r516", "r517", "r527", "r576" ] }, "ecd_EquityValuationAssumptionDifferenceFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "EquityValuationAssumptionDifferenceFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Equity Valuation Assumption Difference, Footnote [Text Block]", "terseLabel": "Equity Valuation Assumption Difference, Footnote" } } }, "auth_ref": [ "r708" ] }, "ecd_ErrCompAnalysisTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ErrCompAnalysisTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Erroneous Compensation Analysis [Text Block]", "terseLabel": "Erroneous Compensation Analysis" } } }, "auth_ref": [ "r666", "r676", "r686", "r718" ] }, "ecd_ErrCompRecoveryTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ErrCompRecoveryTable", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Erroneously Awarded Compensation Recovery [Table]", "terseLabel": "Erroneously Awarded Compensation Recovery" } } }, "auth_ref": [ "r663", "r673", "r683", "r715" ] }, "bld_EventOfDefaultScenarioMember": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "EventOfDefaultScenarioMember", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtOtherDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtRevolvingFacilityDetails" ], "lang": { "en-us": { "role": { "documentation": "The scenario representing an event of default.", "label": "Event of Default Scenario", "terseLabel": "Event of Default Scenario" } } }, "auth_ref": [] }, "ecd_ExecutiveCategoryAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ExecutiveCategoryAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Executive Category [Axis]", "terseLabel": "Executive Category:" } } }, "auth_ref": [ "r714" ] }, "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems", "presentation": [ "http://www.topbuild.com/role/DisclosureFairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "label": "Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r427", "r428", "r436", "r630" ] }, "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable", "presentation": [ "http://www.topbuild.com/role/DisclosureFairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "label": "Fair Value Measurements, Recurring and Nonrecurring [Table]", "documentation": "Disclosure of information about asset and liability measured at fair value on recurring and nonrecurring basis." } } }, "auth_ref": [ "r427", "r428", "r436", "r630" ] }, "us-gaap_FairValueByFairValueHierarchyLevelAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueByFairValueHierarchyLevelAxis", "presentation": [ "http://www.topbuild.com/role/DisclosureFairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "label": "Fair Value Hierarchy and NAV [Axis]", "documentation": "Information by level within fair value hierarchy and fair value measured at net asset value per share as practical expedient." } } }, "auth_ref": [ "r308", "r338", "r339", "r340", "r341", "r342", "r343", "r426", "r428", "r429", "r430", "r431", "r435", "r436", "r437", "r463", "r464", "r465", "r607", "r608", "r619", "r620", "r621", "r630", "r632" ] }, "us-gaap_FairValueByMeasurementFrequencyAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueByMeasurementFrequencyAxis", "presentation": [ "http://www.topbuild.com/role/DisclosureFairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "label": "Measurement Frequency [Axis]", "documentation": "Information by measurement frequency." } } }, "auth_ref": [ "r427", "r428", "r429", "r431", "r630", "r846", "r849" ] }, "us-gaap_FairValueDisclosuresAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueDisclosuresAbstract", "lang": { "en-us": { "role": { "label": "Fair Value Measurements" } } }, "auth_ref": [] }, "us-gaap_FairValueDisclosuresTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueDisclosuresTextBlock", "presentation": [ "http://www.topbuild.com/role/DisclosureFairValueMeasurements" ], "lang": { "en-us": { "role": { "label": "Fair Value Disclosures [Text Block]", "terseLabel": "Fair Value Measurements", "documentation": "The entire disclosure for the fair value of financial instruments (as defined), including financial assets and financial liabilities (collectively, as defined), and the measurements of those instruments as well as disclosures related to the fair value of non-financial assets and liabilities. Such disclosures about the financial instruments, assets, and liabilities would include: (1) the fair value of the required items together with their carrying amounts (as appropriate); (2) for items for which it is not practicable to estimate fair value, disclosure would include: (a) information pertinent to estimating fair value (including, carrying amount, effective interest rate, and maturity, and (b) the reasons why it is not practicable to estimate fair value; (3) significant concentrations of credit risk including: (a) information about the activity, region, or economic characteristics identifying a concentration, (b) the maximum amount of loss the entity is exposed to based on the gross fair value of the related item, (c) policy for requiring collateral or other security and information as to accessing such collateral or security, and (d) the nature and brief description of such collateral or security; (4) quantitative information about market risks and how such risks are managed; (5) for items measured on both a recurring and nonrecurring basis information regarding the inputs used to develop the fair value measurement; and (6) for items presented in the financial statement for which fair value measurement is elected: (a) information necessary to understand the reasons for the election, (b) discussion of the effect of fair value changes on earnings, (c) a description of [similar groups] items for which the election is made and the relation thereof to the balance sheet, the aggregate carrying value of items included in the balance sheet that are not eligible for the election; (7) all other required (as defined) and desired information." } } }, "auth_ref": [ "r432", "r433", "r434", "r435", "r437", "r438", "r439", "r440", "r441", "r473", "r630", "r633" ] }, "us-gaap_FairValueInputsLevel1Member": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueInputsLevel1Member", "presentation": [ "http://www.topbuild.com/role/DisclosureFairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "label": "Level 1 fair value measurement", "documentation": "Quoted prices in active markets for identical assets or liabilities that the reporting entity can access at the measurement date." } } }, "auth_ref": [ "r308", "r338", "r343", "r428", "r436", "r463", "r619", "r620", "r621", "r630" ] }, "us-gaap_FairValueInputsQuantitativeInformationAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueInputsQuantitativeInformationAbstract", "presentation": [ "http://www.topbuild.com/role/DisclosureFairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "label": "Fair Value, Transfers Between Level 1 and Level 2, Description and Policy [Abstract]", "terseLabel": "Fair Value on Non-Recurring Basis" } } }, "auth_ref": [] }, "us-gaap_FairValueLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock", "presentation": [ "http://www.topbuild.com/role/DisclosureFairValueMeasurementsTables" ], "lang": { "en-us": { "role": { "label": "Fair Value, Liabilities Measured on Recurring and Nonrecurring Basis [Table Text Block]", "terseLabel": "Schedule of fair value of liabilities", "documentation": "Tabular disclosure of liabilities measured at fair value measured on a recurring or nonrecurring basis. Includes, but is not limited to, fair value measurements recorded and the reasons for the measurements, level within the fair value hierarchy in which the fair value measurements are categorized and transfers between levels 1 and 2." } } }, "auth_ref": [ "r427", "r428" ] }, "us-gaap_FairValueMeasurementFrequencyDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueMeasurementFrequencyDomain", "presentation": [ "http://www.topbuild.com/role/DisclosureFairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "label": "Measurement Frequency [Domain]", "documentation": "Measurement frequency." } } }, "auth_ref": [ "r427", "r428", "r429", "r431", "r630", "r846", "r849" ] }, "us-gaap_FairValueMeasurementsFairValueHierarchyDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueMeasurementsFairValueHierarchyDomain", "presentation": [ "http://www.topbuild.com/role/DisclosureFairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "label": "Fair Value Hierarchy and NAV [Domain]", "documentation": "Categories used to prioritize the inputs to valuation techniques to measure fair value." } } }, "auth_ref": [ "r308", "r338", "r339", "r340", "r341", "r342", "r343", "r426", "r428", "r429", "r430", "r431", "r435", "r436", "r437", "r463", "r464", "r465", "r607", "r608", "r619", "r620", "r621", "r630", "r632" ] }, "us-gaap_FairValueMeasurementsNonrecurringMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueMeasurementsNonrecurringMember", "presentation": [ "http://www.topbuild.com/role/DisclosureFairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "label": "Fair Value on Non-Recurring Basis", "documentation": "Infrequent fair value measurement. Includes, but is not limited to, fair value adjustment for impairment of asset, liability or equity, not frequently measured at fair value." } } }, "auth_ref": [ "r427", "r428", "r429", "r431", "r630", "r846" ] }, "bld_FederalFundsRateMember": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "FederalFundsRateMember", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtKeyTermsOfCreditAgreementDetails" ], "lang": { "en-us": { "role": { "documentation": "The federal funds rate.", "label": "Federal Funds Rate", "terseLabel": "Federal Funds Rate" } } }, "auth_ref": [] }, "us-gaap_FinanceLeaseLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FinanceLeaseLiabilityCurrent", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Finance Lease, Liability, Current", "terseLabel": "Short-term finance lease liabilities", "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease, classified as current." } } }, "auth_ref": [ "r460" ] }, "us-gaap_FinanceLeaseLiabilityNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FinanceLeaseLiabilityNoncurrent", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Finance Lease, Liability, Noncurrent", "terseLabel": "Long-term finance lease liabilities", "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease, classified as noncurrent." } } }, "auth_ref": [ "r460" ] }, "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/DisclosureGoodwillAndOtherIntangiblesOtherIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Accumulated Amortization", "negatedLabel": "Accumulated Amortization", "documentation": "Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r150", "r251", "r272", "r605" ] }, "us-gaap_FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable", "presentation": [ "http://www.topbuild.com/role/DisclosureBusinessCombinationsIntangiblesDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets Acquired as Part of Business Combination [Table]", "documentation": "Disclosure of information about finite-lived intangible asset acquired in business combination." } } }, "auth_ref": [ "r31" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock", "presentation": [ "http://www.topbuild.com/role/DisclosureGoodwillAndOtherIntangiblesTables" ], "lang": { "en-us": { "role": { "label": "Finite-lived Intangible Assets Amortization Expense [Table Text Block]", "terseLabel": "Schedule of amortization expense", "documentation": "Tabular disclosure of amortization expense of assets, excluding financial assets, that lack physical substance, having a limited useful life." } } }, "auth_ref": [] }, "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis", "presentation": [ "http://www.topbuild.com/role/DisclosureBusinessCombinationsIntangiblesDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets by Major Class [Axis]", "documentation": "Information by major type or class of finite-lived intangible assets." } } }, "auth_ref": [ "r265", "r267", "r268", "r269", "r271", "r272", "r274", "r275", "r471", "r472", "r587" ] }, "us-gaap_FiniteLivedIntangibleAssetsGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetsGross", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/DisclosureGoodwillAndOtherIntangiblesOtherIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Gross", "terseLabel": "Gross Definite-lived intangible assets", "documentation": "Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r251", "r272", "r472", "r605" ] }, "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain", "presentation": [ "http://www.topbuild.com/role/DisclosureBusinessCombinationsIntangiblesDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Major Class Name [Domain]", "documentation": "The major class of finite-lived intangible asset (for example, patents, trademarks, copyrights, etc.) A major class is composed of intangible assets that can be grouped together because they are similar, either by their nature or by their use in the operations of a company." } } }, "auth_ref": [ "r265", "r267", "r268", "r269", "r271", "r272", "r274", "r275", "r587" ] }, "us-gaap_FiniteLivedIntangibleAssetsNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetsNet", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/DisclosureGoodwillAndOtherIntangiblesOtherIntangibleAssetsDetails", "http://www.topbuild.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Net", "totalLabel": "Other intangible asset, net", "verboseLabel": "Other intangible assets, net", "documentation": "Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r471", "r792" ] }, "ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Forgone Recovery due to Disqualification of Tax Benefits, Amount", "terseLabel": "Forgone Recovery due to Disqualification of Tax Benefits, Amount" } } }, "auth_ref": [ "r670", "r680", "r690", "r722" ] }, "ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ForgoneRecoveryDueToExpenseOfEnforcementAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Forgone Recovery due to Expense of Enforcement, Amount", "terseLabel": "Forgone Recovery due to Expense of Enforcement, Amount" } } }, "auth_ref": [ "r670", "r680", "r690", "r722" ] }, "ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ForgoneRecoveryDueToViolationOfHomeCountryLawAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Forgone Recovery due to Violation of Home Country Law, Amount", "terseLabel": "Forgone Recovery due to Violation of Home Country Law, Amount" } } }, "auth_ref": [ "r670", "r680", "r690", "r722" ] }, "ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ForgoneRecoveryExplanationOfImpracticabilityTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Forgone Recovery, Explanation of Impracticability [Text Block]", "terseLabel": "Forgone Recovery, Explanation of Impracticability" } } }, "auth_ref": [ "r670", "r680", "r690", "r722" ] }, "ecd_ForgoneRecoveryIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ForgoneRecoveryIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Forgone Recovery, Individual Name", "terseLabel": "Name" } } }, "auth_ref": [ "r670", "r680", "r690", "r722" ] }, "ecd_FrValAsOfPrrYrEndOfEqtyAwrdsGrntdInPrrYrsFldVstngCondsDrngCvrdYrMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "FrValAsOfPrrYrEndOfEqtyAwrdsGrntdInPrrYrsFldVstngCondsDrngCvrdYrMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Prior Year End Fair Value of Equity Awards Granted in Any Prior Year that Fail to Meet Applicable Vesting Conditions During Covered Year [Member]", "terseLabel": "Prior Year End Fair Value of Equity Awards Granted in Any Prior Year that Fail to Meet Applicable Vesting Conditions During Covered Year" } } }, "auth_ref": [ "r703" ] }, "us-gaap_GainLossOnDispositionOfAssets1": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GainLossOnDispositionOfAssets1", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Gain (Loss) on Disposition of Assets", "negatedLabel": "(Gain)/loss on sale of assets", "documentation": "Amount of gain (loss) on sale or disposal of assets, including but not limited to property plant and equipment, intangible assets and equity in securities of subsidiaries or equity method investee." } } }, "auth_ref": [ "r755" ] }, "bld_GlassAndWindowsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "GlassAndWindowsMember", "presentation": [ "http://www.topbuild.com/role/DisclosureRevenueRecognitionDisaggregationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to glass and windows product category.", "label": "Glass and windows", "terseLabel": "Glass and windows" } } }, "auth_ref": [] }, "us-gaap_Goodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "Goodwill", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/DisclosureGoodwillAndOtherIntangiblesGoodwillDetails", "http://www.topbuild.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Goodwill", "terseLabel": "Goodwill", "totalLabel": "Net Goodwill", "documentation": "Amount, after accumulated impairment loss, of asset representing future economic benefit arising from other asset acquired in business combination or from joint venture formation or both, that is not individually identified and separately recognized." } } }, "auth_ref": [ "r149", "r252", "r474", "r599", "r604", "r631", "r638", "r776", "r783" ] }, "us-gaap_GoodwillAcquiredDuringPeriod": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GoodwillAcquiredDuringPeriod", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/DisclosureBusinessCombinationsSummaryDetails" ], "lang": { "en-us": { "role": { "label": "Goodwill, Acquired During Period", "terseLabel": "Goodwill recognized", "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." } } }, "auth_ref": [ "r256", "r604" ] }, "us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GoodwillAndIntangibleAssetsDisclosureAbstract", "lang": { "en-us": { "role": { "label": "Goodwill and Other Intangibles" } } }, "auth_ref": [] }, "us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GoodwillAndIntangibleAssetsDisclosureTextBlock", "presentation": [ "http://www.topbuild.com/role/DisclosureGoodwillAndOtherIntangibles" ], "lang": { "en-us": { "role": { "label": "Goodwill and Intangible Assets Disclosure [Text Block]", "terseLabel": "Goodwill and Other Intangibles", "documentation": "The entire disclosure for goodwill and intangible assets." } } }, "auth_ref": [ "r774", "r786" ] }, "us-gaap_GoodwillForeignCurrencyTranslationGainLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GoodwillForeignCurrencyTranslationGainLoss", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/DisclosureGoodwillAndOtherIntangiblesGoodwillDetails" ], "lang": { "en-us": { "role": { "label": "Goodwill, Foreign Currency Translation Gain (Loss)", "terseLabel": "Fx Translation Adjustment", "documentation": "Amount of foreign currency translation gain (loss) which increases (decreases) asset representing future economic benefit from other asset acquired in business combination or from joint venture formation or both, that is not individually identified and separately recognized." } } }, "auth_ref": [ "r260" ] }, "us-gaap_GoodwillGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GoodwillGross", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/DisclosureGoodwillAndOtherIntangiblesGoodwillDetails" ], "lang": { "en-us": { "role": { "label": "Goodwill, Gross", "periodEndLabel": "Gross Goodwill, at end of period", "periodStartLabel": "Gross Goodwill, at beginning of period", "documentation": "Amount, before accumulated impairment loss, of asset representing future economic benefit arising from other asset acquired in business combination or from joint venture formation or both, that is not individually identified and separately recognized." } } }, "auth_ref": [ "r255", "r262", "r604" ] }, "us-gaap_GoodwillImpairedAccumulatedImpairmentLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GoodwillImpairedAccumulatedImpairmentLoss", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/DisclosureGoodwillAndOtherIntangiblesGoodwillDetails" ], "lang": { "en-us": { "role": { "label": "Goodwill, Impaired, Accumulated Impairment Loss", "negatedLabel": "Accumulated Impairment Losses", "documentation": "Amount of accumulated impairment loss for asset representing future economic benefit arising from other asset acquired in business combination or from joint venture formation or both, that is not individually identified and separately recognized." } } }, "auth_ref": [ "r255", "r262", "r604" ] }, "us-gaap_GoodwillImpairmentLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GoodwillImpairmentLoss", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/DisclosureGoodwillAndOtherIntangiblesGoodwillDetails" ], "lang": { "en-us": { "role": { "label": "Goodwill, Impairment Loss", "terseLabel": "Impairment of goodwill", "documentation": "Amount of impairment loss from asset representing future economic benefit arising from other asset acquired in business combination or from joint venture formation or both, that is not individually identified and separately recognized." } } }, "auth_ref": [ "r8", "r253", "r259", "r264", "r604", "r631" ] }, "us-gaap_GoodwillLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GoodwillLineItems", "presentation": [ "http://www.topbuild.com/role/DisclosureGoodwillAndOtherIntangiblesGoodwillDetails" ], "lang": { "en-us": { "role": { "label": "Goodwill [Line Items]", "terseLabel": "Changes in the carrying amount of goodwill", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r254", "r255", "r256", "r257", "r258", "r259", "r260", "r261", "r262", "r263", "r264", "r604" ] }, "us-gaap_GoodwillPeriodIncreaseDecrease": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GoodwillPeriodIncreaseDecrease", "presentation": [ "http://www.topbuild.com/role/DisclosureGoodwillAndOtherIntangiblesGoodwillDetails" ], "lang": { "en-us": { "role": { "label": "Goodwill, Period Increase (Decrease)", "terseLabel": "Additions", "documentation": "Amount of increase (decrease) of asset representing future economic benefit arising from other asset acquired in business combination or from joint venture formation or both, that is not individually identified and separately recognized." } } }, "auth_ref": [ "r775" ] }, "bld_GreenSpaceMember": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "GreenSpaceMember", "presentation": [ "http://www.topbuild.com/role/DisclosureBusinessCombinationsSummaryDetails" ], "lang": { "en-us": { "role": { "documentation": "Information pertaining to Green Space, a residential and light commercial insulation business.", "label": "Green Space [Member]", "terseLabel": "Green Space" } } }, "auth_ref": [] }, "us-gaap_GrossProfit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GrossProfit", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "label": "Gross Profit", "totalLabel": "Gross profit", "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity." } } }, "auth_ref": [ "r75", "r79", "r112", "r178", "r245", "r289", "r290", "r292", "r293", "r294", "r295", "r296", "r298", "r299", "r443", "r593", "r598", "r765", "r767", "r769", "r770", "r771", "r807" ] }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/DisclosureSegmentInformationDetails", "http://www.topbuild.com/role/StatementConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "label": "Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest", "totalLabel": "Income before income taxes", "documentation": "Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest." } } }, "auth_ref": [ "r76", "r107", "r112", "r478", "r487", "r593", "r598", "r765", "r767", "r769", "r770", "r771" ] }, "us-gaap_IncomeStatementAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeStatementAbstract", "lang": { "en-us": { "role": { "label": "CONSOLIDATED STATEMENTS OF OPERATIONS" } } }, "auth_ref": [] }, "us-gaap_IncomeTaxDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeTaxDisclosureAbstract", "lang": { "en-us": { "role": { "label": "Income Taxes" } } }, "auth_ref": [] }, "us-gaap_IncomeTaxDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeTaxDisclosureTextBlock", "presentation": [ "http://www.topbuild.com/role/DisclosureIncomeTaxes" ], "lang": { "en-us": { "role": { "label": "Income Tax Disclosure [Text Block]", "terseLabel": "Income Taxes", "documentation": "The entire disclosure for income tax." } } }, "auth_ref": [ "r179", "r384", "r388", "r389", "r390", "r391", "r392", "r393", "r396", "r398", "r399", "r400", "r525", "r627" ] }, "us-gaap_IncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeTaxExpenseBenefit", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "label": "Income Tax Expense (Benefit)", "negatedLabel": "Income tax expense", "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations." } } }, "auth_ref": [ "r114", "r116", "r193", "r194", "r208", "r222", "r236", "r387", "r388", "r397", "r494", "r627" ] }, "us-gaap_IncreaseDecreaseInAccountsPayable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInAccountsPayable", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase (Decrease) in Accounts Payable", "terseLabel": "Accounts payable", "documentation": "The increase (decrease) during the reporting period in the aggregate amount of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business." } } }, "auth_ref": [ "r7" ] }, "us-gaap_IncreaseDecreaseInAccountsReceivable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInAccountsReceivable", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase (Decrease) in Accounts Receivable", "negatedLabel": "Receivables, net", "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services." } } }, "auth_ref": [ "r7" ] }, "us-gaap_IncreaseDecreaseInAccruedLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInAccruedLiabilities", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase (Decrease) in Accrued Liabilities", "terseLabel": "Accrued liabilities", "documentation": "The increase (decrease) during the reporting period in the aggregate amount of expenses incurred but not yet paid." } } }, "auth_ref": [ "r7" ] }, "us-gaap_IncreaseDecreaseInInventories": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInInventories", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase (Decrease) in Inventories", "negatedLabel": "Inventories", "documentation": "The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities." } } }, "auth_ref": [ "r7" ] }, "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInOperatingCapitalAbstract", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase (Decrease) in Operating Capital [Abstract]", "terseLabel": "Change in certain assets and liabilities:" } } }, "auth_ref": [] }, "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase (Decrease) in Prepaid Expense and Other Assets", "negatedLabel": "Prepaid expenses and other current assets", "documentation": "Amount of increase (decrease) in prepaid expenses, and assets classified as other." } } }, "auth_ref": [ "r7" ] }, "us-gaap_IncreaseDecreaseInStockholdersEquityRollForward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInStockholdersEquityRollForward", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfChangesInShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Increase (Decrease) in Stockholders' Equity [Roll Forward]", "terseLabel": "Increase (Decrease) in Stockholders' Equity", "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period." } } }, "auth_ref": [] }, "bld_IncrementalCommonSharesAttributableToDilutiveEffectOfRestrictedStockAwards": { "xbrltype": "sharesItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "IncrementalCommonSharesAttributableToDilutiveEffectOfRestrictedStockAwards", "presentation": [ "http://www.topbuild.com/role/DisclosureNetIncomePerShareCalculationDetails" ], "lang": { "en-us": { "role": { "documentation": "Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of restricted stock awards using the treasury stock method.", "label": "Incremental Common Shares Attributable to Dilutive Effect of Restricted Stock Awards", "terseLabel": "Restricted stock awards" } } }, "auth_ref": [] }, "bld_IncrementalCommonSharesAttributableToDilutiveEffectOfStockOptions": { "xbrltype": "sharesItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "IncrementalCommonSharesAttributableToDilutiveEffectOfStockOptions", "presentation": [ "http://www.topbuild.com/role/DisclosureNetIncomePerShareCalculationDetails" ], "lang": { "en-us": { "role": { "documentation": "Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of stock options using the treasury stock method.", "label": "Incremental Common Shares Attributable to Dilutive Effect of Stock Options", "terseLabel": "Stock options" } } }, "auth_ref": [] }, "ecd_IndividualAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "IndividualAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure", "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure", "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements", "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Individual [Axis]", "terseLabel": "Individual:" } } }, "auth_ref": [ "r670", "r680", "r690", "r714", "r722", "r726", "r734" ] }, "ecd_InsiderTradingArrLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "InsiderTradingArrLineItems", "lang": { "en-us": { "role": { "label": "Insider Trading Arrangements [Line Items]", "terseLabel": "Insider Trading Arrangements:" } } }, "auth_ref": [ "r732" ] }, "ecd_InsiderTradingPoliciesProcLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "InsiderTradingPoliciesProcLineItems", "lang": { "en-us": { "role": { "label": "Insider Trading Policies and Procedures [Line Items]", "terseLabel": "Insider Trading Policies and Procedures:" } } }, "auth_ref": [ "r662", "r738" ] }, "ecd_InsiderTrdPoliciesProcAdoptedFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "InsiderTrdPoliciesProcAdoptedFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingPoliciesProc" ], "lang": { "en-us": { "role": { "label": "Insider Trading Policies and Procedures Adopted [Flag]", "terseLabel": "Insider Trading Policies and Procedures Adopted" } } }, "auth_ref": [ "r662", "r738" ] }, "ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "InsiderTrdPoliciesProcNotAdoptedTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingPoliciesProc" ], "lang": { "en-us": { "role": { "label": "Insider Trading Policies and Procedures Not Adopted [Text Block]", "terseLabel": "Insider Trading Policies and Procedures Not Adopted" } } }, "auth_ref": [ "r662", "r738" ] }, "bld_InstallationSegmentMember": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "InstallationSegmentMember", "presentation": [ "http://www.topbuild.com/role/DisclosureGoodwillAndOtherIntangiblesGoodwillDetails", "http://www.topbuild.com/role/DisclosureRevenueRecognitionDisaggregationDetails", "http://www.topbuild.com/role/DisclosureSegmentInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the installation segment of the reporting entity.", "label": "Installation", "terseLabel": "Installation" } } }, "auth_ref": [] }, "bld_InsulationAndAccessoriesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "InsulationAndAccessoriesMember", "presentation": [ "http://www.topbuild.com/role/DisclosureRevenueRecognitionDisaggregationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the information pertaining to the insulation and accessories product.", "label": "Insulation and accessories", "terseLabel": "Insulation and accessories" } } }, "auth_ref": [] }, "bld_InsulationWorksIncMember": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "InsulationWorksIncMember", "presentation": [ "http://www.topbuild.com/role/DisclosureBusinessCombinationsSummaryDetails" ], "lang": { "en-us": { "role": { "documentation": "Information pertaining to Insulation Works, Inc.", "label": "Insulation Works, Inc [Member]", "terseLabel": "Insulation Works Inc." } } }, "auth_ref": [] }, "us-gaap_IntangibleAssetsNetExcludingGoodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IntangibleAssetsNetExcludingGoodwill", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/DisclosureGoodwillAndOtherIntangiblesOtherIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Intangible Assets, Net (Excluding Goodwill)", "totalLabel": "Other intangible asset, net", "documentation": "Sum of the carrying amounts of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges." } } }, "auth_ref": [ "r265", "r792", "r793" ] }, "us-gaap_IntangibleAssetsNetExcludingGoodwillAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IntangibleAssetsNetExcludingGoodwillAbstract", "presentation": [ "http://www.topbuild.com/role/DisclosureGoodwillAndOtherIntangiblesOtherIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Net [Abstract]", "terseLabel": "Other intangible assets" } } }, "auth_ref": [] }, "us-gaap_InterestExpenseNonoperating": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InterestExpenseNonoperating", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "label": "Interest Expense", "negatedLabel": "Interest expense", "documentation": "Amount of interest expense classified as nonoperating." } } }, "auth_ref": [ "r218", "r754" ] }, "us-gaap_InterestPayableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InterestPayableCurrent", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/DisclosureAccruedLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Interest Payable, Current", "terseLabel": "Interest payable on long-term debt", "documentation": "Carrying value as of the balance sheet date of [accrued] interest payable on all forms of debt, including trade payables, that has been incurred and is unpaid. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r57" ] }, "us-gaap_IntersegmentEliminationMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IntersegmentEliminationMember", "presentation": [ "http://www.topbuild.com/role/DisclosureSegmentInformationDetails" ], "lang": { "en-us": { "role": { "label": "Intercompany Eliminations", "documentation": "Eliminating entries used in operating segment consolidation." } } }, "auth_ref": [ "r111", "r208", "r216", "r230", "r231", "r232", "r233", "r234", "r236", "r237", "r598" ] }, "us-gaap_InventoryNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InventoryNet", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Inventory, Net", "terseLabel": "Inventories", "documentation": "Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer." } } }, "auth_ref": [ "r159", "r590", "r638" ] }, "us-gaap_InventoryWriteDown": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InventoryWriteDown", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Inventory Write-down", "terseLabel": "Provision for inventory obsolescence", "documentation": "Amount of loss from reductions in inventory due to subsequent measurement adjustments, including, but not limited to, physical deterioration, obsolescence, or changes in price levels." } } }, "auth_ref": [ "r250" ] }, "us-gaap_LettersOfCreditOutstandingAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LettersOfCreditOutstandingAmount", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtRevolvingFacilityDetails" ], "lang": { "en-us": { "role": { "label": "Letters of Credit Outstanding, Amount", "negatedLabel": "Less: standby letters of credit", "documentation": "The total amount of the contingent obligation under letters of credit outstanding as of the reporting date." } } }, "auth_ref": [] }, "us-gaap_Liabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "Liabilities", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Liabilities", "totalLabel": "Total liabilities", "documentation": "Amount of liability recognized for present obligation requiring transfer or otherwise providing economic benefit to others." } } }, "auth_ref": [ "r18", "r56", "r57", "r58", "r61", "r62", "r63", "r64", "r178", "r245", "r289", "r290", "r292", "r293", "r294", "r295", "r296", "r298", "r299", "r412", "r415", "r416", "r443", "r537", "r592", "r657", "r807", "r855", "r856" ] }, "us-gaap_LiabilitiesAndStockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LiabilitiesAndStockholdersEquity", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Liabilities and Equity", "totalLabel": "Total liabilities and equity", "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any." } } }, "auth_ref": [ "r71", "r106", "r486", "r638", "r757", "r773", "r850" ] }, "us-gaap_LiabilitiesAndStockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LiabilitiesAndStockholdersEquityAbstract", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Liabilities and Equity [Abstract]", "terseLabel": "LIABILITIES AND EQUITY" } } }, "auth_ref": [] }, "us-gaap_LiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LiabilitiesCurrent", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Liabilities, Current", "totalLabel": "Total current liabilities", "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer." } } }, "auth_ref": [ "r58", "r147", "r178", "r245", "r289", "r290", "r292", "r293", "r294", "r295", "r296", "r298", "r299", "r412", "r415", "r416", "r443", "r638", "r807", "r855", "r856" ] }, "us-gaap_LiabilitiesCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LiabilitiesCurrentAbstract", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Liabilities, Current [Abstract]", "terseLabel": "Current liabilities:" } } }, "auth_ref": [] }, "us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LineOfCreditFacilityCurrentBorrowingCapacity", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtRevolvingFacilityDetails" ], "lang": { "en-us": { "role": { "label": "Line of Credit Facility, Current Borrowing Capacity", "terseLabel": "Availability under revolving facility", "documentation": "Amount of current borrowing capacity under the credit facility considering any current restrictions on the amount that could be borrowed (for example, borrowings may be limited by the amount of current assets), but without considering any amounts currently outstanding under the facility." } } }, "auth_ref": [ "r55", "r60" ] }, "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LineOfCreditFacilityMaximumBorrowingCapacity", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtKeyTermsOfCreditAgreementDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtRevolvingFacilityDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails" ], "lang": { "en-us": { "role": { "label": "Line of Credit Facility, Maximum Borrowing Capacity", "totalLabel": "Revolving Facility", "verboseLabel": "Availability", "documentation": "Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility." } } }, "auth_ref": [ "r55", "r60" ] }, "bld_LineOfCreditFacilitySublimitAvailableForLettersOfCredit": { "xbrltype": "monetaryItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "LineOfCreditFacilitySublimitAvailableForLettersOfCredit", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtKeyTermsOfCreditAgreementDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the sublimit available for the issuance of letters of credit under the credit facility.", "label": "Line of Credit Facility Sublimit Available for Letters of Credit", "verboseLabel": "Sublimit for issuance of letters of credit under Revolving Facility*" } } }, "auth_ref": [] }, "bld_LineOfCreditFacilitySublimitAvailableForSwinglineLoans": { "xbrltype": "monetaryItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "LineOfCreditFacilitySublimitAvailableForSwinglineLoans", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtKeyTermsOfCreditAgreementDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the sublimit available for swingline loans under the credit facility.", "label": "Line of Credit Facility Sublimit Available for Swingline Loans", "verboseLabel": "Sublimit for swingline loans under Revolving Facility*" } } }, "auth_ref": [] }, "us-gaap_LineOfCreditFacilityTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LineOfCreditFacilityTable", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtOtherDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtRevolvingFacilityDetails" ], "lang": { "en-us": { "role": { "label": "Line of Credit Facility [Table]", "documentation": "Disclosure of information about short-term and long-term contractual arrangements with lender under which borrowing can occur up to maximum amount. Includes, but is not limited to, letter of credit, standby letter of credit, and revolving credit arrangement." } } }, "auth_ref": [ "r55", "r60", "r288", "r756", "r805" ] }, "us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtRevolvingFacilityDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails" ], "lang": { "en-us": { "role": { "label": "Line of Credit Facility, Unused Capacity, Commitment Fee Percentage", "terseLabel": "Commitment fee (as a percent)", "documentation": "The fee, expressed as a percentage of the line of credit facility, for available but unused credit capacity under the credit facility." } } }, "auth_ref": [] }, "dei_LocalPhoneNumber": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "LocalPhoneNumber", "presentation": [ "http://www.topbuild.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Local Phone Number", "documentation": "Local phone number for entity." } } }, "auth_ref": [] }, "us-gaap_LongTermDebt": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LongTermDebt", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtReconciliationDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails" ], "lang": { "en-us": { "role": { "label": "Long-term Debt.", "totalLabel": "Total debt, net of unamortized debt issuance costs", "verboseLabel": "Amount outstanding", "documentation": "Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt. Excludes lease obligation." } } }, "auth_ref": [ "r18", "r104", "r307", "r318", "r607", "r608", "r636", "r863" ] }, "us-gaap_LongTermDebtByMaturityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LongTermDebtByMaturityAbstract", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtScheduleOfDebtMaturityDetails" ], "lang": { "en-us": { "role": { "label": "Long-term Debt, Fiscal Year Maturity [Abstract]", "terseLabel": "Schedule of Debt Maturity by Years:" } } }, "auth_ref": [] }, "us-gaap_LongTermDebtCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LongTermDebtCurrent", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtReconciliationDetails", "http://www.topbuild.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Long-term Debt, Current Maturities", "terseLabel": "Current portion of long-term debt", "verboseLabel": "Less: current portion of long-term debt", "documentation": "Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt classified as current. Excludes lease obligation." } } }, "auth_ref": [ "r153" ] }, "bld_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFour": { "xbrltype": "monetaryItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFour", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtScheduleOfDebtMaturityDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing after 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, Maturities, Repayments of Principal after Year Four", "terseLabel": "Thereafter" } } }, "auth_ref": [] }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtScheduleOfDebtMaturityDetails" ], "lang": { "en-us": { "role": { "label": "Long-term Debt, Maturities, Repayments of Principal in Next Twelve Months", "terseLabel": "2025", "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r9", "r180", "r311" ] }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtScheduleOfDebtMaturityDetails" ], "lang": { "en-us": { "role": { "label": "Long-term Debt, Maturities, Repayments of Principal in Year Two", "terseLabel": "2026", "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r9", "r180", "r311" ] }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtScheduleOfDebtMaturityDetails" ], "lang": { "en-us": { "role": { "label": "Long-term Debt, Maturities, Repayments of Principal, Remainder of Fiscal Year", "terseLabel": "2024", "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." } } }, "auth_ref": [ "r758" ] }, "us-gaap_LongTermDebtNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LongTermDebtNoncurrent", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtReconciliationDetails", "http://www.topbuild.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Long-term Debt, Excluding Current Maturities", "terseLabel": "Long-term debt", "verboseLabel": "Total long-term debt", "documentation": "Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt classified as noncurrent. Excludes lease obligation." } } }, "auth_ref": [ "r155" ] }, "us-gaap_LongTermDebtOtherDisclosuresAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LongTermDebtOtherDisclosuresAbstract", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtOtherDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtRevolvingFacilityDetails" ], "lang": { "en-us": { "role": { "label": "Long-term Debt, Other Disclosures [Abstract]", "terseLabel": "Debt covenants" } } }, "auth_ref": [] }, "us-gaap_LongTermDebtTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LongTermDebtTextBlock", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebt" ], "lang": { "en-us": { "role": { "label": "Long-term Debt [Text Block]", "terseLabel": "Long-Term Debt", "documentation": "The entire disclosure for long-term debt." } } }, "auth_ref": [ "r96" ] }, "bld_LongTermIncentivePlanMember": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "LongTermIncentivePlanMember", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationExpenseDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information related to the 2015 plan.", "label": "2015 Plan" } } }, "auth_ref": [] }, "us-gaap_LongtermDebtTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LongtermDebtTypeAxis", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtKeyTermsOfCreditAgreementDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtOtherDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtReconciliationDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtRevolvingFacilityDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtScheduleOfDebtMaturityDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails" ], "lang": { "en-us": { "role": { "label": "Long-term Debt, Type [Axis]", "documentation": "Information by type of long-term debt." } } }, "auth_ref": [ "r18", "r798", "r799", "r800" ] }, "us-gaap_LongtermDebtTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LongtermDebtTypeDomain", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtKeyTermsOfCreditAgreementDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtOtherDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtReconciliationDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtRevolvingFacilityDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtScheduleOfDebtMaturityDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails" ], "lang": { "en-us": { "role": { "label": "Long-term Debt, Type [Domain]", "documentation": "Type of long-term debt arrangement, such as notes, line of credit, commercial paper, asset-based financing, project financing, letter of credit financing. These are debt arrangements that originally required repayment more than twelve months after issuance or greater than the normal operating cycle of the company, if longer." } } }, "auth_ref": [ "r18", "r32", "r798", "r799", "r800" ] }, "srt_MajorCustomersAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "MajorCustomersAxis", "presentation": [ "http://www.topbuild.com/role/DisclosureRevenueRecognitionDisaggregationDetails" ], "lang": { "en-us": { "role": { "label": "Customer [Axis]", "documentation": "Information by name or description of a single external customer or a group of external customers." } } }, "auth_ref": [ "r242", "r614", "r640", "r644", "r814", "r864", "r867", "r868", "r870", "r871", "r872", "r873", "r874", "r875", "r876", "r877", "r878", "r879", "r880", "r881", "r882", "r883", "r884", "r885", "r886", "r887", "r888", "r889", "r890", "r891", "r892", "r893", "r894" ] }, "srt_MaximumMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "MaximumMember", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtKeyTermsOfCreditAgreementDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtRevolvingFacilityDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails", "http://www.topbuild.com/role/DisclosureShareBasedCompensationExpenseDetails" ], "lang": { "en-us": { "role": { "label": "Maximum", "terseLabel": "Maximum", "documentation": "Upper limit of the provided range." } } }, "auth_ref": [ "r119", "r120", "r121", "r122", "r123", "r141", "r142", "r284", "r285", "r286", "r287", "r344", "r383", "r431", "r468", "r513", "r514", "r521", "r529", "r530", "r579", "r580", "r581", "r582", "r583", "r585", "r586", "r603", "r611", "r624", "r632", "r633", "r634", "r635", "r641", "r809", "r857", "r858", "r859", "r860", "r861", "r862" ] }, "ecd_MeasureAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "MeasureAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Measure [Axis]", "terseLabel": "Measure:" } } }, "auth_ref": [ "r706" ] }, "ecd_MeasureName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "MeasureName", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Measure Name", "terseLabel": "Name" } } }, "auth_ref": [ "r706" ] }, "srt_MinimumMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "MinimumMember", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtKeyTermsOfCreditAgreementDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtRevolvingFacilityDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails" ], "lang": { "en-us": { "role": { "label": "Minimum", "terseLabel": "Minimum", "documentation": "Lower limit of the provided range." } } }, "auth_ref": [ "r119", "r120", "r121", "r122", "r123", "r141", "r142", "r284", "r285", "r286", "r287", "r344", "r383", "r431", "r468", "r513", "r514", "r521", "r529", "r530", "r579", "r580", "r581", "r582", "r583", "r585", "r586", "r603", "r611", "r624", "r632", "r633", "r634", "r641", "r809", "r857", "r858", "r859", "r860", "r861", "r862" ] }, "bld_MinimumPercentageOfDebtImmediatelyDueAndPayable": { "xbrltype": "percentItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "MinimumPercentageOfDebtImmediatelyDueAndPayable", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtOtherDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtRevolvingFacilityDetails" ], "lang": { "en-us": { "role": { "documentation": "The percentage of debtholders needed to declare outstanding principal and accrued interest, if any, immediately due and payable upon an event of default.", "label": "Minimum Percentage of Debt Immediately Due and Payable", "terseLabel": "Minimum percentage of principal of debt holders to declare debt immediately due and payable" } } }, "auth_ref": [] }, "ecd_MnpiDiscTimedForCompValFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "MnpiDiscTimedForCompValFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "MNPI Disclosure Timed for Compensation Value [Flag]", "terseLabel": "MNPI Disclosure Timed for Compensation Value" } } }, "auth_ref": [ "r725" ] }, "bld_MorrisBlackMember": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "MorrisBlackMember", "presentation": [ "http://www.topbuild.com/role/DisclosureBusinessCombinationsSummaryDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to Morris Black, a residential insulation business.", "label": "Morris Black [Member]", "terseLabel": "Morris Black" } } }, "auth_ref": [] }, "ecd_MtrlTermsOfTrdArrTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "MtrlTermsOfTrdArrTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Material Terms of Trading Arrangement [Text Block]", "terseLabel": "Material Terms of Trading Arrangement" } } }, "auth_ref": [ "r733" ] }, "srt_NameOfMajorCustomerDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "NameOfMajorCustomerDomain", "presentation": [ "http://www.topbuild.com/role/DisclosureRevenueRecognitionDisaggregationDetails" ], "lang": { "en-us": { "role": { "label": "Customer [Domain]", "documentation": "Single external customer or group of external customers." } } }, "auth_ref": [ "r242", "r614", "r640", "r644", "r814", "r864", "r867", "r868", "r870", "r871", "r872", "r873", "r874", "r875", "r876", "r877", "r878", "r879", "r880", "r881", "r882", "r883", "r884", "r885", "r886", "r887", "r888", "r889", "r890", "r891", "r892", "r893", "r894" ] }, "ecd_NamedExecutiveOfficersFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "NamedExecutiveOfficersFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Named Executive Officers, Footnote [Text Block]", "terseLabel": "Named Executive Officers, Footnote" } } }, "auth_ref": [ "r707" ] }, "us-gaap_NetCashProvidedByUsedInFinancingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetCashProvidedByUsedInFinancingActivities", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Financing Activities, Continuing Operations", "totalLabel": "Net cash used in financing activities", "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit." } } }, "auth_ref": [ "r175" ] }, "us-gaap_NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetCashProvidedByUsedInFinancingActivitiesContinuingOperationsAbstract", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Financing Activities, Continuing Operations [Abstract]", "terseLabel": "Cash Flows Provided by (Used in) Financing Activities:" } } }, "auth_ref": [] }, "us-gaap_NetCashProvidedByUsedInInvestingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetCashProvidedByUsedInInvestingActivities", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Investing Activities, Continuing Operations", "totalLabel": "Net cash used in investing activities", "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets." } } }, "auth_ref": [ "r175" ] }, "us-gaap_NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetCashProvidedByUsedInInvestingActivitiesContinuingOperationsAbstract", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Investing Activities, Continuing Operations [Abstract]", "terseLabel": "Cash Flows Provided by (Used in) Investing Activities:" } } }, "auth_ref": [] }, "us-gaap_NetCashProvidedByUsedInOperatingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetCashProvidedByUsedInOperatingActivities", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Operating Activities, Continuing Operations", "totalLabel": "Net cash provided by operating activities", "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities." } } }, "auth_ref": [ "r89", "r90", "r91" ] }, "us-gaap_NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetCashProvidedByUsedInOperatingActivitiesContinuingOperationsAbstract", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Operating Activities, Continuing Operations [Abstract]", "terseLabel": "Cash Flows Provided by (Used in) Operating Activities:" } } }, "auth_ref": [] }, "us-gaap_NetIncomeLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetIncomeLoss", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/DisclosureNetIncomePerShareCalculationDetails", "http://www.topbuild.com/role/StatementConsolidatedStatementsOfChangesInShareholdersEquity", "http://www.topbuild.com/role/StatementConsolidatedStatementsOfComprehensiveIncome", "http://www.topbuild.com/role/StatementConsolidatedStatementsOfOperations", "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "totalLabel": "Net income", "verboseLabel": "Net income", "label": "Net Income (Loss)", "terseLabel": "Net Income (Loss)", "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent." } } }, "auth_ref": [ "r80", "r91", "r108", "r145", "r161", "r164", "r168", "r178", "r184", "r186", "r187", "r188", "r189", "r190", "r193", "r194", "r200", "r245", "r289", "r290", "r292", "r293", "r294", "r295", "r296", "r298", "r299", "r404", "r409", "r425", "r443", "r489", "r559", "r574", "r575", "r655", "r807" ] }, "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock", "presentation": [ "http://www.topbuild.com/role/DisclosureAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "New Accounting Pronouncements, Policy [Policy Text Block]", "terseLabel": "Recently Issued Accounting Pronouncements Not Yet Adopted", "documentation": "Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact." } } }, "auth_ref": [] }, "ecd_NonGaapMeasureDescriptionTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "NonGaapMeasureDescriptionTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Non-GAAP Measure Description [Text Block]", "terseLabel": "Non-GAAP Measure Description" } } }, "auth_ref": [ "r706" ] }, "ecd_NonNeosMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "NonNeosMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Non-NEOs [Member]", "terseLabel": "Non-NEOs" } } }, "auth_ref": [ "r670", "r680", "r690", "r714", "r722" ] }, "ecd_NonPeoNeoAvgCompActuallyPaidAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "NonPeoNeoAvgCompActuallyPaidAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Non-PEO NEO Average Compensation Actually Paid Amount", "terseLabel": "Non-PEO NEO Average Compensation Actually Paid Amount" } } }, "auth_ref": [ "r697" ] }, "ecd_NonPeoNeoAvgTotalCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "NonPeoNeoAvgTotalCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Non-PEO NEO Average Total Compensation Amount", "terseLabel": "Non-PEO NEO Average Total Compensation Amount" } } }, "auth_ref": [ "r696" ] }, "ecd_NonPeoNeoMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "NonPeoNeoMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Non-PEO NEO [Member]", "terseLabel": "Non-PEO NEO" } } }, "auth_ref": [ "r714" ] }, "ecd_NonRule10b51ArrAdoptedFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "NonRule10b51ArrAdoptedFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Non-Rule 10b5-1 Arrangement Adopted [Flag]", "terseLabel": "Non-Rule 10b5-1 Arrangement Adopted" } } }, "auth_ref": [ "r733" ] }, "ecd_NonRule10b51ArrTrmntdFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "NonRule10b51ArrTrmntdFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Non-Rule 10b5-1 Arrangement Terminated [Flag]", "terseLabel": "Non-Rule 10b5-1 Arrangement Terminated" } } }, "auth_ref": [ "r733" ] }, "us-gaap_NonoperatingIncomeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NonoperatingIncomeExpense", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/DisclosureSegmentInformationDetails", "http://www.topbuild.com/role/StatementConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "label": "Nonoperating Income (Expense)", "totalLabel": "Other expense, net", "verboseLabel": "Other expense, net", "documentation": "The aggregate amount of income or expense from ancillary business-related activities (that is to say, excluding major activities considered part of the normal operations of the business)." } } }, "auth_ref": [ "r82" ] }, "us-gaap_NonoperatingIncomeExpenseAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NonoperatingIncomeExpenseAbstract", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "label": "Nonoperating Income (Expense) [Abstract]", "terseLabel": "Other income (expense), net:" } } }, "auth_ref": [] }, "us-gaap_NumberOfReportableSegments": { "xbrltype": "integerItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NumberOfReportableSegments", "presentation": [ "http://www.topbuild.com/role/DisclosureBasisOfPresentationDetails" ], "lang": { "en-us": { "role": { "label": "Number of Reportable Segments", "terseLabel": "Number of reportable segments", "documentation": "Number of segments reported by the entity. A reportable segment is a component of an entity for which there is an accounting requirement to report separate financial information on that component in the entity's financial statements." } } }, "auth_ref": [ "r594", "r602", "r766" ] }, "us-gaap_NumberOfReportingUnits": { "xbrltype": "integerItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NumberOfReportingUnits", "presentation": [ "http://www.topbuild.com/role/DisclosureGoodwillAndOtherIntangiblesGoodwillDetails" ], "lang": { "en-us": { "role": { "label": "Number of Reporting Units", "terseLabel": "Number of reporting units", "documentation": "Number of reporting units tested for impairment of goodwill. A reporting unit is an operating segment or one level below an operating segment." } } }, "auth_ref": [] }, "us-gaap_OperatingExpenses": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingExpenses", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/DisclosureSegmentInformationDetails" ], "lang": { "en-us": { "role": { "label": "Operating Expenses", "terseLabel": "General corporate expense, net", "documentation": "Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Includes selling, general and administrative expense." } } }, "auth_ref": [] }, "us-gaap_OperatingIncomeLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingIncomeLoss", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/DisclosureSegmentInformationDetails", "http://www.topbuild.com/role/StatementConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "label": "Operating Income (Loss)", "totalLabel": "Operating profit", "verboseLabel": "Operating profit as, reported", "documentation": "The net result for the period of deducting operating expenses from operating revenues." } } }, "auth_ref": [ "r112", "r593", "r765", "r767", "r769", "r770", "r771" ] }, "us-gaap_OperatingLeaseLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingLeaseLiabilityCurrent", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Liability, Current", "terseLabel": "Short-term operating lease liabilities", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current." } } }, "auth_ref": [ "r460" ] }, "us-gaap_OperatingLeaseLiabilityNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingLeaseLiabilityNoncurrent", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Liability, Noncurrent", "terseLabel": "Long-term operating lease liabilities", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent." } } }, "auth_ref": [ "r460" ] }, "us-gaap_OperatingLeaseRightOfUseAsset": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingLeaseRightOfUseAsset", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Right-of-Use Asset", "terseLabel": "Right of use assets", "documentation": "Amount of lessee's right to use underlying asset under operating lease." } } }, "auth_ref": [ "r459" ] }, "us-gaap_OperatingSegmentsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingSegmentsMember", "presentation": [ "http://www.topbuild.com/role/DisclosureRevenueRecognitionDisaggregationDetails", "http://www.topbuild.com/role/DisclosureSegmentInformationDetails" ], "lang": { "en-us": { "role": { "label": "Operating Segment", "terseLabel": "Operating Segment", "documentation": "Identifies components of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity." } } }, "auth_ref": [ "r230", "r231", "r232", "r233", "r234", "r237", "r598", "r599" ] }, "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract", "lang": { "en-us": { "role": { "label": "Basis of Presentation" } } }, "auth_ref": [] }, "us-gaap_OtherAccruedLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherAccruedLiabilitiesCurrent", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/DisclosureAccruedLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Other Accrued Liabilities, Current", "terseLabel": "Other", "documentation": "Amount of expenses incurred but not yet paid classified as other, due within one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r57" ] }, "us-gaap_OtherAssetsNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherAssetsNoncurrent", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Other Assets, Noncurrent", "terseLabel": "Other assets", "documentation": "Amount of noncurrent assets classified as other." } } }, "auth_ref": [ "r151" ] }, "us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Gain (Loss) Arising During Period, Net of Tax", "verboseLabel": "Foreign currency translation adjustment", "documentation": "Amount after tax, before reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature." } } }, "auth_ref": [ "r4", "r72", "r73", "r74", "r444", "r445", "r447" ] }, "us-gaap_OtherComprehensiveIncomeLossNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherComprehensiveIncomeLossNetOfTax", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfChangesInShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Other Comprehensive Income (Loss), Net of Tax", "terseLabel": "Other comprehensive income (loss), net of tax", "documentation": "Amount after tax and reclassification adjustments of other comprehensive income (loss)." } } }, "auth_ref": [ "r12", "r17", "r162", "r165", "r169", "r190", "r448", "r449", "r454", "r475", "r490", "r751", "r752" ] }, "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Other Comprehensive Income (Loss), Net of Tax [Abstract]", "terseLabel": "Other comprehensive (loss) income:" } } }, "auth_ref": [] }, "us-gaap_OtherLiabilitiesNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherLiabilitiesNoncurrent", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Other Liabilities, Noncurrent", "terseLabel": "Other liabilities", "documentation": "Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r62" ] }, "us-gaap_OtherNoncashInvestingAndFinancingItemsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherNoncashInvestingAndFinancingItemsAbstract", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Other Noncash Investing and Financing Items [Abstract]", "terseLabel": "Supplemental disclosure of noncash activities:" } } }, "auth_ref": [] }, "us-gaap_OtherNonoperatingIncomeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherNonoperatingIncomeExpense", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "label": "Other Nonoperating Income (Expense)", "terseLabel": "Other, net", "documentation": "Amount of income (expense) related to nonoperating activities, classified as other." } } }, "auth_ref": [ "r84" ] }, "us-gaap_OtherOperatingActivitiesCashFlowStatement": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherOperatingActivitiesCashFlowStatement", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Other Operating Activities, Cash Flow Statement", "terseLabel": "Other, net", "documentation": "Other cash or noncash adjustments to reconcile net income to cash provided by (used in) operating activities that are not separately disclosed in the statement of cash flows (for example, cash received or cash paid during the current period for miscellaneous operating activities, net change during the reporting period in other assets or other liabilities)." } } }, "auth_ref": [] }, "ecd_OtherPerfMeasureAmt": { "xbrltype": "decimalItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "OtherPerfMeasureAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Other Performance Measure, Amount", "terseLabel": "Other Performance Measure, Amount" } } }, "auth_ref": [ "r706" ] }, "ecd_OutstandingAggtErrCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "OutstandingAggtErrCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Outstanding Aggregate Erroneous Compensation Amount", "terseLabel": "Outstanding Aggregate Erroneous Compensation Amount" } } }, "auth_ref": [ "r668", "r678", "r688", "r720" ] }, "ecd_OutstandingRecoveryCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "OutstandingRecoveryCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Outstanding Recovery Compensation Amount", "terseLabel": "Compensation Amount" } } }, "auth_ref": [ "r671", "r681", "r691", "r723" ] }, "ecd_OutstandingRecoveryIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "OutstandingRecoveryIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Outstanding Recovery, Individual Name", "terseLabel": "Name" } } }, "auth_ref": [ "r671", "r681", "r691", "r723" ] }, "ecd_PayVsPerformanceDisclosureLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PayVsPerformanceDisclosureLineItems", "lang": { "en-us": { "role": { "label": "Pay vs Performance Disclosure [Line Items]", "terseLabel": "Pay vs Performance Disclosure" } } }, "auth_ref": [ "r695" ] }, "us-gaap_PayablesAndAccrualsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PayablesAndAccrualsAbstract", "lang": { "en-us": { "role": { "label": "Accrued Liabilities." } } }, "auth_ref": [] }, "us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PaymentForContingentConsiderationLiabilityFinancingActivities", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Payment for Contingent Consideration Liability, Financing Activities", "negatedLabel": "Payment of contingent consideration", "documentation": "Amount of cash outflow, not made soon after acquisition date of business combination, to settle contingent consideration liability up to amount recognized at acquisition date, including, but not limited to, measurement period adjustment and less amount paid soon after acquisition date." } } }, "auth_ref": [ "r6" ] }, "us-gaap_PaymentsForRepurchaseOfCommonStock": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PaymentsForRepurchaseOfCommonStock", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Payments for Repurchase of Common Stock", "negatedLabel": "Repurchase of shares of common stock", "documentation": "The cash outflow to reacquire common stock during the period." } } }, "auth_ref": [ "r87" ] }, "us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PaymentsRelatedToTaxWithholdingForShareBasedCompensation", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Payments Related to Tax Withholding for Share-based Compensation", "negatedLabel": "Taxes withheld and paid on employees' equity awards", "documentation": "Amount of cash outflow to satisfy grantee's tax withholding obligation for award under share-based payment arrangement." } } }, "auth_ref": [ "r173" ] }, "us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PaymentsToAcquireBusinessesNetOfCashAcquired", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Payments to Acquire Businesses, Net of Cash Acquired", "negatedTerseLabel": "Acquisition of businesses, net of cash acquired", "documentation": "The cash outflow associated with the acquisition of a business, net of the cash acquired from the purchase." } } }, "auth_ref": [ "r22" ] }, "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PaymentsToAcquirePropertyPlantAndEquipment", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Payments to Acquire Property, Plant, and Equipment", "negatedLabel": "Purchases of property and equipment", "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets." } } }, "auth_ref": [ "r86" ] }, "ecd_PeerGroupIssuersFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PeerGroupIssuersFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Peer Group Issuers, Footnote [Text Block]", "terseLabel": "Peer Group Issuers, Footnote" } } }, "auth_ref": [ "r705" ] }, "ecd_PeerGroupTotalShareholderRtnAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PeerGroupTotalShareholderRtnAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Peer Group Total Shareholder Return Amount", "terseLabel": "Peer Group Total Shareholder Return Amount" } } }, "auth_ref": [ "r705" ] }, "ecd_PeoActuallyPaidCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PeoActuallyPaidCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "PEO Actually Paid Compensation Amount", "terseLabel": "PEO Actually Paid Compensation Amount" } } }, "auth_ref": [ "r697" ] }, "ecd_PeoMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PeoMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "PEO [Member]", "terseLabel": "PEO" } } }, "auth_ref": [ "r714" ] }, "ecd_PeoName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PeoName", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "PEO Name", "terseLabel": "PEO Name" } } }, "auth_ref": [ "r707" ] }, "ecd_PeoTotalCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PeoTotalCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "PEO Total Compensation Amount", "terseLabel": "PEO Total Compensation Amount" } } }, "auth_ref": [ "r696" ] }, "us-gaap_PlanNameAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PlanNameAxis", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationExpenseDetails" ], "lang": { "en-us": { "role": { "label": "Plan Name [Axis]", "documentation": "Information by plan name for share-based payment arrangement." } } }, "auth_ref": [ "r815", "r816", "r817", "r818", "r819", "r820", "r821", "r822", "r823", "r824", "r825", "r826", "r827", "r828", "r829", "r830", "r831", "r832", "r833", "r834", "r835", "r836", "r837", "r838", "r839", "r840" ] }, "us-gaap_PlanNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PlanNameDomain", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationExpenseDetails" ], "lang": { "en-us": { "role": { "label": "Plan Name [Domain]", "documentation": "Plan name for share-based payment arrangement." } } }, "auth_ref": [ "r815", "r816", "r817", "r818", "r819", "r820", "r821", "r822", "r823", "r824", "r825", "r826", "r827", "r828", "r829", "r830", "r831", "r832", "r833", "r834", "r835", "r836", "r837", "r838", "r839", "r840" ] }, "ecd_PnsnAdjsPrrSvcCstMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PnsnAdjsPrrSvcCstMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Pension Adjustments Prior Service Cost [Member]", "terseLabel": "Pension Adjustments Prior Service Cost" } } }, "auth_ref": [ "r698" ] }, "ecd_PnsnAdjsSvcCstMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PnsnAdjsSvcCstMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Pension Adjustments Service Cost [Member]", "terseLabel": "Pension Adjustments Service Cost" } } }, "auth_ref": [ "r742" ] }, "ecd_PnsnBnftsAdjFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PnsnBnftsAdjFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Pension Benefits Adjustments, Footnote [Text Block]", "terseLabel": "Pension Benefits Adjustments, Footnote" } } }, "auth_ref": [ "r697" ] }, "us-gaap_PreferredStockParOrStatedValuePerShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PreferredStockParOrStatedValuePerShare", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Preferred Stock, Par or Stated Value Per Share", "terseLabel": "Preferred stock, par value (in dollars per share)", "documentation": "Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer." } } }, "auth_ref": [ "r65", "r320" ] }, "us-gaap_PreferredStockSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PreferredStockSharesAuthorized", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Preferred Stock, Shares Authorized", "terseLabel": "Preferred stock, shares authorized", "documentation": "The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws." } } }, "auth_ref": [ "r65", "r539" ] }, "us-gaap_PreferredStockSharesIssued": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PreferredStockSharesIssued", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Preferred Stock, Shares Issued", "terseLabel": "Preferred stock, shares, issued", "documentation": "Number of shares issued for nonredeemable preferred shares and preferred shares redeemable solely at option of issuer. Includes, but is not limited to, preferred shares issued, repurchased, and held as treasury shares. Excludes preferred shares classified as debt." } } }, "auth_ref": [ "r65", "r320" ] }, "us-gaap_PreferredStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PreferredStockSharesOutstanding", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Preferred Stock, Shares Outstanding", "terseLabel": "Preferred stock, shares, outstanding", "documentation": "Aggregate share number for all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by stockholders. Does not include preferred shares that have been repurchased." } } }, "auth_ref": [ "r65", "r539", "r557", "r896", "r897" ] }, "us-gaap_PreferredStockValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PreferredStockValue", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Preferred Stock, Value, Issued", "terseLabel": "Preferred stock, $0.01 par value: 10,000,000 shares authorized; 0 shares issued and outstanding", "documentation": "Aggregate par or stated value of issued nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity." } } }, "auth_ref": [ "r65", "r482", "r638" ] }, "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PrepaidExpenseAndOtherAssetsCurrent", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Prepaid Expense and Other Assets, Current", "terseLabel": "Prepaid expenses and other current assets", "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r750" ] }, "us-gaap_ProceedsFromSaleOfProductiveAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProceedsFromSaleOfProductiveAssets", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Proceeds from Sale of Productive Assets", "terseLabel": "Proceeds from sale of assets", "documentation": "The cash inflow from the sale of property, plant and equipment (capital expenditures), software, and other intangible assets." } } }, "auth_ref": [ "r85" ] }, "us-gaap_ProceedsFromStockOptionsExercised": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProceedsFromStockOptionsExercised", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Proceeds from Stock Options Exercised", "terseLabel": "Exercise of stock options", "documentation": "Amount of cash inflow from exercise of option under share-based payment arrangement." } } }, "auth_ref": [ "r5", "r15" ] }, "srt_ProductOrServiceAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "ProductOrServiceAxis", "presentation": [ "http://www.topbuild.com/role/DisclosureRevenueRecognitionDisaggregationDetails" ], "lang": { "en-us": { "role": { "label": "Products and Services [Axis]", "documentation": "Information by product and service, or group of similar products and similar services." } } }, "auth_ref": [ "r124", "r125", "r126", "r127", "r128", "r129", "r139", "r239", "r470", "r506", "r507", "r508", "r509", "r510", "r511", "r512", "r588", "r612", "r639", "r641", "r642", "r645", "r646", "r749", "r803", "r804", "r814", "r864", "r867", "r868", "r869", "r870", "r871", "r872", "r873", "r874", "r875", "r876", "r877", "r878", "r879", "r880", "r881", "r882", "r883", "r884", "r885", "r886", "r887", "r888", "r889", "r890", "r891", "r892", "r893", "r894" ] }, "srt_ProductsAndServicesDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "ProductsAndServicesDomain", "presentation": [ "http://www.topbuild.com/role/DisclosureRevenueRecognitionDisaggregationDetails" ], "lang": { "en-us": { "role": { "label": "Products and Services [Domain]", "documentation": "Product or service, or a group of similar products or similar services." } } }, "auth_ref": [ "r124", "r125", "r126", "r127", "r128", "r129", "r139", "r239", "r470", "r506", "r507", "r508", "r509", "r510", "r511", "r512", "r588", "r612", "r639", "r641", "r642", "r645", "r646", "r749", "r803", "r804", "r814", "r864", "r867", "r868", "r869", "r870", "r871", "r872", "r873", "r874", "r875", "r876", "r877", "r878", "r879", "r880", "r881", "r882", "r883", "r884", "r885", "r886", "r887", "r888", "r889", "r890", "r891", "r892", "r893", "r894" ] }, "us-gaap_ProfitLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProfitLoss", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Income (Loss), Including Portion Attributable to Noncontrolling Interest", "terseLabel": "Net income", "documentation": "The consolidated profit or loss for the period, net of income taxes, including the portion attributable to the noncontrolling interest." } } }, "auth_ref": [ "r145", "r161", "r164", "r174", "r178", "r184", "r190", "r193", "r194", "r245", "r289", "r290", "r292", "r293", "r294", "r295", "r296", "r298", "r299", "r404", "r409", "r410", "r413", "r414", "r425", "r443", "r478", "r488", "r526", "r559", "r574", "r575", "r628", "r629", "r656", "r753", "r807" ] }, "us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Property, Plant, and Equipment and Finance Lease Right-of-Use Asset, after Accumulated Depreciation and Amortization", "terseLabel": "Property and equipment, net", "documentation": "Amount, after accumulated depreciation and amortization, of property, plant, and equipment and finance lease right-of-use asset." } } }, "auth_ref": [ "r746", "r796" ] }, "us-gaap_ProvisionForDoubtfulAccounts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProvisionForDoubtfulAccounts", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Provision for Doubtful Accounts", "terseLabel": "Provision for bad debt expense", "documentation": "Amount of expense (reversal of expense) for expected credit loss on accounts receivable." } } }, "auth_ref": [ "r172", "r249" ] }, "ecd_PvpTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PvpTable", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Pay vs Performance Disclosure [Table]", "terseLabel": "Pay vs Performance Disclosure" } } }, "auth_ref": [ "r695" ] }, "ecd_PvpTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PvpTableTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Pay vs Performance [Table Text Block]", "terseLabel": "Pay vs Performance Disclosure, Table" } } }, "auth_ref": [ "r695" ] }, "bld_RainGuttersMember": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "RainGuttersMember", "presentation": [ "http://www.topbuild.com/role/DisclosureRevenueRecognitionDisaggregationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the information pertaining to Rain gutter product.", "label": "Gutters" } } }, "auth_ref": [] }, "srt_RangeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "RangeAxis", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtKeyTermsOfCreditAgreementDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtRevolvingFacilityDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails", "http://www.topbuild.com/role/DisclosureShareBasedCompensationExpenseDetails" ], "lang": { "en-us": { "role": { "label": "Range [Axis]", "documentation": "Information by statistical measurement. Includes, but is not limited to, minimum, maximum, weighted average, arithmetic average, and median." } } }, "auth_ref": [ "r119", "r120", "r121", "r122", "r123", "r141", "r142", "r284", "r285", "r286", "r287", "r337", "r344", "r373", "r374", "r375", "r383", "r431", "r466", "r467", "r468", "r513", "r514", "r521", "r529", "r530", "r579", "r580", "r581", "r582", "r583", "r585", "r586", "r603", "r611", "r624", "r632", "r633", "r634", "r635", "r641", "r649", "r801", "r809", "r846", "r858", "r859", "r860", "r861", "r862" ] }, "srt_RangeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "RangeMember", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtKeyTermsOfCreditAgreementDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtRevolvingFacilityDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails", "http://www.topbuild.com/role/DisclosureShareBasedCompensationExpenseDetails" ], "lang": { "en-us": { "role": { "label": "Range [Domain]", "documentation": "Statistical measurement. Includes, but is not limited to, minimum, maximum, weighted average, arithmetic average, and median." } } }, "auth_ref": [ "r119", "r120", "r121", "r122", "r123", "r141", "r142", "r284", "r285", "r286", "r287", "r337", "r344", "r373", "r374", "r375", "r383", "r431", "r466", "r467", "r468", "r513", "r514", "r521", "r529", "r530", "r579", "r580", "r581", "r582", "r583", "r585", "r586", "r603", "r611", "r624", "r632", "r633", "r634", "r635", "r641", "r649", "r801", "r809", "r846", "r858", "r859", "r860", "r861", "r862" ] }, "bld_ReceivablesNetMember": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "ReceivablesNetMember", "presentation": [ "http://www.topbuild.com/role/DisclosureRevenueRecognitionOtherDetails" ], "lang": { "en-us": { "role": { "documentation": "Due from customers or clients for goods or services that have been delivered or sold, net of allowance for doubtful accounts.", "label": "Receivables, net", "terseLabel": "Receivables, net" } } }, "auth_ref": [] }, "ecd_RecoveryOfErrCompDisclosureLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "RecoveryOfErrCompDisclosureLineItems", "lang": { "en-us": { "role": { "label": "Recovery of Erroneously Awarded Compensation Disclosure [Line Items]", "terseLabel": "Recovery of Erroneously Awarded Compensation Disclosure" } } }, "auth_ref": [ "r663", "r673", "r683", "r715" ] }, "us-gaap_RepaymentsOfLongTermDebt": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RepaymentsOfLongTermDebt", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Repayments of Long-term Debt", "negatedLabel": "Repayment of long-term debt", "documentation": "The cash outflow for debt initially having maturity due after one year or beyond the normal operating cycle, if longer." } } }, "auth_ref": [ "r88", "r523" ] }, "bld_ResidentialMember": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "ResidentialMember", "presentation": [ "http://www.topbuild.com/role/DisclosureRevenueRecognitionDisaggregationDetails" ], "lang": { "en-us": { "role": { "documentation": "Information pertaining to the residential market.", "label": "Residential", "terseLabel": "Residential" } } }, "auth_ref": [] }, "ecd_RestatementDateAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "RestatementDateAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Restatement Determination Date [Axis]", "terseLabel": "Restatement Determination Date:" } } }, "auth_ref": [ "r664", "r674", "r684", "r716" ] }, "ecd_RestatementDeterminationDate": { "xbrltype": "dateItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "RestatementDeterminationDate", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Restatement Determination Date", "terseLabel": "Restatement Determination Date" } } }, "auth_ref": [ "r665", "r675", "r685", "r717" ] }, "ecd_RestatementDoesNotRequireRecoveryTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "RestatementDoesNotRequireRecoveryTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Restatement Does Not Require Recovery [Text Block]", "terseLabel": "Restatement does not require Recovery" } } }, "auth_ref": [ "r672", "r682", "r692", "r724" ] }, "bld_RestrictedStockAwardsGrantedFebruary2021Member": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "RestrictedStockAwardsGrantedFebruary2021Member", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "documentation": "Information pertaining to restricted stock awards granted on February 16, 2021.", "label": "Restricted Stock Awards Granted February 2021 [Member]", "terseLabel": "RSAs granted February 16, 2021" } } }, "auth_ref": [] }, "us-gaap_RestrictedStockMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RestrictedStockMember", "presentation": [ "http://www.topbuild.com/role/DisclosureNetIncomePerShareAntiDilutiveCommonStockEquivalentsDetails", "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails", "http://www.topbuild.com/role/DisclosureShareBasedCompensationTables" ], "lang": { "en-us": { "role": { "label": "Restricted Stock Awards", "documentation": "Stock including a provision that prohibits sale or substantive sale of an equity instrument for a specified period of time or until specified performance conditions are met." } } }, "auth_ref": [ "r27" ] }, "us-gaap_RetainedEarningsAccumulatedDeficit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RetainedEarningsAccumulatedDeficit", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Retained Earnings (Accumulated Deficit)", "terseLabel": "Retained earnings", "documentation": "Amount of accumulated undistributed earnings (deficit)." } } }, "auth_ref": [ "r68", "r99", "r485", "r518", "r520", "r524", "r540", "r638" ] }, "us-gaap_RetainedEarningsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RetainedEarningsMember", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfChangesInShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Retained Earnings", "terseLabel": "Retained Earnings", "documentation": "Accumulated undistributed earnings (deficit)." } } }, "auth_ref": [ "r143", "r181", "r182", "r183", "r185", "r190", "r192", "r194", "r246", "r247", "r277", "r394", "r395", "r401", "r402", "r403", "r405", "r408", "r409", "r417", "r419", "r420", "r422", "r423", "r457", "r458", "r515", "r517", "r527", "r896" ] }, "us-gaap_RevenueFromContractWithCustomerAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenueFromContractWithCustomerAbstract", "lang": { "en-us": { "role": { "label": "Revenue Recognition" } } }, "auth_ref": [] }, "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenueFromContractWithCustomerExcludingAssessedTax", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/DisclosureRevenueRecognitionDisaggregationDetails", "http://www.topbuild.com/role/DisclosureSegmentInformationDetails", "http://www.topbuild.com/role/StatementConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "label": "Revenues", "terseLabel": "Net sales", "documentation": "Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise." } } }, "auth_ref": [ "r110", "r111", "r208", "r215", "r216", "r230", "r236", "r239", "r241", "r242", "r333", "r334", "r470" ] }, "us-gaap_RevenueFromContractWithCustomerTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenueFromContractWithCustomerTextBlock", "presentation": [ "http://www.topbuild.com/role/DisclosureRevenueRecognition" ], "lang": { "en-us": { "role": { "label": "Revenue from Contract with Customer [Text Block]", "terseLabel": "Revenue Recognition", "documentation": "The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts." } } }, "auth_ref": [ "r117", "r325", "r326", "r327", "r328", "r329", "r330", "r331", "r332", "r336" ] }, "us-gaap_RevenuePerformanceObligationSatisfiedOverTimeAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenuePerformanceObligationSatisfiedOverTimeAbstract", "presentation": [ "http://www.topbuild.com/role/DisclosureRevenueRecognitionOtherDetails" ], "lang": { "en-us": { "role": { "label": "Revenue, Performance Obligation Satisfied over Time [Abstract]", "terseLabel": "Uncompleted Performance Obligations" } } }, "auth_ref": [] }, "us-gaap_RevenueRemainingPerformanceObligation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenueRemainingPerformanceObligation", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/DisclosureRevenueRecognitionOtherDetails" ], "lang": { "en-us": { "role": { "label": "Revenue, Remaining Performance Obligation, Amount", "terseLabel": "Amount remaining on uncompleted performance obligations", "documentation": "Amount of transaction price allocated to performance obligation that has not been recognized as revenue." } } }, "auth_ref": [ "r115" ] }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionExplanation": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionExplanation", "presentation": [ "http://www.topbuild.com/role/DisclosureRevenueRecognitionOtherDetails" ], "lang": { "en-us": { "role": { "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Explanation", "terseLabel": "Expected timing of satisfaction of performance obligations", "documentation": "Description of when remaining performance obligation is expected to be recognized as revenue." } } }, "auth_ref": [ "r331" ] }, "us-gaap_RevolvingCreditFacilityMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevolvingCreditFacilityMember", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtKeyTermsOfCreditAgreementDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtRevolvingFacilityDetails" ], "lang": { "en-us": { "role": { "label": "Revolving Facility", "terseLabel": "Revolving Facility", "documentation": "Arrangement in which loan proceeds can continuously be obtained following repayments, but the total amount borrowed cannot exceed a specified maximum amount." } } }, "auth_ref": [] }, "us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Right-of-Use Asset Obtained in Exchange for Operating Lease Liability", "terseLabel": "Leased assets obtained in exchange for new operating lease liabilities", "documentation": "Amount of increase in right-of-use asset obtained in exchange for operating lease liability." } } }, "auth_ref": [ "r461", "r637" ] }, "ecd_Rule10b51ArrAdoptedFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "Rule10b51ArrAdoptedFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Rule 10b5-1 Arrangement Adopted [Flag]", "terseLabel": "Rule 10b5-1 Arrangement Adopted" } } }, "auth_ref": [ "r733" ] }, "ecd_Rule10b51ArrTrmntdFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "Rule10b51ArrTrmntdFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Rule 10b5-1 Arrangement Terminated [Flag]", "terseLabel": "Rule 10b5-1 Arrangement Terminated" } } }, "auth_ref": [ "r733" ] }, "srt_ScenarioUnspecifiedDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "ScenarioUnspecifiedDomain", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtOtherDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtRevolvingFacilityDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails" ], "lang": { "en-us": { "role": { "label": "Scenario, Unspecified [Domain]", "documentation": "Scenario reported, distinguishing information from actual fact. Includes, but is not limited to, pro forma and forecast. Excludes actual facts." } } }, "auth_ref": [ "r140", "r195", "r345", "r744", "r762" ] }, "us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfAccruedLiabilitiesTableTextBlock", "presentation": [ "http://www.topbuild.com/role/DisclosureAccruedLiabilitiesTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Accrued Liabilities [Table Text Block]", "terseLabel": "Schedule of components of accrued liabilities", "documentation": "Tabular disclosure of the components of accrued liabilities." } } }, "auth_ref": [] }, "bld_ScheduleOfAcquiredFiniteLivedAndIndefiniteLivedIntangibleAssetTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "ScheduleOfAcquiredFiniteLivedAndIndefiniteLivedIntangibleAssetTableTextBlock", "presentation": [ "http://www.topbuild.com/role/DisclosureGoodwillAndOtherIntangiblesTables" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of finite lived and indefinite lived intangible assets.", "label": "Schedule of Acquired Finite-Lived and Indefinite-Lived Intangible Asset [Table Text Block]", "terseLabel": "Schedule of other intangible assets" } } }, "auth_ref": [] }, "us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable", "presentation": [ "http://www.topbuild.com/role/DisclosureNetIncomePerShareAntiDilutiveCommonStockEquivalentsDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table]", "documentation": "Disclosure of information about security that could potentially dilute basic earnings per share (EPS) in future that was not included in calculation of diluted EPS." } } }, "auth_ref": [ "r27" ] }, "us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock", "presentation": [ "http://www.topbuild.com/role/DisclosureNetIncomePerShareTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table Text Block]", "terseLabel": "Summary of shares excluded from the calculation of diluted income per share because their effect would have been anti-dilutive", "documentation": "Tabular disclosure of securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) in the future that were not included in the computation of diluted EPS because to do so would increase EPS amounts or decrease loss per share amounts for the period presented, by antidilutive securities." } } }, "auth_ref": [ "r27" ] }, "bld_ScheduleOfAvailabilityUnderRevolvingFacilityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "ScheduleOfAvailabilityUnderRevolvingFacilityTableTextBlock", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtTables" ], "lang": { "en-us": { "role": { "documentation": "Represents tabular information about the availability under the Revolving Facility.", "label": "Schedule of Availability Under Revolving Facility [Table Text Block]", "terseLabel": "Schedule of availability under the Revolving Facility" } } }, "auth_ref": [] }, "us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfBusinessAcquisitionsByAcquisitionTable", "presentation": [ "http://www.topbuild.com/role/DisclosureBusinessCombinationsSummaryDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Business Acquisitions, by Acquisition [Table]", "documentation": "Disclosure of information about business combination. Includes, but is not limited to, recognized asset and liability." } } }, "auth_ref": [ "r44", "r45", "r406" ] }, "us-gaap_ScheduleOfDebtTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfDebtTableTextBlock", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Debt [Table Text Block]", "terseLabel": "Reconciliation of principal balance of outstanding debt", "documentation": "Tabular disclosure of information pertaining to short-term and long-debt instruments or arrangements, including but not limited to identification of terms, features, collateral requirements and other information necessary to a fair presentation." } } }, "auth_ref": [] }, "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "presentation": [ "http://www.topbuild.com/role/DisclosureNetIncomePerShareTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]", "terseLabel": "Schedule of basic and diluted income per share", "documentation": "Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations." } } }, "auth_ref": [ "r764" ] }, "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationExpenseDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Table]", "documentation": "Disclosure of information about amount recognized for award under share-based payment arrangement. Includes, but is not limited to, amount expensed in statement of income or comprehensive income, amount capitalized in statement of financial position, and corresponding reporting line item in financial statements." } } }, "auth_ref": [ "r40" ] }, "us-gaap_ScheduleOfGoodwillTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfGoodwillTable", "presentation": [ "http://www.topbuild.com/role/DisclosureGoodwillAndOtherIntangiblesGoodwillDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Goodwill [Table]", "documentation": "Disclosure of information about goodwill, including, but not limited to, change from acquisition, sale, impairment, and other reason." } } }, "auth_ref": [ "r254", "r255", "r256", "r257", "r258", "r259", "r260", "r261", "r262", "r263", "r264", "r604" ] }, "us-gaap_ScheduleOfGoodwillTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfGoodwillTextBlock", "presentation": [ "http://www.topbuild.com/role/DisclosureGoodwillAndOtherIntangiblesTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Goodwill [Table Text Block]", "terseLabel": "Changes in the carrying amount of goodwill by segment", "documentation": "Tabular disclosure of goodwill by reportable segment and in total which includes a rollforward schedule." } } }, "auth_ref": [ "r604", "r775", "r776", "r777", "r778", "r779", "r780", "r781", "r782", "r783", "r784", "r785" ] }, "bld_ScheduleOfKeyFinancialCovenantsTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "ScheduleOfKeyFinancialCovenantsTableTextBlock", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtTables" ], "lang": { "en-us": { "role": { "documentation": "Represents tabular information about the key financial covenants.", "label": "Schedule of Key Financial Covenants [Table Text Block]", "terseLabel": "Schedule of the key financial covenants" } } }, "auth_ref": [] }, "us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Maturities of Long-term Debt [Table Text Block]", "verboseLabel": "Schedule of remaining principal payments of debt", "documentation": "Tabular disclosure of maturity and sinking fund requirement for long-term debt." } } }, "auth_ref": [ "r9" ] }, "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfSegmentReportingInformationBySegmentTable", "presentation": [ "http://www.topbuild.com/role/DisclosureSegmentInformationDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Segment Reporting Information, by Segment [Table]", "documentation": "Disclosure of information about profit (loss) and total assets by reportable segment." } } }, "auth_ref": [ "r28", "r29", "r30" ] }, "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfSegmentReportingInformationBySegmentTextBlock", "presentation": [ "http://www.topbuild.com/role/DisclosureSegmentInformationTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Segment Reporting Information, by Segment [Table Text Block]", "terseLabel": "Schedule of net sales and operating results by segment", "documentation": "Tabular disclosure of the profit or loss and total assets for each reportable segment. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss." } } }, "auth_ref": [ "r28", "r29", "r30" ] }, "us-gaap_ScheduleOfShareBasedCompensationActivityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfShareBasedCompensationActivityTableTextBlock", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Share-based Compensation, Activity [Table Text Block]", "terseLabel": "Schedule of share-based compensation activity", "documentation": "Tabular disclosure of activity for award under share-based payment arrangement. Includes, but is not limited to, outstanding award at beginning and end of year, granted, exercised, forfeited, and weighted-average grant date fair value." } } }, "auth_ref": [ "r13", "r14", "r100" ] }, "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails", "http://www.topbuild.com/role/DisclosureShareBasedCompensationTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]", "documentation": "Disclosure of information about share-based payment arrangement." } } }, "auth_ref": [ "r347", "r349", "r351", "r352", "r353", "r354", "r355", "r356", "r357", "r358", "r359", "r360", "r361", "r362", "r363", "r364", "r365", "r366", "r367", "r368", "r369", "r370", "r371", "r372", "r373", "r374", "r375", "r376" ] }, "bld_ScheduleOfShareBasedCompensationExpenseTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "ScheduleOfShareBasedCompensationExpenseTableTextBlock", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationTables" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of share-based compensation expense.", "label": "Schedule Of Share Based Compensation Expense Table Text Block", "terseLabel": "Schedule of share-based compensation expense and related income tax benefit" } } }, "auth_ref": [] }, "bld_ScheduleOfShareBasedPaymentAwardOtherThanOptionsValuationAssumptionsTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "ScheduleOfShareBasedPaymentAwardOtherThanOptionsValuationAssumptionsTableTextBlock", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationTables" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the significant assumptions used during the year to estimate the fair value of awards, other than options, including, but not limited to: (a) expected term, (b) expected volatility of the entity's shares, (c) expected dividends, (d) risk-free rate(s), and (e) discount for post-vesting restrictions.", "label": "Schedule of Share-based Payment Award, Other Than Options, Valuation Assumptions [Table Text Block]", "terseLabel": "Schedule of key inputs used to estimate the fair value of awards" } } }, "auth_ref": [] }, "bld_ScheduleOfShareBasedPaymentAwardRestrictedStockAwardsPayoutRangeAndRelatedExpenseTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "ScheduleOfShareBasedPaymentAwardRestrictedStockAwardsPayoutRangeAndRelatedExpenseTableTextBlock", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationTables" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of restricted stock awards with performance-based conditions relating to the grant date fair value, payout range and related expenses.", "label": "Schedule of Share-based Payment Award, Restricted Stock Awards, Payout Range and Related Expense [Table Text Block]", "terseLabel": "Schedule of the range of payouts and the related expense for RSAs with performance-based conditions" } } }, "auth_ref": [] }, "bld_ScheduleOfShareRepurchasesTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "ScheduleOfShareRepurchasesTableTextBlock", "presentation": [ "http://www.topbuild.com/role/DisclosureShareRepurchaseProgramTables" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of share repurchases under the Share Repurchase Program.", "label": "Schedule of Share Repurchases [Table Text Block]", "terseLabel": "Schedule of share repurchase program" } } }, "auth_ref": [] }, "bld_ScheduleOfUnrecognizedShareBasedCompensationExpenseNonvestedAwards": { "xbrltype": "textBlockItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "ScheduleOfUnrecognizedShareBasedCompensationExpenseNonvestedAwards", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationTables" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of unrecognized share-based compensation expense related to unvested awards.", "label": "Schedule of Unrecognized Share-based Compensation Expense, Nonvested Awards", "terseLabel": "Schedule of unrecognized share-based compensation expense relating to unvested awards" } } }, "auth_ref": [] }, "us-gaap_SecuredDebtMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SecuredDebtMember", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtKeyTermsOfCreditAgreementDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtReconciliationDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtScheduleOfDebtMaturityDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails" ], "lang": { "en-us": { "role": { "label": "Term Loan Facility", "terseLabel": "Term Loan Facility", "documentation": "Collateralized debt obligation backed by, for example, but not limited to, pledge, mortgage or other lien on the entity's assets." } } }, "auth_ref": [] }, "us-gaap_SecuredOvernightFinancingRateSofrMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SecuredOvernightFinancingRateSofrMember", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtKeyTermsOfCreditAgreementDetails" ], "lang": { "en-us": { "role": { "label": "Secured Overnight Financing Rate (SOFR) [Member]", "terseLabel": "SOFR", "documentation": "Interest rate at which bank can borrow U.S. dollar overnight while posting U.S. Treasury bond as collateral." } } }, "auth_ref": [ "r842" ] }, "dei_Security12bTitle": { "xbrltype": "securityTitleItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "Security12bTitle", "presentation": [ "http://www.topbuild.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Title of 12(b) Security", "documentation": "Title of a 12(b) registered security." } } }, "auth_ref": [ "r658" ] }, "dei_SecurityExchangeName": { "xbrltype": "edgarExchangeCodeItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "SecurityExchangeName", "presentation": [ "http://www.topbuild.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Security Exchange Name", "documentation": "Name of the Exchange on which a security is registered." } } }, "auth_ref": [ "r660" ] }, "us-gaap_SegmentDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SegmentDomain", "presentation": [ "http://www.topbuild.com/role/DisclosureGoodwillAndOtherIntangiblesGoodwillDetails", "http://www.topbuild.com/role/DisclosureRevenueRecognitionDisaggregationDetails", "http://www.topbuild.com/role/DisclosureSegmentInformationDetails" ], "lang": { "en-us": { "role": { "label": "Segments [Domain]", "documentation": "Components of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity." } } }, "auth_ref": [ "r110", "r111", "r112", "r113", "r208", "r211", "r214", "r215", "r216", "r217", "r218", "r219", "r220", "r221", "r222", "r223", "r224", "r225", "r227", "r228", "r229", "r230", "r231", "r232", "r233", "r234", "r236", "r237", "r238", "r242", "r254", "r255", "r256", "r257", "r258", "r259", "r260", "r261", "r262", "r276", "r280", "r281", "r495", "r496", "r497", "r498", "r499", "r500", "r501", "r502", "r503", "r504", "r505", "r595", "r598", "r599", "r604", "r643", "r864", "r867", "r868", "r869", "r870", "r871", "r872", "r873", "r874", "r875", "r876", "r877", "r878", "r879", "r880", "r881", "r882", "r883", "r884", "r885", "r886", "r887", "r888", "r889", "r890", "r891", "r892", "r893", "r894" ] }, "us-gaap_SegmentReportingAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SegmentReportingAbstract", "lang": { "en-us": { "role": { "label": "Segment Information" } } }, "auth_ref": [] }, "us-gaap_SegmentReportingDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SegmentReportingDisclosureTextBlock", "presentation": [ "http://www.topbuild.com/role/DisclosureSegmentInformation" ], "lang": { "en-us": { "role": { "label": "Segment Reporting Disclosure [Text Block]", "terseLabel": "Segment Information", "documentation": "The entire disclosure for reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments." } } }, "auth_ref": [ "r113", "r208", "r210", "r211", "r212", "r213", "r214", "r226", "r228", "r229", "r234", "r235", "r236", "r237", "r238", "r239", "r240", "r242", "r594", "r596", "r597", "r598", "r600", "r601", "r602" ] }, "us-gaap_SegmentReportingInformationLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SegmentReportingInformationLineItems", "presentation": [ "http://www.topbuild.com/role/DisclosureSegmentInformationDetails" ], "lang": { "en-us": { "role": { "label": "Segment Reporting Information [Line Items]", "terseLabel": "Segment information", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_SellingGeneralAndAdministrativeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SellingGeneralAndAdministrativeExpense", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "label": "Selling, General and Administrative Expense", "terseLabel": "Selling, general, and administrative expense", "documentation": "The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc." } } }, "auth_ref": [ "r81" ] }, "bld_SeniorNotesDue2029Member": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "SeniorNotesDue2029Member", "presentation": [ "http://www.topbuild.com/role/DisclosureFairValueMeasurementsDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtOtherDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtReconciliationDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtScheduleOfDebtMaturityDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to the 3.625% Senior Notes due 2029.", "label": "3.625% Senior Notes", "terseLabel": "3.625% Senior Notes" } } }, "auth_ref": [] }, "bld_SeniorNotesDue2032Member": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "SeniorNotesDue2032Member", "presentation": [ "http://www.topbuild.com/role/DisclosureFairValueMeasurementsDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtOtherDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtReconciliationDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtScheduleOfDebtMaturityDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to the 4.125% Senior Notes due 2032.", "label": "4.125% Senior Notes", "terseLabel": "4.125% Senior Notes" } } }, "auth_ref": [] }, "us-gaap_SeniorNotesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SeniorNotesMember", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtOtherDetails" ], "lang": { "en-us": { "role": { "label": "Senior Notes", "terseLabel": "Senior Notes", "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." } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensation", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation", "terseLabel": "Share-based compensation", "documentation": "Amount of noncash expense for share-based payment arrangement." } } }, "auth_ref": [ "r7" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Additional Disclosures [Abstract]", "terseLabel": "Restricted stock awards, additional disclosures" } } }, "auth_ref": [] }, "bld_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsConvertedExercisedInPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsConvertedExercisedInPeriod", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that were converted/exercised during the reporting period.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Converted, Exercised in Period", "negatedLabel": "Converted/Exercised (in shares)" } } }, "auth_ref": [] }, "bld_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsConvertedExercisedWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsConvertedExercisedWeightedAverageGrantDateFairValue", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "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 converted/exercised.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Converted, Exercised, Weighted Average Grant Date Fair Value", "terseLabel": "Converted/Exercised (in dollars per share)" } } }, "auth_ref": [] }, "bld_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedOrExpiredInPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedOrExpiredInPeriod", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that were forfeited or expired during the reporting period.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Forfeited or Expired in Period", "negatedLabel": "Forfeited/Expired (in shares)" } } }, "auth_ref": [] }, "bld_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedOrExpiredWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedOrExpiredWeightedAverageGrantDateFairValue", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "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 forfeited or expired.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Forfeited or Expired, Weighted Average Grant Date Fair Value", "terseLabel": "Forfeited/Expired (in dollars per share)" } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period", "terseLabel": "Granted (in shares)", "documentation": "The number of grants made during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan)." } } }, "auth_ref": [ "r365" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value", "terseLabel": "Granted (in dollars per share)", "documentation": "The weighted average fair value at grant date for nonvested equity-based awards issued during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan)." } } }, "auth_ref": [ "r365" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Number", "periodEndLabel": "Balance at end of period (in shares)", "periodStartLabel": "Balance at beginning of period (in shares)", "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." } } }, "auth_ref": [ "r362", "r363" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Number of Shares [Roll Forward]", "terseLabel": "Restricted Stock Awards, Number of Shares", "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period." } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "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", "periodEndLabel": "Balance at end of period (in dollars per share)", "periodStartLabel": "Balance at beginning of period (in dollars per share)", "documentation": "Per share or unit weighted-average fair value of nonvested award under share-based payment arrangement. Excludes share and unit options." } } }, "auth_ref": [ "r362", "r363" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "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": "Restricted Stock Awards, Weighted Average Grant Date Fair Value Per Share" } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyAbstract", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions and Methodology [Abstract]", "terseLabel": "Assumptions used to estimate the fair values of the awards granted:" } } }, "auth_ref": [] }, "bld_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsEstimatedFairValueOfAwardsGranted": { "xbrltype": "perShareItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsEstimatedFairValueOfAwardsGranted", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the estimated fair value of the awards granted.", "label": "Share Based Compensation Arrangement By Share Based Payment Award Fair Value Assumptions Estimated Fair Value Of Awards Granted", "verboseLabel": "Estimated fair value of market-based RSAs at grant date (in dollars per share)" } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Dividend Rate", "terseLabel": "Dividend yield (as a percent)", "documentation": "The estimated dividend rate (a percentage of the share price) to be paid (expected dividends) to holders of the underlying shares over the option's term." } } }, "auth_ref": [ "r374" ] }, "bld_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRemainingMeasurementPeriod": { "xbrltype": "durationItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRemainingMeasurementPeriod", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "documentation": "The remaining measurement period of share-based compensation awards, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Remaining Measurement Period", "terseLabel": "Measurement period (years)" } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Risk Free Interest Rate", "terseLabel": "Risk free interest rate (as a percent)", "documentation": "The risk-free interest rate assumption that is used in valuing an option on its own shares." } } }, "auth_ref": [ "r375" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails", "http://www.topbuild.com/role/DisclosureShareBasedCompensationTables" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award [Line Items]", "terseLabel": "Share-Based Compensation", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r347", "r349", "r351", "r352", "r353", "r354", "r355", "r356", "r357", "r358", "r359", "r360", "r361", "r362", "r363", "r364", "r365", "r366", "r367", "r368", "r369", "r370", "r371", "r372", "r373", "r374", "r375", "r376" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationExpenseDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Authorized", "terseLabel": "Number of shares authorized", "documentation": "Number of shares authorized for issuance under share-based payment arrangement." } } }, "auth_ref": [ "r626" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationExpenseDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Available for Grant", "terseLabel": "Number of shares available", "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." } } }, "auth_ref": [ "r39" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Additional Disclosures [Abstract]", "terseLabel": "Stock options, additional disclosures" } } }, "auth_ref": [] }, "bld_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsConvertedExercisedWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsConvertedExercisedWeightedAverageGrantDateFairValue", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "documentation": "Weighted average grant-date fair value of options converted/exercised.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Converted, Exercised, Weighted Average Grant Date Fair Value", "terseLabel": "Converted/Exercised (in dollars per share)" } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Number", "terseLabel": "Exercisable, Number of shares", "documentation": "The number of shares into which fully or partially vested stock options outstanding as of the balance sheet date can be currently converted under the option plan." } } }, "auth_ref": [ "r356" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Exercise Price", "terseLabel": "Exercisable Weighted Average Exercise Price Per Share", "documentation": "The weighted-average price as of the balance sheet date at which grantees can acquire the shares reserved for issuance on vested portions of options outstanding and currently exercisable under the stock option plan." } } }, "auth_ref": [ "r356" ] }, "bld_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageGrantDateFairValue", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the Share Based Compensation Arrangement By Share Based Payment Award Options Exercisable Weighted Average Grant Date Fair Value.", "label": "Share Based Compensation Arrangement By Share Based Payment Award Options Exercisable Weighted Average Grant Date Fair Value", "terseLabel": "Exercisable, Weighted Average Grant Date Fair Value Per Share" } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period, Intrinsic Value", "terseLabel": "Converted/Exercised aggregate intrinsic value", "documentation": "Amount of accumulated difference between fair value of underlying shares on dates of exercise and exercise price on options exercised (or share units converted) into shares." } } }, "auth_ref": [ "r369" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Intrinsic Value", "terseLabel": "Aggregate intrinsic value", "documentation": "Amount by which the current fair value of the underlying stock exceeds the exercise price of options outstanding." } } }, "auth_ref": [ "r39" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number", "periodEndLabel": "Balance at end of period (in shares)", "periodStartLabel": "Balance at beginning of period (in shares)", "documentation": "Number of options outstanding, including both vested and non-vested options." } } }, "auth_ref": [ "r354", "r355" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding [Roll Forward]", "terseLabel": "Stock Options, Number of Shares", "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period." } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price", "periodEndLabel": "Balance at end of period (in dollars per share)", "periodStartLabel": "Balance at beginning of period (in dollars per share)", "documentation": "Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan." } } }, "auth_ref": [ "r354", "r355" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price [Abstract]", "terseLabel": "Stock Options, Weighted Average Exercise Price Per Share" } } }, "auth_ref": [] }, "bld_ShareBasedCompensationArrangementByShareBasedPaymentAwardOtherThanOptionsGrantsCumulativePeriodOfAchievement": { "xbrltype": "durationItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOtherThanOptionsGrantsCumulativePeriodOfAchievement", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "documentation": "The cumulative period of achievement related to restricted stock awards with performance conditions.", "label": "Share-based Compensation Arrangement By Share-based Payment Award Other Than Options Grants, Cumulative Period of Achievement", "terseLabel": "Cumulative period of achievement" } } }, "auth_ref": [] }, "bld_ShareBasedCompensationArrangementByShareBasedPaymentAwardOtherThanOptionsGrantsCumulativePeriodOfAchievementPercentage": { "xbrltype": "percentItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOtherThanOptionsGrantsCumulativePeriodOfAchievementPercentage", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "documentation": "The cumulative three-year achievement percentage related to the restricted stock awards with performance conditions.", "label": "Share-based Compensation Arrangement By Share-based Payment Award Other Than Options Grants, Cumulative Period of Achievement Percentage", "terseLabel": "Cumulative achievement percentage" } } }, "auth_ref": [] }, "bld_ShareBasedCompensationArrangementByShareBasedPaymentAwardOtherThanOptionsGrantsInPeriodTotalGrantDateFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOtherThanOptionsGrantsInPeriodTotalGrantDateFairValue", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the total fair value of equity-based awards, other then options, granted during the reporting period.", "label": "Share Based Compensation Arrangement By Share Based Payment Award Other Than Options Grants In Period Total Grant Date Fair Value", "terseLabel": "Grant date fair value" } } }, "auth_ref": [] }, "bld_ShareBasedCompensationArrangementByShareBasedPaymentAwardOtherThanOptionsGrantsTotalCompensationExpenseRecognizedOverPerformancePeriod": { "xbrltype": "monetaryItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOtherThanOptionsGrantsTotalCompensationExpenseRecognizedOverPerformancePeriod", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "documentation": "The total compensation expense recognized over the performance period, net of forfeitures, related to the restricted stock awards with performance conditions.", "label": "Share-based Compensation Arrangement By Share-based Payment Award Other Than Options Grants, Total Compensation Expense Recognized Over Performance Period", "terseLabel": "Total compensation expense recognized over the performance period, net of forfeitures" } } }, "auth_ref": [] }, "bld_ShareBasedCompensationArrangementByShareBasedPaymentAwardPayoutRangeAxis": { "xbrltype": "stringItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardPayoutRangeAxis", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "documentation": "Information relating to payout ranges of the share-based compensation awards.", "label": "Share-based Compensation Arrangement by Share-based Payment Award Payout Range [Axis]" } } }, "auth_ref": [] }, "bld_ShareBasedCompensationArrangementByShareBasedPaymentAwardPayoutRangeDomain": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardPayoutRangeDomain", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "documentation": "Identification of the payout ranges of the share-based compensation awards.", "label": "Share-based Compensation Arrangement by Share-based Payment Award Payout Range [Domain]" } } }, "auth_ref": [] }, "bld_ShareBasedCompensationArrangementByShareBasedPaymentAwardPayoutRangeFourMember": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardPayoutRangeFourMember", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "documentation": "Range four of the payout range related to performance-based awards.", "label": "Payout Range-200%" } } }, "auth_ref": [] }, "bld_ShareBasedCompensationArrangementByShareBasedPaymentAwardPayoutRangeOneMember": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardPayoutRangeOneMember", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "documentation": "Range one of the payout range related to performance-based awards.", "label": "Payout Range-0%" } } }, "auth_ref": [] }, "bld_ShareBasedCompensationArrangementByShareBasedPaymentAwardPayoutRangePercentage": { "xbrltype": "percentItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardPayoutRangePercentage", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "documentation": "The payout range expressed as a percentage of the grant date fair value related to performance-based awards.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Payout Range Percentage", "terseLabel": "Payout range (as a percent)" } } }, "auth_ref": [] }, "bld_ShareBasedCompensationArrangementByShareBasedPaymentAwardPayoutRangeRelatedExpenses": { "xbrltype": "monetaryItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardPayoutRangeRelatedExpenses", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "documentation": "The compensation expense based on the payout range related to performance-based awards.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Payout Range Related Expenses", "terseLabel": "Related expenses" } } }, "auth_ref": [] }, "bld_ShareBasedCompensationArrangementByShareBasedPaymentAwardPayoutRangeThreeMember": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardPayoutRangeThreeMember", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "documentation": "Range three of the payout range related to performance-based awards.", "label": "Payout Range-100%" } } }, "auth_ref": [] }, "bld_ShareBasedCompensationArrangementByShareBasedPaymentAwardPayoutRangeTwoMember": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardPayoutRangeTwoMember", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "documentation": "Range two of the payout range related to performance-based awards.", "label": "Payout Range-25%" } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails", "http://www.topbuild.com/role/DisclosureShareBasedCompensationTables", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "All Award Types", "terseLabel": "All Award Types", "documentation": "Award under share-based payment arrangement." } } }, "auth_ref": [ "r351", "r352", "r353", "r354", "r355", "r356", "r357", "r358", "r359", "r360", "r361", "r362", "r363", "r364", "r365", "r366", "r367", "r368", "r369", "r370", "r371", "r372", "r373", "r374", "r375", "r376" ] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangements by Share-based Payment Award, Options, Exercises in Period, Weighted Average Exercise Price", "terseLabel": "Converted/Exercised (in dollars per share)", "documentation": "Weighted average price at which option holders acquired shares when converting their stock options into shares." } } }, "auth_ref": [ "r359" ] }, "bld_ShareBasedPaymentArrangementExpenseTaxExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "ShareBasedPaymentArrangementExpenseTaxExpense", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/DisclosureIncomeTaxesDetails", "http://www.topbuild.com/role/DisclosureShareBasedCompensationExpenseDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount of tax expense for recognition of expense of award under share-based payment arrangement.", "label": "Share-Based Payment Arrangement, Expense, Tax Expense", "negatedLabel": "Income tax expense", "terseLabel": "Tax expense related to share-based compensation" } } }, "auth_ref": [] }, "bld_ShareRepurchaseProgram2022Member": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "ShareRepurchaseProgram2022Member", "presentation": [ "http://www.topbuild.com/role/DisclosureShareRepurchaseProgramDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to the 2022 Share Repurchase Program.", "label": "2022 Share Repurchase Program" } } }, "auth_ref": [] }, "bld_ShareRepurchaseProgram2024Member": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "ShareRepurchaseProgram2024Member", "presentation": [ "http://www.topbuild.com/role/DisclosureShareRepurchaseProgramDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to the 2024 Share Repurchase Program.", "label": "Share Repurchase Program 2024 [Member]", "terseLabel": "2024 Share Repurchase Program" } } }, "auth_ref": [] }, "srt_ShareRepurchaseProgramAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "ShareRepurchaseProgramAxis", "presentation": [ "http://www.topbuild.com/role/DisclosureShareRepurchaseProgramDetails" ], "lang": { "en-us": { "role": { "label": "Share Repurchase Program [Axis]", "documentation": "Information by share repurchase program." } } }, "auth_ref": [ "r812" ] }, "srt_ShareRepurchaseProgramDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "ShareRepurchaseProgramDomain", "presentation": [ "http://www.topbuild.com/role/DisclosureShareRepurchaseProgramDetails" ], "lang": { "en-us": { "role": { "label": "Share Repurchase Program [Domain]", "documentation": "Name of share repurchase program." } } }, "auth_ref": [ "r812" ] }, "us-gaap_ShareRepurchaseProgramExciseTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareRepurchaseProgramExciseTax", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/DisclosureShareRepurchaseProgramDetails", "http://www.topbuild.com/role/StatementConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Share Repurchase Program, Excise Tax", "terseLabel": "Share repurchase cost, excise taxes", "verboseLabel": "Excise taxes capitalized to treasury stock", "documentation": "Amount of excise tax on share purchased under share repurchase plan. Includes, but is not limited to, repurchase of stock and unit of ownership." } } }, "auth_ref": [ "r811" ] }, "us-gaap_ShareRepurchaseProgramExciseTaxPayable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareRepurchaseProgramExciseTaxPayable", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/DisclosureShareRepurchaseProgramDetails" ], "lang": { "en-us": { "role": { "label": "Share Repurchase Program, Excise Tax, Payable", "terseLabel": "Excise tax liability", "documentation": "Amount of excise tax payable on share purchased under share repurchase plan. Includes, but is not limited to, repurchase of stock and unit of ownership." } } }, "auth_ref": [ "r811" ] }, "bld_ShareRepurchaseProgramRemainingAuthorizedAmountUtilized": { "xbrltype": "monetaryItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "ShareRepurchaseProgramRemainingAuthorizedAmountUtilized", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/DisclosureShareRepurchaseProgramDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount remaining authorized for purchase of share under share repurchase plan that was utilized during the period.", "label": "Share Repurchase Program, Remaining Authorized, Amount Utilized", "terseLabel": "Remaining amount authorized under the program, utilized during the period" } } }, "auth_ref": [] }, "bld_ShareRepurchaseProgramTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "ShareRepurchaseProgramTextBlock", "presentation": [ "http://www.topbuild.com/role/DisclosureShareRepurchaseProgram" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for the share repurchase program.", "label": "Share Repurchase Program [Text Block]", "terseLabel": "Share Repurchase Program" } } }, "auth_ref": [] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Intrinsic Value", "terseLabel": "Exercisable, Aggregate Intrinsic Value", "documentation": "Amount of difference between fair value of the underlying shares reserved for issuance and exercise price of vested portions of options outstanding and currently exercisable." } } }, "auth_ref": [ "r39" ] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValue", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Nonvested, Weighted Average Grant Date Fair Value", "periodEndLabel": "Balance at end of period (in dollars per share)", "periodStartLabel": "Balance at beginning of period (in dollars per share)", "documentation": "Weighted average grant-date fair value of non-vested options outstanding." } } }, "auth_ref": [] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedWeightedAverageGrantDateFairValueAbstract", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Nonvested, Weighted Average Grant Date Fair Value [Abstract]", "terseLabel": "Stock Options, Weighted Average Grant Date Fair Value Per Share" } } }, "auth_ref": [] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageRemainingContractualTerm1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageRemainingContractualTerm1", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Exercisable, Weighted Average Remaining Contractual Term", "terseLabel": "Weighted average remaining contractual term for vested stock options", "documentation": "Weighted average remaining contractual term for fully vested and expected to vest exercisable or convertible options, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur." } } }, "auth_ref": [ "r371" ] }, "us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SharesPaidForTaxWithholdingForShareBasedCompensation", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfChangesInShareholdersEquityParenthetical" ], "lang": { "en-us": { "role": { "label": "Shares Paid for Tax Withholding for Share Based Compensation", "terseLabel": "Number of shares withheld to pay taxes on employees' equity awards (in shares)", "documentation": "Number of shares used to settle grantee's tax withholding obligation for award under share-based payment arrangement." } } }, "auth_ref": [] }, "us-gaap_SignificantAccountingPoliciesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SignificantAccountingPoliciesTextBlock", "presentation": [ "http://www.topbuild.com/role/DisclosureAccountingPolicies" ], "lang": { "en-us": { "role": { "label": "Significant Accounting Policies [Text Block]", "terseLabel": "Accounting Policies", "documentation": "The entire disclosure for all significant accounting policies of the reporting entity." } } }, "auth_ref": [ "r92", "r177" ] }, "bld_SofrRateBorrowingsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "SofrRateBorrowingsMember", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtKeyTermsOfCreditAgreementDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information relating to SOFR rate borrowings.", "label": "SOFR Rate Borrowings [Member]", "terseLabel": "SOFR Rate Borrowings" } } }, "auth_ref": [] }, "bld_SpiMember": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "SpiMember", "presentation": [ "http://www.topbuild.com/role/DisclosureBusinessCombinationsSummaryDetails" ], "lang": { "en-us": { "role": { "documentation": "Information pertaining to SPI.", "label": "SPI" } } }, "auth_ref": [] }, "bld_SriHoldingsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "SriHoldingsMember", "presentation": [ "http://www.topbuild.com/role/DisclosureBusinessCombinationsSummaryDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to SRI Holdings, LLC.", "label": "SRI Holdings" } } }, "auth_ref": [] }, "us-gaap_StatementBusinessSegmentsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementBusinessSegmentsAxis", "presentation": [ "http://www.topbuild.com/role/DisclosureGoodwillAndOtherIntangiblesGoodwillDetails", "http://www.topbuild.com/role/DisclosureRevenueRecognitionDisaggregationDetails", "http://www.topbuild.com/role/DisclosureSegmentInformationDetails" ], "lang": { "en-us": { "role": { "label": "Segments [Axis]", "documentation": "Information by business segments." } } }, "auth_ref": [ "r110", "r111", "r112", "r113", "r144", "r208", "r211", "r214", "r215", "r216", "r217", "r218", "r219", "r220", "r221", "r222", "r223", "r224", "r225", "r227", "r228", "r229", "r230", "r231", "r232", "r233", "r234", "r236", "r237", "r238", "r242", "r254", "r255", "r256", "r257", "r258", "r259", "r260", "r261", "r262", "r276", "r278", "r280", "r281", "r495", "r496", "r497", "r498", "r499", "r500", "r501", "r502", "r503", "r504", "r505", "r595", "r598", "r599", "r604", "r643", "r864", "r867", "r868", "r869", "r870", "r871", "r872", "r873", "r874", "r875", "r876", "r877", "r878", "r879", "r880", "r881", "r882", "r883", "r884", "r885", "r886", "r887", "r888", "r889", "r890", "r891", "r892", "r893", "r894" ] }, "us-gaap_StatementEquityComponentsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementEquityComponentsAxis", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfChangesInShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Equity Components [Axis]", "documentation": "Information by component of equity." } } }, "auth_ref": [ "r12", "r66", "r69", "r70", "r143", "r166", "r167", "r168", "r181", "r182", "r183", "r185", "r190", "r192", "r194", "r209", "r246", "r247", "r277", "r321", "r394", "r395", "r401", "r402", "r403", "r405", "r408", "r409", "r417", "r418", "r419", "r420", "r421", "r422", "r423", "r448", "r450", "r451", "r452", "r453", "r454", "r457", "r458", "r462", "r490", "r515", "r516", "r517", "r527", "r576" ] }, "us-gaap_StatementLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementLineItems", "presentation": [ "http://www.topbuild.com/role/DisclosureNetIncomePerShareCalculationDetails", "http://www.topbuild.com/role/DisclosureRevenueRecognitionOtherDetails", "http://www.topbuild.com/role/StatementConsolidatedStatementsOfChangesInShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Statement [Line Items]", "terseLabel": "Statement", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r181", "r182", "r183", "r209", "r458", "r470", "r522", "r528", "r531", "r532", "r533", "r534", "r535", "r536", "r539", "r542", "r543", "r544", "r545", "r546", "r547", "r548", "r549", "r550", "r552", "r553", "r554", "r555", "r556", "r558", "r560", "r561", "r562", "r563", "r564", "r565", "r566", "r567", "r568", "r569", "r570", "r571", "r572", "r573", "r576", "r650" ] }, "us-gaap_StatementOfCashFlowsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementOfCashFlowsAbstract", "lang": { "en-us": { "role": { "label": "CONSOLIDATED STATEMENTS OF CASH FLOWS" } } }, "auth_ref": [] }, "us-gaap_StatementOfFinancialPositionAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementOfFinancialPositionAbstract", "lang": { "en-us": { "role": { "label": "CONSOLIDATED BALANCE SHEETS" } } }, "auth_ref": [] }, "us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementOfIncomeAndComprehensiveIncomeAbstract", "lang": { "en-us": { "role": { "label": "CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME" } } }, "auth_ref": [] }, "us-gaap_StatementOfStockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementOfStockholdersEquityAbstract", "lang": { "en-us": { "role": { "label": "CONDENSED CONSOLIDATED STATEMENTS OF CHANGES IN EQUITY" } } }, "auth_ref": [] }, "srt_StatementScenarioAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "StatementScenarioAxis", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtOtherDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtRevolvingFacilityDetails", "http://www.topbuild.com/role/DisclosureLongTermDebtSeniorNotesAndEquipmentNotesDetails" ], "lang": { "en-us": { "role": { "label": "Scenario [Axis]", "documentation": "Information by scenario reported, distinguishing information from actual fact. Includes, but is not limited to, pro forma and forecast. Excludes actual facts." } } }, "auth_ref": [ "r140", "r195", "r345", "r744", "r745", "r762" ] }, "us-gaap_StatementTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementTable", "presentation": [ "http://www.topbuild.com/role/DisclosureNetIncomePerShareCalculationDetails", "http://www.topbuild.com/role/DisclosureRevenueRecognitionOtherDetails", "http://www.topbuild.com/role/StatementConsolidatedStatementsOfChangesInShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Statement [Table]", "documentation": "Disclosure of information about statement of comprehensive income, income, other comprehensive income, financial position, cash flows, and shareholders' equity." } } }, "auth_ref": [ "r181", "r182", "r183", "r209", "r243", "r458", "r470", "r522", "r528", "r531", "r532", "r533", "r534", "r535", "r536", "r539", "r542", "r543", "r544", "r545", "r546", "r547", "r548", "r549", "r550", "r552", "r553", "r554", "r555", "r556", "r558", "r560", "r561", "r562", "r563", "r564", "r565", "r566", "r567", "r568", "r569", "r570", "r571", "r572", "r573", "r576", "r650" ] }, "ecd_StkPrcOrTsrEstimationMethodTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "StkPrcOrTsrEstimationMethodTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Stock Price or TSR Estimation Method [Text Block]", "terseLabel": "Stock Price or TSR Estimation Method" } } }, "auth_ref": [ "r667", "r677", "r687", "r719" ] }, "us-gaap_StockAppreciationRightsSARSMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockAppreciationRightsSARSMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Stock Appreciation Rights (SARs) [Member]", "terseLabel": "Stock Appreciation Rights (SARs)", "documentation": "Right to receive cash or shares equal to appreciation of predetermined number of grantor's shares during predetermined time period." } } }, "auth_ref": [] }, "us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockIssuedDuringPeriodSharesRestrictedStockAwardGross", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfChangesInShareholdersEquityParenthetical" ], "lang": { "en-us": { "role": { "label": "Stock Issued During Period, Shares, Restricted Stock Award, Gross", "terseLabel": "Issuance of restricted share awards under long-term equity incentive plan, net of forfeitures (in shares)", "documentation": "Total number of shares issued during the period, including shares forfeited, as a result of Restricted Stock Awards." } } }, "auth_ref": [ "r12", "r99" ] }, "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised", "presentation": [ "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails", "http://www.topbuild.com/role/StatementConsolidatedStatementsOfChangesInShareholdersEquityParenthetical" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period", "negatedLabel": "Converted/Exercised (in shares)", "terseLabel": "Shares issued upon exercise of stock options (in shares)", "documentation": "Number of share options (or share units) exercised during the current period." } } }, "auth_ref": [ "r12", "r65", "r66", "r99", "r359" ] }, "us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockIssuedDuringPeriodValueRestrictedStockAwardGross", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfChangesInShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Stock Issued During Period, Value, Restricted Stock Award, Gross", "terseLabel": "Issuance of restricted share awards under long-term equity incentive plan", "documentation": "Aggregate value of stock related to Restricted Stock Awards issued during the period." } } }, "auth_ref": [ "r12", "r65", "r66", "r99" ] }, "us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfChangesInShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Stock Issued During Period, Value, Restricted Stock Award, Net of Forfeitures", "terseLabel": "Issuance of restricted share awards under long-term equity incentive plan, net of forfeitures", "documentation": "Value of stock related to Restricted Stock Awards issued during the period, net of the stock value of such awards forfeited." } } }, "auth_ref": [ "r12", "r99" ] }, "us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockIssuedDuringPeriodValueStockOptionsExercised", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfChangesInShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Stock Issued During Period, Value, Stock Options Exercised", "terseLabel": "Shares issued upon exercise of stock options", "documentation": "Value of stock issued as a result of the exercise of stock options." } } }, "auth_ref": [ "r12", "r66", "r69", "r70", "r99" ] }, "srt_StockRepurchaseProgramAuthorizedAmount1": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "StockRepurchaseProgramAuthorizedAmount1", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/DisclosureShareRepurchaseProgramDetails" ], "lang": { "en-us": { "role": { "label": "Stock Repurchase Program, Authorized Amount", "terseLabel": "Share repurchase program, authorized amount", "documentation": "Amount authorized for purchase of share under share repurchase plan. Includes, but is not limited to, repurchase of stock and unit of ownership." } } }, "auth_ref": [ "r812" ] }, "us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/DisclosureShareRepurchaseProgramDetails" ], "lang": { "en-us": { "role": { "label": "Stock Repurchase Program, Remaining Authorized Repurchase Amount", "terseLabel": "Amount remaining under repurchase program", "documentation": "Amount remaining authorized for purchase of share under share repurchase plan. Includes, but is not limited to, repurchase of stock and unit of ownership." } } }, "auth_ref": [] }, "us-gaap_StockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockholdersEquity", "crdr": "credit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedBalanceSheets", "http://www.topbuild.com/role/StatementConsolidatedStatementsOfChangesInShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Stockholders' Equity Attributable to Parent", "periodEndLabel": "Balance", "periodStartLabel": "Balance", "totalLabel": "Total equity", "documentation": "Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest." } } }, "auth_ref": [ "r66", "r69", "r70", "r94", "r541", "r557", "r577", "r578", "r638", "r657", "r757", "r773", "r850", "r896" ] }, "us-gaap_StockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockholdersEquityAbstract", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Stockholders' Equity Attributable to Parent [Abstract]", "terseLabel": "Equity:" } } }, "auth_ref": [] }, "bld_SummaryOfKeyTermsOfCreditAgreementTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "SummaryOfKeyTermsOfCreditAgreementTableTextBlock", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtTables" ], "lang": { "en-us": { "role": { "documentation": "Represents tabular information about the key terms of the Credit Agreement.", "label": "Summary of The Key Terms of Credit Agreement [Table Text Block]", "terseLabel": "Summary of key terms of the Credit Agreement" } } }, "auth_ref": [] }, "ecd_TabularListTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TabularListTableTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Tabular List [Table Text Block]", "terseLabel": "Tabular List, Table" } } }, "auth_ref": [ "r713" ] }, "bld_TexasInsulationMember": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "TexasInsulationMember", "presentation": [ "http://www.topbuild.com/role/DisclosureBusinessCombinationsSummaryDetails" ], "lang": { "en-us": { "role": { "documentation": "Information pertaining to Texas Insulation, a residential insulation business.", "label": "Texas Insulation [Member]", "terseLabel": "Texas Insulation" } } }, "auth_ref": [] }, "ecd_TotalShareholderRtnAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TotalShareholderRtnAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Total Shareholder Return Amount", "terseLabel": "Total Shareholder Return Amount" } } }, "auth_ref": [ "r705" ] }, "ecd_TotalShareholderRtnVsPeerGroupTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TotalShareholderRtnVsPeerGroupTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Total Shareholder Return Vs Peer Group [Text Block]", "terseLabel": "Total Shareholder Return Vs Peer Group" } } }, "auth_ref": [ "r712" ] }, "ecd_TradingArrAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TradingArrAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement [Axis]", "terseLabel": "Trading Arrangement:" } } }, "auth_ref": [ "r732" ] }, "ecd_TradingArrByIndTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TradingArrByIndTable", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangements, by Individual [Table]", "terseLabel": "Trading Arrangements, by Individual" } } }, "auth_ref": [ "r734" ] }, "dei_TradingSymbol": { "xbrltype": "tradingSymbolItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "TradingSymbol", "presentation": [ "http://www.topbuild.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Trading Symbol", "documentation": "Trading symbol of an instrument as listed on an exchange." } } }, "auth_ref": [] }, "ecd_TrdArrAdoptionDate": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TrdArrAdoptionDate", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement Adoption Date", "terseLabel": "Adoption Date" } } }, "auth_ref": [ "r735" ] }, "ecd_TrdArrDuration": { "xbrltype": "durationItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TrdArrDuration", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement Duration", "terseLabel": "Arrangement Duration" } } }, "auth_ref": [ "r736" ] }, "ecd_TrdArrExpirationDate": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TrdArrExpirationDate", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement Expiration Date", "terseLabel": "Expiration Date" } } }, "auth_ref": [ "r736" ] }, "ecd_TrdArrIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TrdArrIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement, Individual Name", "terseLabel": "Name" } } }, "auth_ref": [ "r734" ] }, "ecd_TrdArrIndTitle": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TrdArrIndTitle", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement, Individual Title", "terseLabel": "Title" } } }, "auth_ref": [ "r734" ] }, "ecd_TrdArrSecuritiesAggAvailAmt": { "xbrltype": "sharesItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TrdArrSecuritiesAggAvailAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement, Securities Aggregate Available Amount", "terseLabel": "Aggregate Available" } } }, "auth_ref": [ "r737" ] }, "ecd_TrdArrTerminationDate": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TrdArrTerminationDate", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement Termination Date", "terseLabel": "Termination Date" } } }, "auth_ref": [ "r735" ] }, "us-gaap_TreasuryStockAcquiredAverageCostPerShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "TreasuryStockAcquiredAverageCostPerShare", "presentation": [ "http://www.topbuild.com/role/DisclosureShareRepurchaseProgramDetails" ], "lang": { "en-us": { "role": { "label": "Treasury Stock Acquired, Average Cost Per Share", "terseLabel": "Average price per share (in dollars per share)", "documentation": "Total cost of shares repurchased divided by the total number of shares repurchased." } } }, "auth_ref": [ "r35" ] }, "us-gaap_TreasuryStockCommonMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "TreasuryStockCommonMember", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfChangesInShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Treasury Stock at Cost", "terseLabel": "Treasury Stock at Cost", "documentation": "Previously issued common shares repurchased by the issuing entity and held in treasury." } } }, "auth_ref": [ "r35" ] }, "us-gaap_TreasuryStockCommonShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "TreasuryStockCommonShares", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Treasury Stock, Shares", "terseLabel": "Treasury stock, shares at cost", "documentation": "Number of previously issued common shares repurchased by the issuing entity and held in treasury." } } }, "auth_ref": [ "r35" ] }, "us-gaap_TreasuryStockCommonValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "TreasuryStockCommonValue", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Treasury Stock, Value", "negatedLabel": "Treasury stock, 8,977,145 shares at June 30, 2024, and 7,715,998 shares at December 31, 2023, at cost", "documentation": "Amount allocated to previously issued common shares repurchased by the issuing entity and held in treasury." } } }, "auth_ref": [ "r35", "r38", "r69" ] }, "us-gaap_TreasuryStockSharesAcquired": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "TreasuryStockSharesAcquired", "presentation": [ "http://www.topbuild.com/role/DisclosureShareRepurchaseProgramDetails" ], "lang": { "en-us": { "role": { "label": "Treasury Stock, Shares, Acquired", "terseLabel": "Number of shares repurchased (in shares)", "documentation": "Number of shares that have been repurchased during the period and are being held in treasury." } } }, "auth_ref": [ "r12", "r66", "r99" ] }, "bld_TreasuryStockSharesAcquiredCostMethodShareRepurchaseProgram": { "xbrltype": "sharesItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "TreasuryStockSharesAcquiredCostMethodShareRepurchaseProgram", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfChangesInShareholdersEquityParenthetical" ], "lang": { "en-us": { "role": { "documentation": "Number of shares that have been repurchased during the period pursuant to the Share Repurchase Program and are being held in treasury.", "label": "Treasury Stock Shares Acquired Cost Method Share Repurchase Program", "terseLabel": "Repurchase of shares (in shares)" } } }, "auth_ref": [] }, "us-gaap_TreasuryStockValueAcquiredCostMethod": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "TreasuryStockValueAcquiredCostMethod", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/DisclosureShareRepurchaseProgramDetails" ], "lang": { "en-us": { "role": { "label": "Treasury Stock, Value, Acquired, Cost Method", "terseLabel": "Share repurchase cost", "documentation": "Equity impact of the cost of common and preferred stock that were repurchased during the period. Recorded using the cost method." } } }, "auth_ref": [ "r12", "r35", "r99" ] }, "bld_TreasuryStockValueAcquiredCostMethodShareRepurchaseProgram": { "xbrltype": "monetaryItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "TreasuryStockValueAcquiredCostMethodShareRepurchaseProgram", "crdr": "debit", "presentation": [ "http://www.topbuild.com/role/StatementConsolidatedStatementsOfChangesInShareholdersEquity" ], "lang": { "en-us": { "role": { "documentation": "Equity impact of the cost of common stock that was repurchased during the period pursuant to the Share Repurchase Program.", "label": "Treasury Stock, Value, Acquired, Cost Method, Share Repurchase Program", "negatedLabel": "Repurchase of shares" } } }, "auth_ref": [] }, "ecd_UndrlygSecurityMktPriceChngPct": { "xbrltype": "pureItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "UndrlygSecurityMktPriceChngPct", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Underlying Security Market Price Change, Percent", "terseLabel": "Underlying Security Market Price Change" } } }, "auth_ref": [ "r731" ] }, "us-gaap_VariableRateAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "VariableRateAxis", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtKeyTermsOfCreditAgreementDetails" ], "lang": { "en-us": { "role": { "label": "Variable Rate [Axis]", "documentation": "Information by type of variable rate." } } }, "auth_ref": [] }, "us-gaap_VariableRateDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "VariableRateDomain", "presentation": [ "http://www.topbuild.com/role/DisclosureLongTermDebtKeyTermsOfCreditAgreementDetails" ], "lang": { "en-us": { "role": { "label": "Variable Rate [Domain]", "documentation": "Interest rate that fluctuates over time as a result of an underlying benchmark interest rate or index." } } }, "auth_ref": [] }, "bld_VestingBasedOnMarketConditionsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "VestingBasedOnMarketConditionsMember", "presentation": [ "http://www.topbuild.com/role/DisclosureNetIncomePerShareAntiDilutiveCommonStockEquivalentsDetails", "http://www.topbuild.com/role/DisclosureNetIncomePerShareCalculationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents a share based compensation award with vesting based on market conditions.", "label": "Market-based conditions" } } }, "auth_ref": [] }, "bld_VestingBasedOnPerformanceMember": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "VestingBasedOnPerformanceMember", "presentation": [ "http://www.topbuild.com/role/DisclosureNetIncomePerShareCalculationDetails", "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails", "http://www.topbuild.com/role/DisclosureShareBasedCompensationTables" ], "lang": { "en-us": { "role": { "documentation": "Represents a share based compensation award with vesting based on achievement of performance conditions.", "label": "Performance-based conditions" } } }, "auth_ref": [] }, "bld_VestingBasedOnServiceMember": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "VestingBasedOnServiceMember", "presentation": [ "http://www.topbuild.com/role/DisclosureNetIncomePerShareAntiDilutiveCommonStockEquivalentsDetails", "http://www.topbuild.com/role/DisclosureNetIncomePerShareCalculationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents a share based compensation award with vesting based on length of service.", "label": "Service-based conditions" } } }, "auth_ref": [] }, "bld_VestingCriteriaAxis": { "xbrltype": "stringItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "VestingCriteriaAxis", "presentation": [ "http://www.topbuild.com/role/DisclosureNetIncomePerShareAntiDilutiveCommonStockEquivalentsDetails", "http://www.topbuild.com/role/DisclosureNetIncomePerShareCalculationDetails", "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails", "http://www.topbuild.com/role/DisclosureShareBasedCompensationTables" ], "lang": { "en-us": { "role": { "documentation": "Information about the type of vesting for share-based compensation awards.", "label": "Vesting Criteria [Axis]" } } }, "auth_ref": [] }, "bld_VestingCriteriaDomain": { "xbrltype": "domainItemType", "nsuri": "http://www.topbuild.com/20240630", "localname": "VestingCriteriaDomain", "presentation": [ "http://www.topbuild.com/role/DisclosureNetIncomePerShareAntiDilutiveCommonStockEquivalentsDetails", "http://www.topbuild.com/role/DisclosureNetIncomePerShareCalculationDetails", "http://www.topbuild.com/role/DisclosureShareBasedCompensationActivityDetails", "http://www.topbuild.com/role/DisclosureShareBasedCompensationTables" ], "lang": { "en-us": { "role": { "documentation": "The types of vesting specified for share-based compensation awards.", "label": "Vesting Criteria [Domain]" } } }, "auth_ref": [] }, "ecd_VstngDtFrValOfEqtyAwrdsGrntdAndVstdInCvrdYrMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "VstngDtFrValOfEqtyAwrdsGrntdAndVstdInCvrdYrMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Vesting Date Fair Value of Equity Awards Granted and Vested in Covered Year [Member]", "terseLabel": "Vesting Date Fair Value of Equity Awards Granted and Vested in Covered Year" } } }, "auth_ref": [ "r701" ] }, "us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract", "presentation": [ "http://www.topbuild.com/role/DisclosureNetIncomePerShareCalculationDetails" ], "lang": { "en-us": { "role": { "label": "Incremental Weighted Average Shares Attributable to Dilutive Effect [Abstract]", "terseLabel": "Dilutive effect of common stock equivalents:" } } }, "auth_ref": [] }, "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "WeightedAverageNumberOfDilutedSharesOutstanding", "presentation": [ "http://www.topbuild.com/role/DisclosureNetIncomePerShareCalculationDetails", "http://www.topbuild.com/role/StatementConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "label": "Weighted Average Number of Shares Outstanding, Diluted", "terseLabel": "Diluted", "totalLabel": "Weighted average number of common shares outstanding - diluted", "documentation": "The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period." } } }, "auth_ref": [ "r198", "r203" ] }, "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "WeightedAverageNumberOfSharesOutstandingBasic", "presentation": [ "http://www.topbuild.com/role/DisclosureNetIncomePerShareCalculationDetails", "http://www.topbuild.com/role/StatementConsolidatedStatementsOfOperations" ], "lang": { "en-us": { "role": { "label": "Weighted Average Number of Shares Outstanding, Basic", "terseLabel": "Basic", "verboseLabel": "Weighted average number of common shares outstanding - basic", "documentation": "Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period." } } }, "auth_ref": [ "r197", "r203" ] }, "ecd_YrEndFrValOfEqtyAwrdsGrntdInCvrdYrOutsdngAndUnvstdMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "YrEndFrValOfEqtyAwrdsGrntdInCvrdYrOutsdngAndUnvstdMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Year-end Fair Value of Equity Awards Granted in Covered Year that are Outstanding and Unvested [Member]", "terseLabel": "Year-end Fair Value of Equity Awards Granted in Covered Year that are Outstanding and Unvested" } } }, "auth_ref": [ "r699" ] } } } }, "std_ref": { "r0": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "30", "Paragraph": "7", "SubTopic": "30", "Topic": "805", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479637/805-30-30-7" }, "r1": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "30", "Paragraph": "8", "SubTopic": "30", "Topic": "805", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479637/805-30-30-8" }, "r2": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "SubTopic": "230", "Topic": "830", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477401/830-230-45-1" }, "r3": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10A", "SubTopic": "10", "Topic": "220", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-10A" }, "r4": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10A", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "220", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-10A" }, "r5": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "14", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-14" }, "r6": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "15", "Subparagraph": "(f)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-15" }, "r7": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28" }, "r8": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28" }, "r9": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "SubTopic": "10", "Topic": "470", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-1" }, "r10": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "SubTopic": "30", "Topic": "805", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479581/805-30-50-1" }, "r11": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(c)(3)", "SubTopic": "10", "Topic": "810", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-1A" }, "r12": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "SubTopic": "10", "Topic": "505", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-2" }, "r13": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "SubTopic": "10", "Topic": "718", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r14": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)", "SubTopic": "10", "Topic": "718", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r15": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2A", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "718", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2A" }, "r16": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "SubTopic": "10", "Topic": "280", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-4" }, "r17": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "15", "SubTopic": "10", "Topic": "220", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482739/220-10-55-15" }, "r18": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(22))", "SubTopic": "10", "Topic": "210", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r19": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "220", "SubTopic": "10", "Section": "45", "Paragraph": "14", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-14" }, "r20": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "220", "SubTopic": "10", "Section": "45", "Paragraph": "14A", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-14A" }, "r21": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "220", "SubTopic": "10", "Section": "45", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-5" }, "r22": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "13", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-13" }, "r23": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-4" }, "r24": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-3" }, "r25": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-4" }, "r26": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-5" }, "r27": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "260", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-1" }, "r28": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "280", "SubTopic": "10", "Section": "50", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r29": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "280", "SubTopic": "10", "Section": "50", "Paragraph": "25", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-25" }, "r30": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "280", "SubTopic": "10", "Section": "50", "Paragraph": "30", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30" }, "r31": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r32": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "470", "SubTopic": "10", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-5" }, "r33": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-3" }, "r34": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "10", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-8" }, "r35": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "30", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481549/505-30-45-1" }, "r36": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "30", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481520/505-30-50-2" }, "r37": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "30", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481520/505-30-50-3" }, "r38": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "30", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481520/505-30-50-4" }, "r39": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r40": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r41": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "20", "Section": "55", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481089/718-20-55-12" }, "r42": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "20", "Section": "55", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481089/718-20-55-13" }, "r43": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "10", "Section": "25", "Paragraph": "23", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479405/805-10-25-23" }, "r44": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-2" }, "r45": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-3" }, "r46": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "10", "Section": "55", "Paragraph": "37", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479303/805-10-55-37" }, "r47": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "20", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479907/805-20-50-1" }, "r48": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "20", "Section": "55", "Paragraph": "20", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-20" }, "r49": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "30", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479581/805-30-50-1" }, "r50": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4A" }, "r51": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4B" }, "r52": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "942", "SubTopic": "470", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477734/942-470-50-3" }, "r53": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/205/tableOfContent" }, "r54": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(19)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r55": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(19)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r56": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r57": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(20))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r58": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(21))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r59": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(22)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r60": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(22)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r61": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(23))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r62": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(24))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r63": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(25))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r64": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(26))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r65": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(28))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r66": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(29))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r67": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r68": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r69": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r70": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(31))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r71": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(32))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r72": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10A", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-10A" }, "r73": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10A", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-10A" }, "r74": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-11" }, "r75": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r76": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(10))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r77": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(2)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r78": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(2)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r79": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r80": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(20))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r81": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r82": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r83": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(8))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r84": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r85": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "12", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-12" }, "r86": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "13", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-13" }, "r87": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "15", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-15" }, "r88": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "15", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-15" }, "r89": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-24" }, "r90": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-25" }, "r91": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28" }, "r92": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "235", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/235/tableOfContent" }, "r93": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "275", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/275/tableOfContent" }, "r94": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 4.E)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480418/310-10-S99-2" }, "r95": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "440", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/440/tableOfContent" }, "r96": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "470", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/470/tableOfContent" }, "r97": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-6" }, "r98": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-7" }, "r99": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.3-04)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480008/505-10-S99-1" }, "r100": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r101": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "805", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/805/tableOfContent" }, "r102": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(11))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1" }, "r103": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(13))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1" }, "r104": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(16))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1" }, "r105": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(17))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1" }, "r106": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(23))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1" }, "r107": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(15))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1" }, "r108": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1" }, "r109": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "470", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477734/942-470-50-3" }, "r110": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32" }, "r111": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32" }, "r112": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32" }, "r113": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32" }, "r114": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Subparagraph": "(a)", "SubTopic": "20", "Topic": "740", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482659/740-20-45-2" }, "r115": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "606", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-13" }, "r116": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(h))", "SubTopic": "10", "Topic": "235", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1" }, "r117": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Topic": "606", "Publisher": "FASB", "URI": "https://asc.fasb.org/606/tableOfContent" }, "r118": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "12", "Subsection": "04", "Paragraph": "a", "Publisher": "SEC" }, "r119": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "12", "Subsection": "12", "Paragraph": "Column A", "Footnote": "2", "Publisher": "SEC" }, "r120": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "12", "Subsection": "12A", "Paragraph": "Column A", "Footnote": "2", "Publisher": "SEC" }, "r121": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "12", "Subsection": "12B", "Paragraph": "Column A", "Subparagraph": "(a)", "Footnote": "4", "Publisher": "SEC" }, "r122": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "12", "Subsection": "12B", "Paragraph": "Column A", "Subparagraph": "(b)", "Footnote": "4", "Publisher": "SEC" }, "r123": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "12", "Subsection": "14", "Paragraph": "Column A", "Footnote": "2", "Publisher": "SEC" }, "r124": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "12", "Subsection": "17", "Paragraph": "Column A", "Publisher": "SEC" }, "r125": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "12", "Subsection": "17", "Paragraph": "Column B", "Publisher": "SEC" }, "r126": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "12", "Subsection": "17", "Paragraph": "Column C", "Publisher": "SEC" }, "r127": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "12", "Subsection": "17", "Paragraph": "Column D", "Publisher": "SEC" }, "r128": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "12", "Subsection": "17", "Paragraph": "Column E", "Publisher": "SEC" }, "r129": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "12", "Subsection": "17", "Paragraph": "Column F", "Publisher": "SEC" }, "r130": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "13", "Subsection": "01", "Paragraph": "a", "Subparagraph": "(4)(i)", "Publisher": "SEC" }, "r131": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "13", "Subsection": "01", "Paragraph": "a", "Subparagraph": "(4)(iii)(A)", "Publisher": "SEC" }, "r132": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "13", "Subsection": "01", "Paragraph": "a", "Subparagraph": "(4)(iii)(B)", "Publisher": "SEC" }, "r133": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "13", "Subsection": "01", "Paragraph": "a", "Subparagraph": "(4)(iv)", "Publisher": "SEC" }, "r134": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "13", "Subsection": "02", "Paragraph": "a", "Subparagraph": "(4)(i)", "Publisher": "SEC" }, "r135": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "13", "Subsection": "02", "Paragraph": "a", "Subparagraph": "(4)(iii)(A)", "Publisher": "SEC" }, "r136": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "13", "Subsection": "02", "Paragraph": "a", "Subparagraph": "(4)(iii)(B)", "Publisher": "SEC" }, "r137": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "13", "Subsection": "02", "Paragraph": "a", "Subparagraph": "(4)(iii)(C)", "Publisher": "SEC" }, "r138": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "13", "Subsection": "02", "Paragraph": "a", "Subparagraph": "(4)(iv)", "Publisher": "SEC" }, "r139": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Staff Accounting Bulletin (SAB)", "Number": "Topic 11", "Section": "L", "Publisher": "SEC" }, "r140": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Staff Accounting Bulletin (SAB)", "Number": "Topic 11", "Section": "M", "Paragraph": "Question 2", "Publisher": "SEC" }, "r141": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Staff Accounting Bulletin (SAB)", "Number": "Topic 5", "Section": "Y", "Paragraph": "Question 2", "Publisher": "SEC" }, "r142": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Staff Accounting Bulletin (SAB)", "Number": "Topic 5", "Section": "Y", "Paragraph": "Question 4", "Publisher": "SEC" }, "r143": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "105", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479343/105-10-65-6" }, "r144": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483499/205-20-50-1" }, "r145": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483499/205-20-50-7" }, "r146": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-1" }, "r147": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-5" }, "r148": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r149": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(15))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r150": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(16))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r151": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(17))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r152": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(18))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r153": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(20))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r154": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(22)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r155": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r156": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(3)(c)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r157": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30)(a)(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r158": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r159": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r160": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r161": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1A" }, "r162": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1A", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1A" }, "r163": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1A", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1A" }, "r164": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1B" }, "r165": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1B", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1B" }, "r166": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-4" }, "r167": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-5" }, "r168": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-6" }, "r169": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(21))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r170": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(24))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r171": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(25))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r172": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r173": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "15", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-15" }, "r174": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-2" }, "r175": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-24" }, "r176": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-8" }, "r177": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483426/235-10-50-1" }, "r178": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1" }, "r179": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(h)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1" }, "r180": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-04(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-3" }, "r181": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "23", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-23" }, "r182": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-24" }, "r183": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-5" }, "r184": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-1" }, "r185": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-1" }, "r186": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-11" }, "r187": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-11" }, "r188": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-3" }, "r189": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-4" }, "r190": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-6" }, "r191": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-7" }, "r192": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-7" }, "r193": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-8" }, "r194": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-9" }, "r195": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5", "Subparagraph": "(SAB Topic 11.M.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480530/250-10-S99-5" }, "r196": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/260/tableOfContent" }, "r197": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-10" }, "r198": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "16", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-16" }, "r199": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-2" }, "r200": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "60B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-60B" }, "r201": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "60B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-60B" }, "r202": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-7" }, "r203": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-1" }, "r204": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-1" }, "r205": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-2" }, "r206": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-3" }, "r207": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482635/260-10-55-15" }, "r208": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "270", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482964/270-10-50-1" }, "r209": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "272", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483014/272-10-45-1" }, "r210": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/280/tableOfContent" }, "r211": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-15" }, "r212": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-21" }, "r213": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-21" }, "r214": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r215": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r216": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r217": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r218": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r219": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r220": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r221": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r222": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r223": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(j)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r224": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "25", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-25" }, "r225": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "25", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-25" }, "r226": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "26", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-26" }, "r227": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "26A", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-26A" }, "r228": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "26B", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-26B" }, "r229": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "26C", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-26C" }, "r230": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30" }, "r231": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30" }, "r232": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30" }, "r233": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30" }, "r234": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-31" }, "r235": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32" }, "r236": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(ee)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32" }, "r237": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32" }, "r238": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "34", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-34" }, "r239": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "40", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-40" }, "r240": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "41", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-41" }, "r241": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "41", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-41" }, "r242": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "42", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-42" }, "r243": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481990/310-10-45-13" }, "r244": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481962/310-10-50-4" }, "r245": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481687/323-10-50-3" }, "r246": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "4", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-4" }, "r247": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "5", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-5" }, "r248": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479344/326-20-45-1" }, "r249": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-13" }, "r250": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "330", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483080/330-10-50-2" }, "r251": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480265/350-10-S45-1" }, "r252": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482598/350-20-45-1" }, "r253": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482598/350-20-45-2" }, "r254": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1" }, "r255": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1" }, "r256": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1" }, "r257": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1" }, "r258": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1" }, "r259": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1" }, "r260": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1" }, "r261": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1" }, "r262": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1" }, "r263": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1A" }, "r264": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-2" }, "r265": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482686/350-30-45-1" }, "r266": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482686/350-30-45-2" }, "r267": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r268": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r269": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r270": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r271": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r272": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r273": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r274": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r275": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r276": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-3" }, "r277": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "60", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147476166/350-60-65-1" }, "r278": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-3" }, "r279": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "405", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1" }, "r280": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482017/420-10-50-1" }, "r281": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 5.P.4.d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479823/420-10-S99-2" }, "r282": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "440", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482648/440-10-50-4" }, "r283": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "440", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482648/440-10-50-4" }, "r284": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483076/450-20-50-4" }, "r285": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483076/450-20-50-9" }, "r286": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.Y.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480102/450-20-S99-1" }, "r287": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.Y.Q4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480102/450-20-S99-1" }, "r288": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-6" }, "r289": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A" }, "r290": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A" }, "r291": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iii)(B))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A" }, "r292": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iv))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A" }, "r293": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A" }, "r294": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B" }, "r295": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B" }, "r296": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B" }, "r297": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(C))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B" }, "r298": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iv))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B" }, "r299": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B" }, "r300": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B" }, "r301": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B" }, "r302": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B" }, "r303": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B" }, "r304": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B" }, "r305": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B" }, "r306": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1D", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1D" }, "r307": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1D", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1D" }, "r308": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1D", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1D" }, "r309": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1E", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1E" }, "r310": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1E", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1E" }, "r311": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1E", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1E" }, "r312": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1F", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1F" }, "r313": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1F", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1F" }, "r314": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1F", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1F" }, "r315": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1F", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1F" }, "r316": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1I", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1I" }, "r317": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-4" }, "r318": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-4" }, "r319": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-6" }, "r320": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-13" }, "r321": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.3-04)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480008/505-10-S99-1" }, "r322": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479837/606-10-45-1" }, "r323": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479837/606-10-45-2" }, "r324": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479837/606-10-45-3" }, "r325": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-10" }, "r326": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12" }, "r327": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12" }, "r328": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12" }, "r329": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12" }, "r330": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12" }, "r331": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-13" }, "r332": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-15" }, "r333": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-4" }, "r334": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-5" }, "r335": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-8" }, "r336": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-9" }, "r337": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r338": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r339": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r340": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)(A)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r341": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)(B)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r342": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)(C)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r343": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r344": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480576/715-80-50-5" }, "r345": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480576/715-80-50-5" }, "r346": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/718/tableOfContent" }, "r347": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "1D", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480483/718-10-35-1D" }, "r348": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480483/718-10-35-2" }, "r349": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480483/718-10-35-3" }, "r350": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r351": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r352": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r353": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r354": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r355": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r356": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r357": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r358": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r359": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r360": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r361": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(04)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r362": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r363": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r364": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r365": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r366": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r367": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r368": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r369": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r370": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r371": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r372": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r373": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r374": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r375": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r376": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(v)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r377": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r378": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r379": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r380": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r381": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(l)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r382": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 14.F)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479830/718-10-S99-1" }, "r383": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "720", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483359/720-20-50-1" }, "r384": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/740/tableOfContent" }, "r385": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482525/740-10-45-4" }, "r386": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482525/740-10-45-6" }, "r387": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-10" }, "r388": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12" }, "r389": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12B", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12B" }, "r390": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12C", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12C" }, "r391": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "14", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-14" }, "r392": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "17", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-17" }, "r393": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-21" }, "r394": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482615/740-10-65-8" }, "r395": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(d)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482615/740-10-65-8" }, "r396": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.5.Q1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479360/740-10-S99-1" }, "r397": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.7)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479360/740-10-S99-1" }, "r398": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 11.C)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479360/740-10-S99-2" }, "r399": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "270", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477891/740-270-50-1" }, "r400": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482603/740-30-50-2" }, "r401": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "323", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2" }, "r402": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "323", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2" }, "r403": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "323", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2" }, "r404": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "323", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2" }, "r405": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "323", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2" }, "r406": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479907/805-20-50-5" }, "r407": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479907/805-20-50-5" }, "r408": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "60", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147476176/805-60-65-1" }, "r409": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "60", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147476176/805-60-65-1" }, "r410": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "19", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-19" }, "r411": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-25" }, "r412": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-25" }, "r413": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-1A" }, "r414": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-1A" }, "r415": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(bb)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-3" }, "r416": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-3" }, "r417": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6" }, "r418": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6" }, "r419": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6" }, "r420": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6" }, "r421": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6" }, "r422": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(i)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6" }, "r423": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1" }, "r424": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(e)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1" }, "r425": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1" }, "r426": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "54B", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482134/820-10-35-54B" }, "r427": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r428": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r429": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(bbb)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r430": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(bbb)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r431": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(bbb)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r432": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r433": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r434": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r435": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2E", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2E" }, "r436": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-3" }, "r437": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A" }, "r438": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6A", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A" }, "r439": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6A", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A" }, "r440": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6A", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A" }, "r441": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6A", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A" }, "r442": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-10" }, "r443": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "28", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-28" }, "r444": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481839/830-10-45-9" }, "r445": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482014/830-20-35-3" }, "r446": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "230", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477401/830-230-45-1" }, "r447": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-12" }, "r448": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-17" }, "r449": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20" }, "r450": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20" }, "r451": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20" }, "r452": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20" }, "r453": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20" }, "r454": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481674/830-30-50-1" }, "r455": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "835", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482925/835-30-45-2" }, "r456": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "835", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482900/835-30-50-1" }, "r457": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479832/842-10-65-8" }, "r458": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "12A", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479165/842-20-35-12A" }, "r459": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479041/842-20-45-1" }, "r460": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479041/842-20-45-1" }, "r461": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(g)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4" }, "r462": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "848", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(a)(3)(iii)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483550/848-10-65-2" }, "r463": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(bb)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r464": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(bb)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r465": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(bb)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r466": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r467": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481420/860-30-50-7" }, "r468": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "910", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482546/910-10-50-6" }, "r469": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "910", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482546/910-10-50-7" }, "r470": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "924", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 11.L)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479941/924-10-S99-1" }, "r471": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "926", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483154/926-20-50-5" }, "r472": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "928", "SubTopic": "340", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478859/928-340-50-1" }, "r473": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "940", "SubTopic": "820", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478119/940-820-50-1" }, "r474": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(10)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1" }, "r475": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(23))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1" }, "r476": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(26))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1" }, "r477": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(27))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1" }, "r478": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-05(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477314/942-235-S99-1" }, "r479": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(12))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r480": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(15)(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r481": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r482": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(21))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r483": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r484": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(23)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r485": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r486": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(25))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r487": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(11))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1" }, "r488": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(16))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1" }, "r489": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(18))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1" }, "r490": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1" }, "r491": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(20))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1" }, "r492": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1" }, "r493": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(23))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1" }, "r494": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1" }, "r495": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column A))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1" }, "r496": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column B))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1" }, "r497": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column C))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1" }, "r498": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column D))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1" }, "r499": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column E))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1" }, "r500": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column F))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1" }, "r501": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column G))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1" }, "r502": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column H))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1" }, "r503": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column I))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1" }, "r504": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column J))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1" }, "r505": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column K))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1" }, "r506": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-17(Column A))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2" }, "r507": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-17(Column B))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2" }, "r508": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-17(Column C))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2" }, "r509": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-17(Column D))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2" }, "r510": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-17(Column E))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2" }, "r511": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-17(Column F))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2" }, "r512": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4E", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4E" }, "r513": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5" }, "r514": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A" }, "r515": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2" }, "r516": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2" }, "r517": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(f)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2" }, "r518": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2" }, "r519": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2" }, "r520": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(h)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2" }, "r521": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.W.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479583/944-40-S99-1" }, "r522": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479886/946-10-S99-3" }, "r523": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(i)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479886/946-10-S99-3" }, "r524": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480990/946-20-50-11" }, "r525": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480990/946-20-50-13" }, "r526": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478009/946-205-45-3" }, "r527": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478009/946-205-45-4" }, "r528": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477796/946-210-45-4" }, "r529": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6" }, "r530": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6" }, "r531": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r532": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r533": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r534": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r535": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(13)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r536": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(13)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r537": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(14))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r538": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(15))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r539": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(16)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r540": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(17))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r541": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r542": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(2)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r543": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(2)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r544": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r545": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r546": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r547": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r548": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r549": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r550": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(e))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r551": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(8))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r552": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r553": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r554": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r555": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(e))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r556": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.6-05(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-2" }, "r557": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.6-05(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-2" }, "r558": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479105/946-220-45-3" }, "r559": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479105/946-220-45-7" }, "r560": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r561": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(2)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r562": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r563": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r564": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r565": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r566": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r567": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r568": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r569": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r570": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r571": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r572": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r573": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r574": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r575": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(1)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3" }, "r576": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3" }, "r577": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3" }, "r578": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3" }, "r579": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1" }, "r580": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-2" }, "r581": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3" }, "r582": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3" }, "r583": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6" }, "r584": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "954", "SubTopic": "440", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478522/954-440-50-1" }, "r585": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "976", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477332/976-310-50-1" }, "r586": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "978", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479230/978-310-50-1" }, "r587": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "985", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481283/985-20-50-2" }, "r588": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "13H", "Subparagraph": "(a)", "SubTopic": "40", "Topic": "944", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-13H" }, "r589": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-1" }, "r590": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-1" }, "r591": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "52", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482635/260-10-55-52" }, "r592": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30" }, "r593": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-31" }, "r594": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "47", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-47" }, "r595": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "47", "Subparagraph": "(bb)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-47" }, "r596": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "47", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-47" }, "r597": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "47", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-47" }, "r598": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "48", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-48" }, "r599": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "49", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-49" }, "r600": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "54", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-54" }, "r601": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "54", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-54" }, "r602": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "54", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-54" }, "r603": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "12A", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481933/310-10-55-12A" }, "r604": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482548/350-20-55-24" }, "r605": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "40", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482640/350-30-55-40" }, "r606": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B" }, "r607": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "69B", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481568/470-20-55-69B" }, "r608": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "69C", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481568/470-20-55-69C" }, "r609": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "69E", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481568/470-20-55-69E" }, "r610": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "69F", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481568/470-20-55-69F" }, "r611": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-13" }, "r612": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91" }, "r613": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91" }, "r614": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91" }, "r615": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91" }, "r616": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91" }, "r617": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91" }, "r618": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91" }, "r619": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r620": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r621": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480482/715-20-55-17" }, "r622": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480576/715-80-50-11" }, "r623": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480576/715-80-50-6" }, "r624": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480547/715-80-55-8" }, "r625": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r626": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r627": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "231", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482663/740-10-55-231" }, "r628": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "4J", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481175/810-10-55-4J" }, "r629": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "4K", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481175/810-10-55-4K" }, "r630": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "100", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-100" }, "r631": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "100", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-100" }, "r632": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "103", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-103" }, "r633": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "107", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107" }, "r634": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "107", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107" }, "r635": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "107", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107" }, "r636": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "835", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482949/835-30-55-8" }, "r637": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "53", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479589/842-20-55-53" }, "r638": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "852", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481372/852-10-55-10" }, "r639": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479401/944-30-55-2" }, "r640": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "13H", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-13H" }, "r641": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "29F", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-29F" }, "r642": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "9C", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-9C" }, "r643": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "9C", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-9C" }, "r644": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "9C", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-9C" }, "r645": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "9E", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-9E" }, "r646": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "18", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480078/944-80-55-18" }, "r647": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-1" }, "r648": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6" }, "r649": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477439/946-210-55-1" }, "r650": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477802/946-310-45-1" }, "r651": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1" }, "r652": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-2" }, "r653": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3" }, "r654": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6" }, "r655": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "830", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479168/946-830-55-10" }, "r656": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "830", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479168/946-830-55-11" }, "r657": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "830", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479168/946-830-55-12" }, "r658": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b" }, "r659": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b-2" }, "r660": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "d1-1" }, "r661": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 10-Q", "Number": "240", "Section": "308", "Subsection": "a" }, "r662": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "16", "Subsection": "J", "Paragraph": "a" }, "r663": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1" }, "r664": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i" }, "r665": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "A" }, "r666": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "B" }, "r667": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "C" }, "r668": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "D" }, "r669": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "E" }, "r670": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "ii" }, "r671": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "iii" }, "r672": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "2" }, "r673": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a" }, "r674": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1" }, "r675": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "i" }, "r676": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "ii" }, "r677": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iii" }, "r678": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iv" }, "r679": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "v" }, "r680": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "2" }, "r681": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "3" }, "r682": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "b" }, "r683": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a" }, "r684": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1" }, "r685": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "i" }, "r686": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "ii" }, "r687": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iii" }, "r688": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iv" }, "r689": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "v" }, "r690": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "2" }, "r691": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "3" }, "r692": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "b" }, "r693": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Forms 10-K, 10-Q, 20-F", "Number": "240", "Section": "13", "Subsection": "a-1" }, "r694": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v" }, "r695": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "1" }, "r696": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "ii" }, "r697": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii" }, "r698": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "B", "Clause": "1", "Subclause": "ii" }, "r699": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "C", "Clause": "1", "Subclause": "i" }, "r700": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "C", "Clause": "1", "Subclause": "ii" }, "r701": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "C", "Clause": "1", "Subclause": "iii" }, "r702": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "C", "Clause": "1", "Subclause": "iv" }, "r703": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "C", "Clause": "1", "Subclause": "v" }, "r704": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "C", "Clause": "1", "Subclause": "vi" }, "r705": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iv" }, "r706": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "vi" }, "r707": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "3" }, "r708": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "4" }, "r709": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "i" }, "r710": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "ii" }, "r711": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "iii" }, "r712": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "iv" }, "r713": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "6" }, "r714": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "6", "Subparagraph": "i" }, "r715": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1" }, "r716": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i" }, "r717": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "A" }, "r718": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "B" }, "r719": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "C" }, "r720": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "D" }, "r721": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "E" }, "r722": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "ii" }, "r723": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "iii" }, "r724": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "2" }, "r725": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "1" }, "r726": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2" }, "r727": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "A" }, "r728": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "C" }, "r729": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "D" }, "r730": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "E" }, "r731": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "F" }, "r732": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a" }, "r733": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "1" }, "r734": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "A" }, "r735": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "B" }, "r736": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "C" }, "r737": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "D" }, "r738": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "b", "Paragraph": "1" }, "r739": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Section": "402", "Number": "229", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "C", "Clause": "1" }, "r740": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "A", "Number": "229" }, "r741": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "B", "Clause": "1", "Number": "229" }, "r742": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "B", "Clause": "1", "Subclause": "i", "Number": "229" }, "r743": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-T", "Number": "232", "Section": "405" }, "r744": { "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483076/450-20-50-10" }, "r745": { "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef", "Topic": "855", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483399/855-10-50-3" }, "r746": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)", "SubTopic": "20", "Topic": "842", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4" }, "r747": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "13", "Subsection": "01", "Paragraph": "a", "Subparagraph": "(4)(ii)", "Publisher": "SEC" }, "r748": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "13", "Subsection": "01", "Paragraph": "a", "Subparagraph": "(4)(iii)", "Publisher": "SEC" }, "r749": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Staff Accounting Bulletin (SAB)", "Number": "Topic 5", "Section": "Y", "Paragraph": "Question 2", "Publisher": "SEC" }, "r750": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r751": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-4" }, "r752": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-5" }, "r753": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-6" }, "r754": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r755": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28" }, "r756": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(f))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1" }, "r757": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1" }, "r758": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-04(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-3" }, "r759": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "23", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-23" }, "r760": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-24" }, "r761": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-5" }, "r762": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-4" }, "r763": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-6" }, "r764": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-1" }, "r765": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "270", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482964/270-10-50-1" }, "r766": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-18" }, "r767": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r768": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30" }, "r769": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30" }, "r770": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(ee)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32" }, "r771": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32" }, "r772": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481990/310-10-45-2" }, "r773": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481687/323-10-50-3" }, "r774": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/350-20/tableOfContent" }, "r775": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1" }, "r776": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1" }, "r777": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1" }, "r778": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1" }, "r779": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1" }, "r780": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1" }, "r781": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1" }, "r782": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1" }, "r783": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1" }, "r784": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1A" }, "r785": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-2" }, "r786": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/350-30/tableOfContent" }, "r787": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482686/350-30-45-1" }, "r788": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r789": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r790": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r791": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r792": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r793": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r794": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r795": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r796": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-1" }, "r797": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "405", "SubTopic": "30", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/405-30/tableOfContent" }, "r798": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "405", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1" }, "r799": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "405", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1" }, "r800": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "405", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1" }, "r801": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "410", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481931/410-30-50-10" }, "r802": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/450/tableOfContent" }, "r803": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483076/450-20-50-9" }, "r804": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.Y.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480102/450-20-S99-1" }, "r805": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-6" }, "r806": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-6" }, "r807": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A" }, "r808": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iii))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A" }, "r809": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B" }, "r810": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1D", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1D" }, "r811": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "505", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481549/505-30-45-1" }, "r812": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "505", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481520/505-30-50-4" }, "r813": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-10" }, "r814": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-5" }, "r815": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r816": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r817": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r818": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r819": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r820": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r821": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r822": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r823": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r824": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r825": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(04)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r826": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r827": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r828": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r829": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r830": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r831": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r832": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r833": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r834": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r835": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r836": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r837": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r838": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r839": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r840": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(v)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r841": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r842": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "25", "Paragraph": "6A", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480682/815-20-25-6A" }, "r843": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1" }, "r844": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r845": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(bbb)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r846": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(bbb)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r847": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(bbb)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r848": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2E", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2E" }, "r849": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A" }, "r850": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "28", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-28" }, "r851": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "835", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1A", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482925/835-30-45-1A" }, "r852": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "835", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482925/835-30-45-2" }, "r853": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "835", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482925/835-30-45-3" }, "r854": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "835", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482900/835-30-50-1" }, "r855": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "852", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481404/852-10-50-7" }, "r856": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "852", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481404/852-10-50-7" }, "r857": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r858": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r859": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r860": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4" }, "r861": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4" }, "r862": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4" }, "r863": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(16)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r864": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479432/944-30-50-2B" }, "r865": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477363/944-310-50-3" }, "r866": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477363/944-310-50-3" }, "r867": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4B" }, "r868": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4B", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4B" }, "r869": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4C", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4C" }, "r870": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4D", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4D" }, "r871": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4G", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4G" }, "r872": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5" }, "r873": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5" }, "r874": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5" }, "r875": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5" }, "r876": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r877": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r878": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r879": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r880": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r881": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)(5)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r882": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)(6)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r883": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r884": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A" }, "r885": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A" }, "r886": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A" }, "r887": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A" }, "r888": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A" }, "r889": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A" }, "r890": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7B" }, "r891": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7B", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7B" }, "r892": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7B", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7B" }, "r893": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480109/944-80-50-2" }, "r894": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480109/944-80-50-2" }, "r895": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478009/946-205-45-4" }, "r896": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3" }, "r897": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3" } } } ZIP 76 0001558370-24-011080-xbrl.zip IDEA: XBRL DOCUMENT begin 644 0001558370-24-011080-xbrl.zip M4$L#!!0 ( +> !EDD>,7W_Q( *71 0 8FQD+3(P,C0P-C,P+GAS M9.U=6W/;.+)^WZKS'WC\LMFJ(\NRD\S8-&[5G!BKC"",4<F>G/YV>G?:,3N>C8'%M^I#%WYV_M9X=W7^\]7%I?'T$),]0,7F5$'WXMM7OK4D*]/@)EL0 M_FBNB+\V+?+A9,GY^JK;?7Y^/N7>>A90QSZUO)7@<_;^ J0W.6=T%G!RY['5 M+9F;@<-!$^X?@>F(LD%!#D$59 A2R:!1U[^"6F2*>[XX]=@""CKK=7]_N)^( M"L;$#G6_9JA?9LR)Z2^ZF#P#U<7DC,Q+J=]W(75;"4BP^98V3?>N&R9N29V* M"OQ^#S5()*-JR3K4];GI6B1=%5I11)Y> X>XXGGE117J75Y>=D5J3!KXG85I MKK?$<].?"=(H032#%#%_71-?2BU2,N0N66 ++I7PLLL\AW0CLCB7SWA9*=ND M3#$V9[D,F8(@N8O)F.>\C%.6>.K=/^0V+B!JMS6;LY/^N2%TYW2,F0^]22,X>$ M+"&HL83Q-BF;@:]9"6M(R=:9LPJ\(76KSA=K*>>)*=EV9%++E].*I RQY04N M9V5J#A/SVI#J(=O&R)H12ZQ]:/)JS!ATR*[<(F)BI"+'L$B M.T_8\8-9*3$FAAD^_L4PQ*!ENJ['16?" M3_'']9JZEKAV*(+2N)AXW("U]1QJ8[^[-AT<-2=+0F+H-.@J\7J'([G M;,L)?M^,'B>C^^%M?SJX-:[[]_W'FX$Q^3P83"]!BVXM=$U_>>=XS[K=,Z%7(OFV M%I+]R6?C[G[T6]L[Y7.93YYG/U/'@3G$B"\)&X+4[@+7)7Z<=$NX29W"E*9& MSNJ9S5N M)>?W,0L#)CC&(*_D2H@3? F*N5O+<)U$<[]W?=]F-?4A[N2C1K[ M\]K8A]_H]IMABB+;IJ!H"O>>NY@2] 3-^)A8GFM1AXKZEX"NSJ""]UVQ:R/3 M#G(UD"U\R')N4=P7Q1N0Z+PVE&&N"CSW ]-X(PIH056#BLY?.W#(:(Y_/9@\ M8)2_:G31ZHSJKEJPQ 5TXQ(,;V[8^&D5%=+VVEJ]=N,Y&^HN[DSL*5K8EN91 MP_I6H]-&S(V8>XNG L]'PL.UYQ-ADZ7)R$TB00F<.EE4:%X633"P-4*^!C V M!&=<%27,6S!5'EW4F=A71><"<7U1][[%Z::\=^IE4@#:.RM:7<$XVN9-LX:D MF'N+J +1OF6Q@-CWU)RA/:.D;%U33JA"[J+8%2-F1HI;BY0+8@E5KT^0)+)8+JW). M023='91L)HWME'?ZVRG&FPSWMO/5<]\N37=!_*$KAJ*EY]B$^8,_ N@DN@[= M"@Y*I-_59/@@SZ%-*<6EK*9 M+<8DP6+]";J)VOQ4OKB MJGQN:D24'O$6 2D"=R9EOYI.0!Z(B7^+^4(>"CF1$I/W14R0DR%8&6E>+3AR M;QA9H'J**_$J"B4L/Q5AB=BTZVXE)*%_=VJ^%$>4=)(2A)^+($2N8\&@U;Z> MKU_IV5G(;Q&IX;#7\] KL>F=24Q5B4^^Q:<F+=@YDJ* M3Y%*B8]D!1GN>B6\C(A9BX]\;1_XU"6^#TUY1MUT)+6"1HF-9"$9,S+2G%I@ M-/>MU!M6:E#TMJI:2*20B%4U--T5Y6+5@&=X/.$7(:[,_:*D5\(E6>>'2_L4 M5['@S_!MX=/TE^G[S?3\9Y=XHK.PBR]QGQEOXE^MS[FV)VUJUO2G11FJH;LX M>WMV43, ^4W(N<50[5V3@R:A4*'TKHA2+HJM1:6F4T>.32F="J&?B@A)_#LM M3#5=#7*4RLA4(%T609*&#[8H[>!^*.E05;0*O'IGDDY5%AW88K:#2Z("LS): M%6:]$LPDWHD6L[JK83E>I70JK"Z*6$EC.%N8:D:*E$3;5E!60_56.VRD#;A5 MH#4F&^(&! ]J+<(*0)JY6#"\5:D<.MUL*APEOJB(M9'B'9*DV+>PUH95K%RU MT%:[J97;' M@$(,40I:WK <8UM0"W6=@Y[$I1Y[]#A!)S'&Q:Y1A^*#SG%/C>QJP-^I#WV* M<@S!-SPN$1<5?6LQU\>\RBB7TJE1?*]$L;7$.P>FESDXAZ\X$]2 MZT1\+H\"Z3K!=Y 4,6_AW,G[785C*;$*P!K1>2UL.\3I38+5RF1EMU)HY% ! MJ!O"A\"&G%L<=\ Q%5)2 TM)+C6>A;&S#,],F$N+:4V'J]K)JCX7H.<>;R'1 MA$2^7UA*IXJ?D.P7ROS>[7YA?2>+'*DJ4A58[XM@E;I8_BL PW_P"9PQF1OB M39OJR M0[=Y@D,SJHMFMN4U3R3'G-45";(0YRC2_-+-O3D2?)0&Q/,8--_NV MEI][+>@BW:0ZO=/>B1$^S77O6>);DBTG:S'K*10;5;2B!N7OLI05+"473[3@ MC]U*3=ZOT2HU)LJ1?%M.I@\B"?VU?,,-:7& M+FHVP<)+:YKEQQFPX'?:19:]EU79 *4O MH'6)P_TMFWKML>1)M3TJ(9YAVJT.R<-6>N7']&'9^#S8[A8@\\33#K8'\DI+ MCQX?%,5_.!EB&W5"&QGMZCR0U8RP<#(* \V_*DC"$6K[I-R5+5Y?&G*RP@D8 MU#J8^3"W"##K)^8%ZP\GXAF_*PHD)X8)J]5635'TT#SR.&D67H_XX<2* MBM]?(9-GZBY@BD+N/1//^-;31R%W4]5Q2V:48R]EX26AZ[5#+:SI@\D6U!5[ M!R-W"A,PYQX6[,Q^27JB3I/B"?A9O.NVM%IW]@D$=2_1MO0UQ0 MY"/A9=+J45? O<;=VN,(%9ME*UR>FTZT=XB["'X_>M,4ZS7UXMW%P7Q.+#Z: MCPG:-4O<0^A97_O/)K/]M!T_',^T,GS!1EL=AS#R.XDB!!BMA;MW3ZUD67TW M96SM810[!;+ 9ZCG$]B.>$B+C%XEB:(;[SD*[B:4Y'+JK3=K2E[XM0,8Q.+I M$BL$Y3'ID2U6L;H8Q CK?.^5P'KS%JC;+\1NEB"_/W0EG\"%OP6%++UI<9*_,9E MJ@=*4=J1V]T8NO&G0$SSLN9!EM!$HU!R."UO#M1D#3$$O\+P"K/,&P9,Q M"=M8!GE211?&@=I=*"ML\RN;KO %24^@=RAH[]*PE+:)HJY\Y % MO[V CY%LY.80/S33'U5QTV?O\(I+,_UA%;=DY AM+LOV1U7>G1>PP^LNP_5' M5=U3Z'N""?DA59?A>G3OUW9)=5Q516O&*)[8/Z2^BJR_SR+41A_G<=:@>+9L MNC3=:&$HEG_^$"=/6"OTFAYC%;ICJ^(:U#]63V%T1MUKT M_1V#P@AL][A M@W)LY'HV/"HVFI=>4E/2$>OG:TK/VIJ0**1&A-E\<6W""J^YJXS0#AP:IP4 M\(ZZL!BB&&<0QIPH!S"]3(V3M?(HM/Z(HY.YF;(G.X]Z+<_%OA>.0[D]%EWB)IIJ;'ICF+I<>XQY& &8DZTBO8GB8+1;,EC@$)*> MKY2F-G?V4:QR=BY1D=Y$?.X(C&>FXMH_-*MO82E.;*$HVL'),YH01UQ*= MY<'D <.'CS/.H3H9OK\;;SD/GJIS>)/Z^N3N9('4+\5+IRWB3#]%[IAMA0W:$;G>P.OR37OX!E)&4.FY]F!W8@<5SDI2F-E&4 T<&W 0K M<1)^0\(I-3;@)24;P>I(T0BJ,K__G/Y;"GS >*1]2V^&>3ZL]"+D1>(RC*XF M^C>Q1QOH^DE$\X$"%0Y=FZ:N\\;$IS9\H*:3GW87$YIH4(>N']T% H-9W[*( M[WN,YF??2JHFBI9UI,"D@\"REZ,?)>GV=X[G;:6LDZ$1QD)^:#>:F,;UQ\^: MQWT5.;_/T=_BQ/6+R[8&HW)CY!%#07R,_(@.Z.:GJWMP:L@D]7CA2W<>FQ.H MFCUBH 2C:=/IS,'K_)";#8P#Y\^$[Y&_JJ>+HF/1-X'-OA4$#,T"NY"QU*5%3A4N] M?W,;D/.S\\O<,9'R].;/8+;G\4QG3&P2>JGQP(^_]!P[[8?J1X^DD:1UKO#E M\1&C"PK9G=>A[P.^88BV/PHX*MRF[J)L?O!-2F[$G"K?1"[.JYM0*KU)34B^ MEQAC%XZE$_I2N 1*-\.>PM6YX2.OB!V%Q4MY:XJ;SO)G$IA1*WQ7<[)FQ,1; MBJ*]1%S+:$BOR+]OQ]Q-%W/3\2N4(=\)Q7L7\Z"K*1N(-=["@^'L8%"%/SW M@)/$M[#=>ZHF:Z!@$V_.Y)%#6[Q**9HH#J.?84R4RE%,:J( :UJH>/*I@17N MPV\[W!D^?3OU5GTJ!LH9G'UEJSMMG&@+]&O$\EB52O;7C/YO>RZKN7EZYNO@:*+GG^""U=]/..I 8^ M#=(_RV!7NF IV \U90-!38SX;Q[[Z@]=2W+7=@E% \7Y!'-)=X(WF.?%**8T ML/I3\F+ZB<+S,I0D-U 0>5_8WDK1#_C28[CQ%WHHOW"8*/T;@WJK.Y,&@\;8 ME7*'><;-/S$=XC^%SY>\XJ6I+WAL7CR5NW7YY[8/=+(<60W;78(:6@B?70E? M#?CX'U!+ P04 " "W@ 99 4$KMH@0 #BX % &)L9"TR,#(T,#8S M,%]C86PN>&UL[5U;<^(X%GZ?JOT/7N9E]H%P33I)3?<4 =)-%0DI8*9GGKJ, M+8)JC,7*-H3Y]2O)-K'!LF5#L&RVJJN[;73[SG=\='1T^_6WMZ6AK &V(#(_ M5QI7]8H"3 WIT'S]7''L>?6V\MN7?_WTZ[^KU3\?QD-%1YJS!*:M:!BH-M"5 M#;07RA2M5JJI/ &,H6$H#QCJKT!1&O6K3U?UJX92K7YA13RH%LF"3(65U;QJ M^#]TO=*0>:__C4CM2D$ MGVG=OUGP++WB-E&@_(H/ MAKZ(@M.XN[NKL5_]I [L"GRL6 M7*X,6BA[M\!@_KDR,_0J9:M^TZI3V#]/;,(X5:4N,BUD0)TJP(-JT/(G"P!L MJZ+0PG\?#T(MLM%JYD!#O]+0LD83U$1*JGU4BW<5>18, M7;1<8; I@778$!,P1*<#$QDV>=!I5J+1P-M3D=,H,13(.A!2S.0Y6#P%2%] M0ZQHQ]1']@+@@4D^N5]L#,'@,-F1HT(/N0,R,3*/+,&+JJH34_ (A7[L>AH?V][AA@-*=/ M3ZKM8&AO3\),0M$?R= :&6OBMSVJ5)XG@L,O];1(GH'M=@@O $\6*@94!QSC MN"]&J-#3XF#5,#>7=G:DIV.5=30;KH^A1+#8TV+I:!IV@#Z$ZHQ2#T%VJQQ3 M5*#-*M;\9GO_W=5AD4H"OFBS5?-2U"QGN632J$+2.5<2 ?NE[7FWI$3M73NJ MC2OFG/^\7WJ@M8'D0_+L54+;= )_-8@"O-G U(&^>PMM6L?=W34=O]3K2E79 M%4G^WQT]3T;#0:\S[?>4A\ZP\]SM*Y-O_?YTPOQVO_T&TD+5&'2D@W"TM)BD MYJHU8^)RK.JKJJ[8\*L&#-ORWS!58H+S7OQP>UF_4$.= >-SQ7]9RZL]70=C M(JV]9D6F^7'3NKV^O;YI-AKMN^M&NUF_VVMX0!$Z.(R!**E?AZ>OV=1YCM'R M76Q>#2A-BQ'6 28C_(KB6*01:$7K4(V*L@'P=6&S7U88(MI;?:XT\^%&TY!# MO&OB% "X5HF/1BQX E4Q621B3IRG"&[30BP"U73X1%QT^D__OPZ!9=!A5K]-^J- G^T+=*["N0L"=%9D7K\MV7FWX^S<$CV?Y:( M2;[W%-O8(MC11V@2O$.X!OI^?(MO6>,S%8*X#!"*8%L#9N(9F5JL-8U,6PCR MQ%M>!'OH3=28KT.@6F!,VS6:_VZYVLCC+BY/,3A,C<#C\EIF+E\P(KCL[8NA MFC;IMJGGO:+1%?)_8G)HG"8*;V=N$X76-&=)60%Z#ZPPT-S(-LG962)LPW_8 M(]\%,DA3+2H7>[NG2\G)\\7 M4?U BC YK7;C[B8O'165?5![DY 4(3P3P! _F#M,*!%[HHS$T,2(LPW@_.T"?8 MY\.49>)7%)[(J#\]CP=SY^3%C\.I;NK!+E<&V@(P!LPS3>Q>LQ=4!G9/C+X( MX8/@L$;0BL=E"=-45M%6C MBY9+9#*\T MI91*-TX 7<14Y* ;8[J!R 1Z7\4F<46MT,3_'&J0UY4G9RR3!F1$6X1Q^ OV M @Q,.'$[!B)2EHEC47A%&'D'NJW8/2![R<)X;PC>3X6E4PA;$4;34TR&$@[> M,B@NJCA.>349^(H\5Z:7#95^=4_$ITE5-G0=$C7 M_T[. Y@C#'9A>6#UWVRL$FV#IHJW \(#"_20G(1VTK37@6D##"S^'JT/JU'" M;S]2"\+[N\XK#I&17 YZ2! @/U#L0O4V0O&^'%YZ"77@W!0?*EDZ:4FJ(FQ, MFE9/XC-)J"SIVLH)PI>";U_'O:8',7&[%FZ.$C*=%FUB:*::TW<=%D*,NQ21 M,HSTDPR\YF_N1>4D:;!N ACHK\ D,.C9;!U]"4UHV134.L'@BV664&U$28N8 MQ5C7[.[077<>R M"7[D3\Z?P(F0TD2*D 2C5&Q]]/@EM2;ZR++'LWIX0EL>AK@ M-=2 -4&&SM$#?H92T)T2GJS.V\Z)\7J9!]()\8TV)[6$A K&;<2@B).77S0V M\KAEX;!L*TU8MCMZ>AGWO_6?)X,_^LK@F3SWMIN-W#^U!*E&1+,2 4G:!_)653R2T2!\-=UM*MIVBE73(MV_>Q(!>W+Y M^*I"DV+N8&@13Z#G8/+W"\ 0Z0F:>X::RZ!9>8E)V*G/L7]X/\)>N%=HI^H5 M.I-ORN-P]#V/R3J*;N_8Q#$@ VBH$3%XQRJ&7P12N@033:'3M: 'W'_)L^NP M$\]]H9JO8$S$T)_/@<;SCL[=B'SZ*]INXBFO(=&:A^WO%MT+XBXFIH,;]Y!J M_LD?X@7(:(]RT;*]KO,8\15A&2C!I@&@L^ K6S@Q8JVT^F\ :] "O/%F8CX) M%>I(.@_U(YL0"J$6ZG;I?G!L.>,4D;Z8QE?HNAQZ8P'"T!-@8K!Q-3; $VID[8?)"<\9(4)J44$I<=2Z0:!)H[$_CJ M^=A$ MHHY&I(Q(@OEN3T9I"*W=D$YE'AP+FG0"V]U'R#Y-]Q?N MP#Q%$1>I-FGED7)()4$81Z57))(WND.%!2*O"1//>!%*DDT*'W/TX4?Y-KM5 M5EE]FX@")%0.:7T;4?%)JE7N>IV8F?/W!!)JQ9&<1)J,.+22SJD'S^TG_S> M-RLK<(&"2-:0*&[J1!2Y[_P^.?&9Y2#I6M14@7R!4'1):4^!7%(#'E30T7P7 M#*)+*WDF/2[+)9">&K_(,1!Y;!#P5MJ,S!ZT5LB"+B#7M6UPR(_/= GT9Y" M4/ S'^]M#2W2ED>$>\B9V7/'\.]KX/MSW"R7P'YJ_))> DT"Z*6]#3&PZ'JX9W6_.T%B5G#HFBT&W?E&\EEEH.G$K>RV?I#0+Z. M\T,^L7DN4PN2!.#1?R<__=YER?ZA\9&7)@OKA4AAEZDPF27C!XOJ\JO2WAU? MJ;L6+]]E*HB($'Q=D"UR&(EF[QJA--JPE_5B%4)$#KY.R!8Z9'8M0A[^[I?= M7I:X?58B^2]!.XX3AJ\BL@4=W5FRT3PX@:.XW5?4<,;,70OGE\@D[/,0BEP?A:<0:^5\B.PPD01:69J"4<=O M<[;%K_F:R;UG=S"N)G1?$,29W)U8Q#&OZ;+F<_D3 M4?0A7%,W^*"-'#3QF23Z8K,PMWJ21A 1G9KWWRL$=8F.@(5.#AK]>+F6'?WTX M2**E5VGQ"BV?O A7D6N_+K"-,)PDQTN5O2L)V5JFY,N4]U)+^#E&R3[JRF01 M)(48 %&@ ].RL<-.(E(QWM+ X9).,7#9Y&S&WFH;D;* 7Y@HBG1GVN1SMD002^*EQ-&)P]C;16,P 4@Z MZ]C*QSI.M 70';I%CSX]J;9#FY/!L3R()!W82+\J!K7EZF.>N-O/ M_5/T*(3 "IXR\8(AZ9Y6JC$PGPF/TPTPUN )F?:"%V XJDP)/VP1GGD?^FGP M%^&@LA2HQV"I0F(/,-W)81$^_P(J/EZ9(HN]+'T2%T&V+D9:E1J8%.ET@TYA MD[RB+DMUXF&?X:KDF:$S%:C?M.I,#= M[7+ELP_;U\A8TQ,;58T=EI;!)VT+C-N]6A2_FGP#GM"D1P]BH$/;;]"3^@:7 MSO(!88PV=+>DNB*_V%N>C4Q11$[W!@R!3534\ELYU.RA;6]>MV MXS;W3SPM&1&V/POH0GB:$:+Q0B+'J#JOB'(JQ[$"D#: N[MEXP6XY_5VW\M, MW1'<'09P2?F*6X%":E!8%?2&@/=:0GOYI<78[^99#1 GE&[$Q(HE7,($R1JQZ[W^DJD&=D M_P78K/NK"?_A'JSZ@?7EL2_KH]"\E^1F8LNOIPO5C+9BN;='(@MX-LT.;>>2 M2O#9G+PSV-O#G;JI;6SK<%3GE:H$BCW&ID;Z'8ZQ[E\X$?HQ>U7), M07D<=>0Z?:I M*=XW>J_65'T34-3DO*5C^'CTDAY2&G7'^^Y6FOBO6R1KZ13A:/#I!CXG_^[] MMH[!C(!-_M:CTY>.UFR(LTV?GGU')"##==L[&B?^DXY.7#JV,\!-/'Y4@O4U M[FE8!]*)ISP^4VFISP!;Y!32O%4@[?!#.%]8(I^(1'([L/2TBI -N+# M:>\]_6M&QO5?_@=02P,$% @ MX &61Y\V&JP- Z(,# !0 !B;&0M M,C R-# V,S!?9&5F+GAM;.U]VW+C.)+H^T:/;+NRR='OWT[C___G_^[>?_>W3T M/V?W-Z, ^]D"Q>G()\A+43!Z"=/YZ!$OEUX\ND6$A%$T.B-A,$.CT>G)^[^] M/WE_.CHZ^COOXLQ+:!,?13\=_/?YP\N&'T8^?/_ST M^>.GT=UM 79+$9N&&K@HC/_\S/[W1$<;4?KBY/-K$O[R;IZFR\_'QR\O+^]? M/K['9$:;GYP>_\_MS8,_1POO*(R3U(M]]&Y$X3\G_,L;['LI9TZI^>L3B8H. M/AYOQI)"L$]'!=@1^^KH],/1Q]/WKTGP;HTB^]E@D *<_1JDFP9EX!^/\Q_+ MH*&BZQ+9.?P.*FMVG7[Z].F8__KN[_\V&OU,<(3NT73$O_J MH>0Z?IA[!,UQ%% 5O?QG%J:K=R,V[+?[ZPJ&*5X^96$4O/?QXI@!''<;@W/" M2!S'W5AQ$29^A).,((X&GR'G>+%$<<+U[M%[BE!B2K1I;P[(NT?/*,[H/SZ> MQ2%#AO[FS68$S3AJ%RCUPJ@%I<8=@R!ZDLX1L4AKM3\')'[!.'BA5G\/B"PNT%/*1!+[811V4V:#+AT3RM;*((O0 M9,H^W7II1JC%M$*PIFO'A/\76K$_V.4QG;0D!K4E3]^9B\XAF#(?K>(K)HML2I.C* 6%?$<6$8HGN$.%[ MVG,O\K.H&XE&G4(@=ARGX44896GXC.@^?H'CAQ3[?S)K\>Q%G52XRUA@3D>7 MK^Q/U%[7C7H%0^[8I\+ILO0:=NN*X'NTS(@_ISW?$3PCWJ(;H?+N'!!XEB5A MC)*$,OXIC#G?DX=LL?!(>W&:] F$U-+1S2JYHGZ;DLRI\HA?D+[^LXX:2A;> M>Y01O&3_<"?;,4K0]'@-?_P2!H@CT].@#]QK^>WVL$B4%&8WG#.5DX)& ;D?/LR3%B_%KF%S@A1?217'J95&: MF$]G\[ZJ_&FFA(RRI'!_3KWDB?,P2XYFGK?DWN%C1(=BW[ N$XXN1Q6A8+&K M@3M=Y'*@L,>7KRFUETS1+N-L@0A7OYLP2?M1N$T'89P>!^%BHQ1>%+73K))G MF+F@?^1LX+UU1XK^S9B#XZ. R]@BAKM=6T"7]W2T0(NGMO-4C&NUW^Z(SBE. MQ,^>T-&1%?9N51GRJ=Z/-A1]YPC3CV'N$;VAW:X[9^ATGMLEU!&#"U"P M^39,V0#;YJ-2^U%N[D:W7!N:6 E&$),!]BNC1RP4A4EK"\B^V1K ]1>_CY,$ MIIHB,?3];,,I9&[BY EL=VM4T ML$H$_,EDE=SUE/P@FI(_'U=7V>U.0;_Z6CQ\*-?B3Y\^G9R,CD;;GNF'HO,1 M[7V4=S]B_1=+]&:$PO#PV=K8^B3(?S_#SY1+86YXZ!];>T,__'ZQ3I\I.U?7 M7S%\:H;"H,7.##=L5\X" L!Q 2<<6I()V [/2C)-8-GQ'6R#=%^_8 M R-\F7$0X[E=5SO*>;.>)B0MK:7TTU;:],/OF[R:!Q_%'C4< FV6PNW(7@DY M%$7K8;_%R9*:2Y9U)E1E):R8,A5T6P4W82XV&'\P#5<@S/1:B^C@*GZ>+Z#A M,[J<3I&?WB&*6C"9CH.<71*--VDF5!/3AD#(ETX.LX:M6&!GVC24$&Z*VZ!3 MRHR88H:9$V%_NC4XH6WL1)Z=R4)7.&8!2<&<,VHC/1=I6SF@OH:*<*(I8:74 M2J';3J>FS,<&N PV?0R1+Q_)I$A;FR[ZC?8-FGG194SI64F.$#4(X59; -,[ MYOEPT@-"^6+!!CP([V!5;_SI63LWT^(4>L1_I JS7(&1 M^Y'K4"X6'7&J!"'LU@#/]SI;;6'NO!4_F#'$M]C' 7/6?/462&FU^QA*OL3U M-%C7-4.F&;A_U =?8FJTEI>4OFCL8AEVXOSTB]]_0TD:QK-S$J9TU^@)YKP$ M:DB72MFM$_T[+KFN$7BBX(4:#FWXI">5%P CUP3U@]W1: MKX]&$F=7#4+HU!' #(^_U%NU Z.CP8X/2LXXK!AQ4,_2#HJ%$TF(FMN#2/!' MEJ1\LW2%R5?T,O9]G,5L3;HC.*9_^OE62G50:=*'_"#3M!<'W&);QJW+[[82 MJ:XQ100JI5T&W/F@T%(R6(_:\ >!9K24UP@9#3 \M<4*MKY,9.2I%;71>VIE MK5Q0GZ.@/NN78>34U:&L>60U3,8*'-QY8L5(5X[-=62=3@-IJL[92N,?,VC9 M/*FKVA82/QA>RNEBT+(Y/ZIMNTZM9B(SR5^KXC?XM#,BR"@SK4K(\ <6YC.3 M'56*W\0;_/*O0V(KW'[5?I5CW'V3)6,-%HXR[ %DB];FZ%%%9_B6Z'!-20,$OY&SK>8OWXP^9H2!#>9&4H$!U1&[%_(P1R@M*EFJ@EX2<'G41]$ "+GJ>)>T M02.2+4:X]!+ IK@,']N2(E\);BF1=CI=KAA%Z"9\1L&VKD1^)^MLE:]>D9>H MG)D->I!J6,,^8/%IBY\V[:EA+VWX)>NGZS1M)V;<">?!IW,C(LLSO 5Q3J<] M*U27K@O5:?RS(E"I8LJ 9"HG)AB8&,R[4TS#;>Q"0Z#3QLQTN7Y(4?6Z31@ MZ%S'24ID]U'E@%+=$(,Z)TZ[-LG #0FUN]HH^8W-_C7?^HH:&&V194W#,:'!*$#=MR9"^3@\:F4E/$W+\')\LQ 3)3QIR M0JQ?D6,#;][QX*][2&[)B0&%%\_DH+TA+;TN)P,U1-S.I3DM[[!^_$&OSLD0 M+F[/J1!U&QTI'KTX6Y6>O;@BZ)\9BGW5P<"@I=R[;];6)3]$>*DC'_J6>GZH MVW:.<#02&6Z,W_#1#!."*E$,,T*@3,G-G[^&B% ^S5IM(]&\U79B\69:R96S>15(NMR&BNIT\UD)56NDQ"\V ^]R"@6 M(X%6!1:*"F-K*?4G+5#JU$? -B M[4U"+=^Q&1Z#SR<9XN7II$)X\(3N&XI__MCSN9?(TKEW@80YSV(P)X1(P[(J M4 .B[ 1DM3S%^K$'3>(6(5ND<*N0=&SI>=7^.X^D*[Z$>3[#,CE;E7]16G_3 M#A1&LDD7CIFD61_J@$9$VUP36D@#Z[!RL$*8DU%=-43HNRT6$Z=AL'[V] 'Y M[,GQ$"67KWZ4!2BXHM)CA?BRE!N'R?32(S'=.";%JZEG*W$'JM(R_8THU>:> MQP0C-^T.4=>L(0K=U1/2'.Z,C'8"#G-'Q MS?#09O^HIC^@ 3B6R0]C0QS!&L@Z?U=\4[W'X.*AHH54"S1MX-"M5'EEFZ:T MVYL09@+!#3 :?+HH22C/'BWJUA-#M$6>936>Z=\X2V5U;6QV+7W1^3P,&A5WY:1P3>AU^*-&2WSL2$FP]^:D:%>N3>C0AE*>LY-Z#WQ&P[: M"@*J-B;)..)6+JDO,**'ZW4&1C")[]F!F]"#.S5V8?(MQE2(Y)DERE_']'!/ M?\8QNQ/"362=*K.\G;[&U4NASY$MY@[3,B#^G.XX[@F?$6TC"IW)@Q2U051.G1$K#JBKPAH3:";$:\1V;(>_@ MUJL<^9U7CQ2(.P[!LO0?/\W8%&>N-F6T50"KB#%*H"%0J0FD"J'-*;494E6S M'!MAX2"$*D2[&BV5HNOV^F"8+''B15\(SI9\$0NGH=;'JVDEOR>G;P>+!^HK M@[IV;?A@\;*@L9!P0\R&OR:H(Z5R1]"$!#BKT#E.6*%U^AW=:*IS/Y6MS.RU MN)VSIVHJN*ESOV7P\D1N50NK*Y52&#MOU4@P;X^B@_H094=6J M%&;$#.^4*.*P7Q [!"[G=!D6W6)4P@J3H)700U&7OU-4QD#NBI#!BJE307=R M0!@P&1O@,&BNMP+I(N5;B6Q-[7\^KG'NAG[D/U2_6N-4(>GEY>5]BI=/61@% M[WV\..;T;!#O 2]*]1MV$?G'IG+51:3JP$=NT$Q%R"+_N(8&;Z+)VY3$& TFXVGV9RV M)'[VA(XV$ZX\&83A12'[*S%%-24UPS"L9&HH*7.MQ#,6@4K&R M5"34.)4&Q6:!XX<4^W\J'R(5P/4D!^\,+B.S[UEF'J14B2:-D.*Y6-' ML6A(<2J:>Y12K%%07#I0RD0&/*0P?N@H#!D-;B>([V>+C%\EFZ1S1!@==(_, MULMGE*?SJB>+>?LA9?5CUXEC3I93\6U3K:EF\0?N=%O@$F _ O&BR'B#M8.U M<*^[W@W73[T4@2#][.,XI>>VRXB#TL-S?A;=_A[A! 6_O$M)-OA9A2H*6Q?1 M!P&P<3"3<&/*EB3$A'[)-$*A=#O?][ 3@06]*9_/L%1 M1/,@:^MR'3*'XI9$O1&Y$6O8%X.1B:PUH3OS^:@*U MKI,I9<@4A6E&D"VEV.T6P&G)@7[L\L&:J@CO/%;\5ARKL4_I(LS )>DM2NU!:!=<5=A[QH_?ZCS"=,T90#:;DBR\?ZO3R%1$_3)#L0-^BGR'UX"65X(Z_B(]SPJ=SWZ2][Y?X!-^?#G*,@B-)EJK]0G MLCOURFP1>_T/O!/@(ZOS5VLP.G)OPLA 7@Q^]S NS<]]OE@/4#^6]T''8?@FX.Z-[0 MDY1F$D(-;WUEP:\^K*^4['X=)+4AI?6=)'!NS9M&H21L+7 ?A+%<\!/V@-X4 MDP6[/" T1$8M')HCK:K4>"TG LZ!KW6)J9V8=].=A$''[G(WK'&ELK^P9S(' M3Q,1%]/3$'3YROY$'.='BM@9[?I/P:1OV0^ 4+9=1>G "T 61:?E?AH^4TR5 M6M&U,P#1:D17_S9C."\E>? M+M@UA\@XFO+#R<>3TWHT93W&J#1(#E(:9_27]4A@0RM5?%GY#DZ5*EJB;F)A MMZJY5+^]0DV'YZHLJ1<@ P03 C%A?G'97D:,_<-"8_9+2QK(0=WZW/1:).)2E>L ?:Q9MW$=#PUEGB'&ZR<1<1 M,CC+6>+$9%I!1;IK5\"ZW[;+=:?@MP)]Z\;C'B5A0*=2*"G7(8%QO._6*D-A M- 2H]^L19%596%JU%]$]YW4<9,QH*7BK@7>\US;FLX:,P:W%'<%!YJ<3LKXL M*3'18K#AC;0D"XBH(^-5T#QR97M/$?F2I2G=!LGW'KLP#E,K&O%4@'J__!Q'$0]Q%1A*F2H#=)BLT(BS M,OSAY"!)5NX;37)57=15 @Y@H3>3 MBIX4&.%UW;[[4+?5P6Y:M!ED>T#V1-?FR>'Q4\*!)()KV > B64FW89TP;&! M4L2IQ3[/"&&YN"U%*NH!P/K52HV-9"TB>*\DW5["L"4KU^6&*N9M"W[ G"SM?,D;DDZ.#VX1XQK>8F_74K4U!3"M.VF[0-XZDO=,ONS* M([L:^<@2W6>3:;0KUM8P\WA=[P3:$&MJ$P;+IHE #.63!*BK.X)E3-=N]?4.IKQA2%)38M M,6&WM;]1=DM?-I, Y@@1G*3X0_GR%*0<;U8>B'A83/Y&U$R8 "'$2-QR/"' M)P[52UTU& %T!HQ']S;605B^2L>];9V& 6E9ZI;K$/*]@!>GFJQ M-"E)@B='C9A O/O42 KN'(TW.)X](K*X0$_IIJ).NX)T/^[Z%UGO1ZS[$>N? MI\R7AX#O561H7W-OL2Y57@@Y[/1@W$[7LJR_2E+#5@P*QG>H8'MY^HBI<&JB MZB@I_88R8!@.1)4ZJ:30FP/Q <742'[%*4HN,D1__B1U=LE! ;@/U3JR*7XJ M):%WQG[\8,S8+2@ 'TD[QFY)RO#ZB$ R @\-,D<7HN[TF75FX=7YQ*;2[2]%J_"MWH45[E/WSCU?) MN*:($I2D]_0@R .(P1W=N]$?Y$DD33H L$:TEK":,CB'Y"K6YQXA*W87>X$S M:5JPN@F U:6UT.JT0!+3%!&Z#EZ%,4ME8H^]LTN04@E)H $L5HV$(R$#CES* M#A'%L6T+ L#SWD "5=QALEU]AT$("K2#I_;@J3UX:@^> MVH.G]N"I/7AJ#Y[:@Z?VX*D]>&K='[3,GZ],)M,[$L9^N/2B_%IJP/*VK^CIS(O^%WFR):5[MT!V57I%ELF] M'=E[J1G7\5=JC!Y?4/2,;JEEFJL.B1WZ!& $>M4)$#PW"HRY5)+H4R%?9?@J$C!+D#Z?T/ MC[AFO.3OPA@U W DU.G/YJ$8(X*<;^?W++9GY)@YQ/:^N]C>]Q(I:1W]&S)2 M8"^^\GQ>&7,2(WG9%Z-F0#Q ^DB*&3E#,O_Q!;=A?JD9 M$/]+)^:7R'%=9Q-'S_34F6\-"O24UD?3!HA#Q0EB]T'.,"'XA0:#'!3 M3D>E&X7QEQ/0KU/] 4^)(8_EH #V-R8\EA/@U'3\YI&0%\:EJ"G,]B[8\$;; MZ(Z*U&CO4@"&[TJ#+0*$8:YEJB/C>F^F^@I1-+WH*HN#A TD-2(R0 !F6JX/ MA0&1(0\G4K8^*K,ZW7$XFZ?Y53!JZOB]2FK_3!P%^M8 #+Y:6HTILB^UA*0E MB=%/6VFQU[OOO7@F,O>UWX:W\4:WX'9L? UM-^P4*O?.KVY-MU#V%0XZ4\E; MRHY%MI!RL?:[0Y,MD7C!QAJBPS/2>U4SLOJ[0VNJ8V0544!!T)M#2C7\E&I* M8Y$*LG&5Y1JU.8*=>TOZ2[J218\:=0%@6](DW;H1;3WGU@EP>HG 1IN-G M+XR8#EYA@/A=2(1A@P?F&+1SA"+,-3M9Y>. +CR M+4NP3B&<@YZ\>L[E=(K\-'Q&'6H+"?L D#1II;R0D#BHDMT4)*"(&XFQVF"_ M*G>H*($JH#,O"9.')4%>,(G+3HE3(W&IFN]7D0]SNOI=!JMXW+.:2"CV^=B% M1N7E\849!<9M 13!-ESL&A %=9+=HP M."9W)/2;KFR*UD-*\9/E*:8@:\@9 M5EY:MSA<11C771\-VP[J7SJQ.,645/4NFK"<6[U<1J'/3.^M1V9AS*+,U!X_ MXM2+;M S(A2O>U8L7BRIEET-*KCVWI9N1$(UE?0X@QK)P&!HD6J+Y'L=?MH+*V77>T#<%0=8*E>AI).0<<5&XV2I+ND@#A MIN(FD7.3,=3\AN(/!N^QK$<9%^-S1XMOZ^IOS([@R9V*%#XL\A\>>0^'-(_+'+2/X$"#LR/-"3G4\>OAO\7)$OGA-$2!L0A!> MT5JRW"1+D]2+ UV=-WVS_<@K-*<'D,@$JK9^<*?+3)1WL1\)ANUH@RW6;S%% M*2BP/<>+19CRJ!O2)V-TZ&^_4@X[$ I(^J4HR22=([(-<20-JJ'+F^Y72J(9 M3?TF=:R]&N4P)Z=@L:":1D\YT>HB0^,XN/-6@D!-JQZ ^'E-%;$X;C2F$\Z\ MDZ<0OA#9=S^_)2'RKB'RKC?X5-SIA5PY43T7(;IC;P\UY;/0-Z>V\,<(B-!'+*' M#ME#A^K"AW<8^ZT>/-0[C-])[H!!Q:5#UL!;SQHXG[,DG>OX',\ 0T9A]3-;A4Y#TF;AZ3-0]+F(6G3P<5'7FG V$TJ;K@O13&;T 186@U< MJK*F,,[CYDII+CT09W4UBK(W5!JW!G"N;Z*IYD*$\KZ*!DLZBGC7U*(] *]" M3[(L4PE8FNR1W0["+#<'E^)H2Y9E(B&+,GSN,B_+S<&E.%H398G(WFM^58=^ M"%\5;X@9M@27BJ@73"/ZAI8)>D9Q6ZF4VX)+)[0BES*%@ S?S5N^)2,\S!WN MQQSNQSBOV'RHNGVHNGVHN@TZ2?M0=;L-<5 E>ZBZ?:BZ?:BZ?;CJ,EB=[EYN MM_1S?&<5-RMZ]DC_23*RNM\UEETZVH_2W%TH/-3!=UFE^U (WY69[%"SNS%= MATKXPQ7F/E3"=UH)OYM[I3V1<&RER,'P'52NL%"GNP.E<,1?I7=?'D*P[70Y M/(30J-M!96W;6;/?#R&4RR3(+' %9%!9=??-5)&'P_=:H!/P Q2V'2J&#U!8 M/!.S0B:L8UR=>9.2$CW7UX4K:Z3)$/!/6*L M2DJ5X;2'BV&0&%0S;'ILAF$/A&(T>:&=YE5G_JJM.L-[AE]:1K3/W8O73=Y& MF1DM^P_%9@[%9@[%9@[U90[U98#7EVEDR0]59OJTXWM>968S43559G;@ %CZ M)E5F=O _%$8Y/*HB8/ZA/,KA497#HRKPKXLHK- >7AIY2U7?+5P2.51]/U1] MMQ4 H-;:HV=5E!KDF1@U!#"7VHC)E#P7TEFK4)&OQ+YN+BEU)P!N6MF3FII4 MJ*'.-Y1J+DGY>S6,$(N#KS@FQ4>>FJZ*?EGL M_Q M:QXMLR[>0W3M$%T[1-<.3SE\#Z&VC?$\6Y46]2N"_IFAV%\IU@2CEF " M<;TN$D:L@"%F$7[*!<2H)8RUI($N"Z6GHA"<])*R>BIC@L:M :Q:#?14)T(A MB3#$>+;:_/EKB CEU'S%O#N1F;E5-@83?AS*XBJY 4/>9:W<1;>Q^57T U.IKX2LF%TRORQ?;P(@ MMFU;<'42744]'_(5OD1#XY#GWW9#GNM>1Z5NX8<['_PY"K((3:9K]._1$I.4 M"JE$QMEJ_:,JL-FJI_[SA,]QG. H#/CP?#L@R="6 8()778059%&+*-Q\.SM M742DR=MR4/>YVVKEDG,=A$MB0C708^JSUACU91$IM.,,;YTFE5:8X\0.+_2<@F.6SDSG*D-1GDQOUL[Q>WDF/&] #9Q-'#\;K,__)>25$T/3 MQN'T:*R(Y;FB(T2T*=^_](TSGYUF2X@4BEZ]^ ME+$27"P\0_\+'KU7B1ZTZ@G.?&VL(*WHA7,"VAR1KV.?XGN#$]D$%T("<%JW M%9R0'H""N7Q=TFT2THIE"P?@#E5GH6RI@2,2>@[#5:598RD1C0(>P(M4;46D MH J.J+9SNC#,89Q1A-?Z14_A9XB2BW(X:I-1U Y+=Q%W_>85$%1H,V@!XOZHIWPTI(?(P]P@Z]R(_B]K% MUC_MQM9I_Z-\@!$=8<2'H%^71MF#4'OAKU)&T6M W>?0;]0RLO=WJ5H@$GH" MIZP4"D[H6\BZ8EX(<>_7,-6&%#I/%7!N':@:K9"PM$=AQY4ZI(C<=B H;D]*U'_D3;JNWR"+59,X<.G):\EU$RI!#HTL9W ;&Q MR@M:.'3!M&2]@ @X&_G-TJ-U> L W;FWI5@+PY)[ZZ?>[#L5CLH:# 3?LI%T M:GC#F1+_0.%LGJ)@G!>H^IHQFB=3OBDOO\_!;F'X$J$T[ ."7]E(: WI B[4 MBS#*Z'<[V(^#/[*$/URGN7K4N5<(ONOV@F]":;\;#6I)\BN:7L1>'<1QCM,X MS>/.S/X_8HYN^(PNIU/DIY/I/6)A:9]1D&+_S_&+1P+1X=%FYP"R'RQ-A6V^ MA#WN %02CM^$8V%--ZI] EBQ(:A$E2G 5X[)5,:=9AL">2\ M@06M:(U&^#H MP:5'8HI24KB 5=L_"2R$,*C1:B_!'ZXPU@ID*(X--(1 8RN!;"@ $Q$9QVE8 MF/2UT6<&_?*?6?CL1:WJKGXZ^6 8*&&#'P7KT4<^'WZ4L/%':(O 'L10-NEW MC**"H =V[Y^7!LC3JU"0QY87RRSEP:')M*X?9C<9[0PR<.2Y&\YG*W$'BF3^ M7D>$$X/J1?4J,?4^^>@V&T*(F+8>K;X9C)L( TPYO9[8*G1K(7>X.0K'%(UNC.Z4.R1M_)&JY/83N^#KM'KAL *0JV.22^I6=G"=N_Q(B. M="OKEEGJ&^QVTHX.6N*2LQII:[#RYM58IG%X;]X^5&SR_\[FCD5E_7*#QZKV*YMF@/ M(-&X1]&V8 @L-_/83\-GBDT+/_-.1JS"SUP,LT^.9JUU3V3FW?#QCJ[]#[P0 M\)'I *K\U"H,0)>R):%6S'J5:-@;2"EY6RKBP,@;W<]0,'S:0EUOM/-K1?PA MF;1[/>T>)T#/":C"W9KP=BH_)*#@"CV1S",KVDC\P&V;#@#(4*F)Q:ZK*5TP M/)YO(C5XJ#EV2"=N_82&O5W.(9/X+6<2[UT=+#L9Q7W6P=(X71IZ"NG?.$ME ML76[70]OR&0%@/HR9/9X!5]=I";39N?N[:SMF65358:QZ#8PG<1R^V^Y?\>K MA?VI95-C2GP"J2>/+[A7/2GU[_BN#&P]*?$)II[0_ONU*)41'%=B!:XK94Z! MU)8KG)%>E:4\@,-8,WQ=*3,*=B!#1LQ.F-96SLL-@$Q >UR1O+37];CU'27\ ML7)2Z8H]T4DRSII).D?D<>[%Z\J!7W'\C)(4!?,DH9R\?$7$#VESB0:[0P- )K@[37;']GW5:,K$*0HI M31-R^;H,B2.-5J$!(%G]K6JTBNW?PRYDP_U:<7*^7EUX*;KR0O*;%V4(Q)FR M&9;[O!*X/G0VX_1AJI19 WA^?"]GV3;F#-H,^SZF5?5D!&]N-<;O^SA)PYU@ MC06VKR>7W=-8T]D#$+]]WK/U/WL "FQ?9\_NR0_6[&F%W_?A*8 Y>UH)[ WL M\-;DEUXNZ]%5H!ELG_6_GQ._AF%O4O_Z"1O+Q]GG([71[.U)$P&&>]G%O^LD MR5!PD1&*8GZ(X 0EY4X72 "H,!.CXOLP,S\'G7:N2[#6;*=V! W.@_650##G;8O3C/5SL&9-COC M/##S;6?K5J.[X,<="7WN6ID.=;8W1@3"6];0S_W&S/SN=-JM(L/9C#BQ'@ZT M?:]47'H!JG8^ED4\K6BZ922@[%?@*[QEQN^1WFL('P?Y^Y!>M*T(FY@X2_H; MLI;TX[V!/871%.]I^U!GY]O1T9T5 MXQ&G7C2(NIH-_08V!X-KKAEGWYP2LQ( O09[!>/L8V*/!SQB]I5\PMXC)G167AK'G/>9%[$'F/M2 M:YL([K,'S-4TL,E_.-/&Z 6T3\PF3] M%8.3[6&&1@* B_EM:;R$S]^!F@^MT2 2'I:>N=G?9ZZJ )$UVQ&5+' M/^U%*D57CD*-MRB+=_#IVW/$I1T" /;,CDU%]VA,.\X#5>32DP:4 )]^[@;4KD=]@+5.[&Y/L\6 M&<4_?$:YV9Y,Q_X\1,^\J_[7:D#C9"]=8$_8!-=PB$C9Y'K?(8S9@O099MLQ- M1]YGQU?S&=[9S#9E[QNUH_=A\N<502S1#]'5C)Y\4^MYQN;C[K//K)T.#\C< M-ZK!17;>1?@"L N@__DW]7_6I-0D4 +R\O[U.\?,K"*'CO MX\4QY_[V9,J)N$?+C/ASCUTSP3/B+2Y0ZH71=IO/Q8Q>4SK'MCJ9ABD;Z-.G M3S^#+CSGD93ZG+8F?/:$C^BV=1K1;W?E RWXV1W74V-^YM)+#!3=SQI(HP'NR MN84$CH+U.&)!F*F56@H%)?VLOSO#,;!;)+A);M;$X:G85'_T[W=*@X)=W* '!1[\.0JR"$VF!2E\YB65.^#43'!>(WOFAE,6&[0!X\1JSW9 TZZ+X0C&*'Y:>+[;B7W#TS^3*YC7\I3.2@ ;U9CWLJIL<[C1_3J)=OQI R6 MP %P.#7FKH04^_$7$OZ*(_;D1R)/1MB% > !:LQ2 1GVV;F4+V2EWP#X7YJS M;VEE0>KCW+;C,=(?V4I-G"5HF%!2\7TU/HL#2=AH(=V2FZM$UKI8!//5ZF1M MT@',4X]2!YJ0!\>-+<#ZG*IL2#G#/SP2+TZFB! 4R!(WFG4!\Q#65+(* N'( M]@O&P4L8144@Y2(C=(D5WM0T:P+S)*>4G9H@.+(2Z-@%2GP2T+2X$FR1.'=)B86^F@<\7'IUX5N;NKK>Z\7=!OAIR'=(N3)0>;;IBYC M /+7FNF_QD/>A1?P%*G$DFVUB^N [@O#:DFWV%C\>+@AOX<1I0E M*.%WME#P%:7-;8G=46%Z5)H:(;L\V7NE$Y)X':=>/&.3J\&1P,YH,"U:']/7 M@I[JV0DI=:.$6(OTC0^FZ1NE8>"G<%PQ/J.;\+DLMYJ0DSN/I%L'18E<55:' ME9Z=;\#V.M'#HG /N1^'W ^UF_R0^V$I]Z-/FWZVNO7^P(2G:"I,6Z,>AC=W M$K]K3^:N$3.@"GZ+YU=OH3:(C7N!81Y;:+VAE,54.Y7T>9:D>($(#PXPXS,/ ME^)@KU$+ *:WI>Y6;CFK2'0JKL+\*(C4Q3N;=>$L_MF&4L-I:&[#WT2(]. \ M:15\[:J [CPAD*Q1[7W>;PF:9M%-.)4=]KMU"2"RVU5MNC&@A9?LY^-<#FNO MT=__/U!+ P04 " "W@ 99I$+*G.QU !SF@< % &)L9"TR,#(T,#8S M,%]L86(N>&UL[+U[<^0VMB?X_T3L=\#VSFR7-[)L5[GM;GONO1-9>K@UHY)T M);E[>AT;-Y@D4F*;2>;E0X_^](L#\ %F$B1(@L2AJO_HMDH"SHOG_/ Z./B7 M__&R"\@3C1,_"O_U=Q^^_O9WA(9NY/GAP[_^+DNW[__TN__Q;__'?_F7__/] M^__]Z?:2>)&;[6B8$C>F3DH]\NRGC^0^VN^=D'RF<>P' ?D4^]X#)>3#MU__ M\>MOO_Y WK__-T[BDY.P+E%(.*V/7W\H_G"24XO"G\B?OOGAFX_??OP#^?ZG MCW_ZZ;L?R$O]??_>8ION?OOGF M^?GYZ^?OOH[B!];]VP_?_._/EW?N(]TY[_TP29W0I;\CK/U/"?_E9>0Z*3>. MU/UE$P<%@>^^*7DI6\"_WA?-WL.OWG_X^/Z[#U^_)-[O^/-5IY)ZZ-EHF^F4N=>Q8Y=)!.:?O0EI:%'O4)# M8-E"F4O$?04( ^G(K=$+P/VC^-A@2>%)"76_?HB>OO&HS\,1?G@//W [L7_\ MQTG$ &:]2=+8<=."$A?_7W_7]/=^U@"A@=8ZKDONQ&[!B_W888>\Q3=NQ,)_ MG[X/\@_#NV_C:-['C+_&Z=&]LX#_?I?!,L)G>@T'W@NPFT4[S@DWSN;*I0E+5N:XG6M M+OT*+U.UP^EPG=(.];V",)$HDU\Y[?_/BC,R)*87*=TE>E:0FR_**8_T;'', MLNUBG/-88K,."O0)9S"CE]XSBBWJYW_&[X6R'H=>!W_#[64U"4=[%5";SX-N M:.Q'WEGHG;*I:XN.A^WP^U2C9H?.56N$V\N:11WM;H(L870)$)X1NV(G3'P MSUNZC^*FY4-+4_S^I]+O"-\.VN'V0J6TXW&OI$P$Z>E=\2Q,_?3UW _H5;;; MT+A![X8F>%U/I4_AA&\4,/OFRY"YE0_I)E(5I_'H2 M>6H/[.J%W2&UM*[[9VL7S.ZJ)_A([ZTQ61'.AD0QR5D1X#672]\[+Q<>FR+X M6U^ZA+1K6O;.A(6;/;!-WI%?F-%?%#X1O%5Z'L^%GSO>$_7@=WT?/89<5 M:BT7XI''VC7Z8]5L =[8(*PI7P32,)X#\9G]D,\EKN.;.'KR0U<])U4V7XA' M*O1L=,N#M@OP397$IARTG'$6'&;VTILH29W@__7WK>LF1>.%>&BCCHW^66NY M .]LEM>4;PKJA)&?:1T$:+V.J:/PQ8,_X_6^)CW*)!OI;S@]K%'"P2DVW*,8 MM9E<"+(=@YO'*%3O=3M**GT*=SK\.TZ74DHYU*TX0<(ISK;VO:-N%C-W M_O!Q<^^GC8E;#4WPNI9*G\*U#O^.T[644@YU+4Z%1%ORX>.[S5>DH#^]?]W' M#F2MW[WN-E&3IH=_Q^M9C9H4;E7[(TZ?:A9QL$,):D20FP^GSE[<1R8Q59S) M*9KA]:HVO0XQ2VZ#T\=:)1WJ:@514E"=]4SN)(MC&J8BK0'BAZUMLZ9TTH[F M>%U01\_ZPK*Y+4Z7U))XY.(RITY*\D30G^_<.*5P=\!_HJ=.ZN3BM!Q"*IIC M]]%V/0^/B)O:8O;1#HE''PJ7U"%9T"F<=LY,K?C$2>E#%+\J;7#8"KM'-FIU MG+)5-L'L?\V"&DCR, M[0*/=,J".!'424Y^-BA\I$'0Y90'C;#[8I-.!S@HM<#L>8URCD5!H#FWFS%V M.\AHC-S?[AX=9JCK+(6R#;!)I%Z5M7?"[H8Z.A\LG%MZ8'93+;G'+J(Y#\*9 MK(A@0R0^TWOR>D=##^ZSG =.D],>_AVO?S9J4KAB[8\XO:Y9Q*$.5E(C0&XV M1&0,8R>X"#WZ\K^H>NP];H?7KUHU.X"Z>B. MSKF?N$[P-^K$ZLO!+4WQ^E^7?F4^BJ(=3B_LE'9PGDJ^+RTH$R!MX;)PI='];;+L43&S1L M]D6IX1*\L4E<4_Z8UU&8V2/_/7/BE,;!:V<-A>.6^+U1H=VA+QXTP^V)*F%' M^V%)V%#YA*V3;#C#+'G_X#A[X8DT2)/B-Y5+YK_X#YZT#])<;\_]T E=GP5= M)*HZ*,H$]NR*TVF'Z ]>W*)/W@>>CUU=WUY<7I^O[LE'Q:7ZZO3L[( MW9_/SN[OK'IZ4ZE"9:.%>.]1><+F%@OP2#,E"4MRINH0CO*X2T4]PM:&"_&\ M(]T:O>\2;_5!#5D->.&ELMB@$<52N8+QW-K9B*UUDM TZ9BA'#7"'5/-.LGQ M5&^!-Y84<@[>RN?DR*\%03LA9%JINSM+,R&A2+Y-J!5"QVV7$$D*#8\#ZJ A M]KA2B3LNO%9E0C.*.#.M9*&+RQDRC\I0J5T095H4TA3O+3DB<((B>X1$HLHUB M>.7*\U,21&P$3Z#%?_WX?_?MBD KGCT_]>/WZU^_ /_ MZRDC#Q?KR7(OO;"#!1?C$3!7%K\QN"AL?-,$=Z4WZR)$M_QUO)#=*.=2- M2V(\7JV$Z23Z^-3*V'D3T[WC>VQHFE$T6!PHKZ/7$'5\]M)?# M3J,;WFCL(_Q0I\YYD)P)'RLX&W*P#K82OW-:@ HF"3=!Q$W@UE;)UC>G='8( MT =R9\@N)#C-.N$6(:^V -P+UQ![JOR5UPLFO"&?P/MJ^9RS$X&AE2)Q6 M:TX/5I,9S 6L!>U-'#$UT]<;ID;*AGW8']O#X2K[6:3HT";UUUMF/K8TSW99 M "_9GM)]3%V?5U)G/=<[J$SR#_Y/Y81C!L:XX6,^V]#'D2,*AWE40LA)]R]"B:R%E3(LKFA*% M)K.$-@,\/Z67_A/U+L*4Z>!O H%WB7K;OK,3;AC0TUD&A_8>>"%#4^ZASBO( MO^?T2<6@W%>I(5Y :A=WG'^6J%,2MK-[,Z&*MD\I6K>5T0=5 M78?C PF\87,@W[@C"(LYKH:.'";40^\$Q9 >]L+YTG+43U& M@<>^(NR&I*\=2?(]NN.&A+YVD$%#MR]>6.FMP5!WEQB5VXKIJ^V\^_G4OUA_ MNKB\N+\XNR/KJU-R]N^_7-S_S7+VPF-C6N!BC;KV(^#5]>T0BC>:> MS(3J%AH&%0LK-V:*I.,;YQ62@_7RYH\:XX[+=AV;\H_/C<[HX M\N*G4G(OZ%H9':/PX9[&NU.ZZ;BRTMP2=]RU:%<;"(^;X8VX-F$'#WV,YGL6 M!CL"5*O1[[.3P@--Q[GA,XU^$ZA:J,;?\XE"R H*2NT]QLC2?O8DGY4FR4]E MMJ*NQCJXLPD\CB7?_O#=MQQ/V"\ )N.,>O4UQMEN'T2OE-Y2GD)P/*$YL,"JTI0/R]\RV)-H'_P%5(B"^VN#V^KM\7$Q3(7G'\$$BF$7&CA WLZ:.3$B=F MQ.#5,+BRPSJ3$%"5]8 _E+188#(7XE/[S ED?BMX;]TILW!(Q-"$I/Y.7&N M6W//C[[[R$@]1;Y+$_+H/%$21BEY90IL* U)S._> 1?6V \"_M<-9;\/V=J? M>E^3=9!$($R0>33A=N#[@H51W)JUDF'F2A_C*'MX%%;A+24#G63Y.OR2^)8,E0+J!N*I0_!E#XM;1P(N\\YD//?OK(/B\\\OL* M=5"YL?FOH'D8Q3LP:)F!Z[ZZ3&U?H#&-O_IZBI&G:29A,>IRMN1H=RSG_+[X MZDV+\5GG( B,)#G8K!O_%E7/#PDZ#6#ADD6A[6O[,JFS$\XY2C^=U?Y>QL1JWSVR05(L+:J1+N#)TY:C6DPD\UZBV6F[4B3-B([4TV5C9%'7*N.JJ.!)62;=LAKZH#@[ 5VBF!N MA_"H8!*]D1P-&-1-H,[HHX#1@'-*MQ3V!R]"-]K1>^=%0ECUA9SN7K@A2%-K M&8LZNN %)5W!AWIR09\PTO6=0UY2SW)V_&S:ITS[0-;>TEV5?._P(DRR&%80 MG;.(U@ZXP[A;UX/L'D5KO,&K(?/8C>Z2MO58G5#9:BHAG2/Y!2/"U*'Q$ZJ- M[NZ+9AK]<(>OMN8:.]Y+"&9]T:?8][9]36URY:L87\+F=V=\=_?"'=V:6G?N M@B\ALG4%-[\7;CFJIU:\BFE4&^+\=JR\DM"Z%:[J@#N.NW4]NA_>V!IO]&K( M/.X:=7U5C."Z^)3*VMY!K]AWGR&@#[X&;13'4GC#JTE( P=1ML^?3&T!VPV7 MDVBW\U-($88/)I16[=%VYG>N^U9-V'!E1+ZU4988C6$"0L R*1_7U0_6*=I[&^RE"?\ MIQ&Y<3![@I93#9GBCL4W8X65U MB]-!3G0E7@9&MK6AR%G<';T QWY*KT M.ISURFWPQJQ2TC$SOBB<+5HUTH^F4E$5J1^_;PW5[WYG1*/'AC)R=$/WY>PT1CV?US]\($-X[O780GSMY/G4 "8H6IM3KB#GA]W6N)59V]\() #]D')UJ5+ CP M@"($.9<5D2<<=G*N9M4?7D5\S_1W!1<;X7U+H5 $]\>\@^U+T+%J3@0=[5WR/B;+ZR$MUSJD]S'I:2G@N] M^"$T@Z]]3!]IF/A/5*1^7T8))'Q?;^^=%Q46]J:".]P'6N4@9[H/";Q ,%21 M$=G5)02(O(@:1R)8DG? ]"M^50(RDAEG6YG7UJR3OXMISCRA M"=01Z4*4$\/XA(/"$AK=<..FKMY]GFK BZG:DAO(X).>9K"=S#>-KD<9?N7[ MJG9">!T$T3-@XGD4GT;9)MUF05$'^Y97=]0H M^3!N[@'F21V@*I#P&\83], MC<'3_X(;KSM:\"-E2?:*H^72\Q:MXL;4\U.^$K*3;%C/%&%SWNN8S>+8BHV? M']W0^ X.LIO+$/J1I3N%;S$R2EAW AGAR!C M:@9+Y >J95(&>>>'Q(N"P(D3*'0M3DX/-Y0M8 )7/%F7Z2%:!FSHM"0,4.FL MCOW#'DN)>:75P?955A"621Y];#2F6'Y05P7=>NX!6M MEQ6X!S*;#EHT*FX@E4J^KG,@>-JKW6E[,-FC=%;A2EV5%;Y/@ MID/X6IEB;R^.I]'[()CQW"WHN:K6ZXD[LGMHK[B4L+S%=!_AS5Q=@&7T7_07 MC_,$_(QF0+R&EJR@N8!N[[&8<-=9.KT'UQQVRGIAV79T5CO-':+;*I MZ[."K)7XG$')@YFNO7NO(LV?K\FAY%5'92EU:]QAV:&E')2*IGA#LDO@P0/) M]=7=]>7%Z?K^[)3KW].8H\GM2=/UY_%P7J#9N6#K@CO%O7^JI0U1IO MO&K(/'QYE/ [EYPX3\POR!.@;VD].+FZU@+SYSA*DILXVBHK+-1;X Z]!FWD M6)/^C#>XFH0:XATX"1>_B9AC1V H8$:V_GASY, MYU/_B9Z][&F8J)($M#OC#K!^-JA=8=;JB3\H_^*JS8+,B.2,^!-99D9R7 MG<+ ,YOA03 29\](3JPV'T=1S9#[ M3C30QVFO$%U@=$[GH?.'9->Z?&H0RH?0IJB<:WUN4<49<[!@VZ$XL/?#C.F: M[R%$8?*);J,X+\EZ[[S0Y.R%+66BV/-#)WZ]2.F.O^@+1_T1W]@L9D#*R=>4 M''&#WPS6/LXGFX0=7@">0^GABP-I*Y6 ;Y!*0%))2#9]**%)( M907Z%V#EW(;Y7DD*(MA#6&:!?.#X1$.JSDA0MUX"LBFU/$:EHZ;8$44M\$@_ M982+_1#R+J=M=C[79V=D4E59$-K<%[FB:>>9YF$;W&'7J%%M!24WL!MBWU=)A'G5DBIWC.I:B:T'%PU](<=SQUZ2F'EJHMWH&L4^(QSIE# M_*2E,S6B;E(=\[GD7CP?PN\Z @\K)V^'BGYR$M_5-$K1=EG!6-.P+1)YP^6$ M85W>$.@V &L-:88>;6PK1ZP<^WTCLN=10 M=EX6&+7;H V;FGLN!ZHZY#<^/>+9]WEDK/*7$T_]Q VB)(,""=.F% Y @XD, M]%?J/SP".CA,)N>!-M1OL;+.*>1:"[&N,GBX_7I[5+VF;?W3EP9NK!AD$1DR M>A' BQS#U!@='SD[(OC!#=?C\L8VEU[SFL7FDLR2 Q0 &98.(,^@:HA)WI-- M@X%L F<^U.F6L>M/99'@V645#?A4D5@<@'8J,A.$VEQ8SFV:*77M.G>SY@;] M@-1K--%,KW3G%:ZNM^*88QUZ#2^6=RQ5^U/!#:4#K5)__+L7";Q0.E21"2JD MG5Q_OKD]^_/9U=W%7\[(Q17[]YFU6R@--H#C\"O*#'7OO-SPM[K9[Z$X(3VE MXK\=<62$,.[0,F>[HQLOHZCB#4"#NHW+Z*[)4+\\OR)PB,R&.4CYLGQ5%8V] MW)J]W@4\-5;L3EO9;U(9YCR*V;PE%&_ONJ_WL1,FS JP!1=Z_%\!WY#[V?%# M,.(Z]A,V<3G-8O;_PI*%77M^$K.=$ZA_(38FHM+"GF) M)##?Y)=$)B!SD8>?RTV$X$1(+F.UK=H@"_@NA='=PNBI9&3'^WN6I+OCQ]3G M>K/AT'(= -S> S=P:FA[\&"#JCE>H-(1>L3;!3K3MA59IVGL;[+4V024I!$\ M?';LX/-LW,QG#WN9Q]+"^L1)'L^#Z#G1WV=IZH([CG7T5>R@'+7'&\E:4D^Q M-[*^^S,YO[S^JY7J\2PX0=N;.'KR/>I]>OTEH6QY5=;K6K-!_,E/?9HT7:CK M*I9EBCCN^#!KPX.K,@8HXXTYP_J-R:,'.4@A"-F\DG<@"QMEOB*E.*229Z6X M)6N[VA<.@W)C<@3M85(K6RNB6'++Y;M: ]PX=*Q+_6GPXJ]X\:!!1@/W?XHI M,_NG>.>!W$0Q7PT>3ISGO,[>_3*X45O8FRZORR5W,G=5&LNQ.\DYI7LFN$C.9C\'--^87>]@'/P'_[WBHVAVQ8V0 M??27$4^G'UX$ZR7]X"0QBP2]\ -GW\+-'9,)V7C697D=7K>,\#WWE M!YW7X:F?[*/$!T&NM_#"8)I\4-BELQ/NH-33N?9"6&L/O$&J*?=01Y8S =B@ M(O& (S_!Q5(UKHDU?P?TO_H&,JY 9_-"&LROM^=^Z+#I?_@ M#PFJ=@P[NN".81U]:YL"+>WQQJ^6U(.7C!)Q<-Z2/.'T[:RMYU38HQNV-DZ2 MC#&A_"EW*Z'+MPD2)M-Y%)]&V2;=9L':=:,L5(9N1Q?%/1MG0/,I?#&\43P6BR(>1$^T9"1??UK[*?T-'I6K5P; M&^*.4+5N]6*TAZWP1F.+K,/KLN8D":?YWF-$K03>!+K5P\TO-8TV"1,I<2ES M(4L%H6OW*:0]]1-G[Z=.T''PUHL ]B#M:XN#2M*:O3$'=6\=1A1AYBS(NX(9 M7+21CJ=RAK;/IF8TR6 ]_9^(&]DZ1C.Q13D5OJ M4O\)$BFT3=C8=6G@H-:_'1:.^RT)$%JD-PP%!2=2L;)7B'YZ*U2D$IL/\!PH M6DR%&.QH&Z?>9VEAW:!Q>SQ+'984R$UB&XY@B06:R#6KMDH_2]%Z$].]XWNG M=$OCF'K%>[^AQV_OB:UZ;4MI$EM:?/>Q47O@ZU!:$B+TTL B#O MM"2(4(D^U=0_YX-DY6]:^U+-?:.:]J(YSA@L5AL.?0QTW'6!,:W0OS.L#_HM M++)5TIL/;N!$)%9XXMNT#0IE Z6R\]41:KH+F-]W+J] *VS5IS_N>.]MB:/* M/#J=\49^?Q7&5QD":3VBD6XKSFUY/7[G]F?DR9O,P>Z>L-4SU=A]X9^^V^ M90'5BP!N'.MOBUKNL79OO'@T0(?!)P$Y*[AJGC,C!;<5X?Q6_'2@9&GII&1. MFS#Q'QTX%HFV,%OB;+@1J,((=C#B4Y;X(4V8H+P0(J!=_A?5ZZ4]22P,)S3L MT8H4+?T7A!4Z6IA$BXI?63J4C[L%TPGQXK[SAL.KUEO_$RF/O0UNP-K8[(X4);]X.K3!V]$$.#ONPC MKAUP%@1L3>[R2[45FRFR*WI<;YI7??MWBO777:,7;NCCO;\MAFUYX(W_ 3K8 MW[K M T[E:7X/" 3QN%WM1*\6[#EC>XIMF#[$U\DY@RTH08>]:2\.*P:JM]$ M.%857%CJ%NS+U]O+*'Q@B\O=*=VH$*VE.6Z,ZM)3 M1AU56[PXTBGQ\.M3!6&8X@/I]RP&=P2(6]H2G5Y74#4H5?6.59UUX_.6!GS7 M)[IW7O[JIX^/40 UM\^CN%=APA'D<$?V6#LU;8[VI847&49K-'K3-.<,FZ?P M)J;$G!=MF*608O\#E]GMQ?C0A#P#*QIX_-R%7U:)0D)W^R!ZI33Y/3^*@5.9 M9R?V;!6!JK:7TLC][7K/ITYG+S1V_41]!J/1#SG.Z&JNW$AMZH08.;1%-[2- M"CQ(SH247.QOHDZB>T$)YAH)USS:-^T$S3K58.C&)D'Y.?#UEN';+@JY_AUH MV=H1>5AKZ]XT45#W0AS8^K*/'OQAA*^8\%-2SD9$N^4Q?D(#U'5.8,K 5U"N MT#YIT'[.2&>:B_V/!_8/]E/B>_D>2'%+Y[5ARZ3=G(-I+@(?QEFL 3J&$42/ M*B/5&@DX'&\J_J0F0'DU[G75N/]F%XTL&XYC4VDW5^:/^UAF]$8P>@3J;XMA M1RAXL66 #O:/0C =Z4YEJ=J1[K:TC=TC73 _ ]28Y^<0.SF)&GLNPR)>>Y; MZ-5_(;6\H;$?><>7F/.7#L]>7%Y.\):A^MEV2]VTXPC8FC"X,+'6LCU&G;C"IBG_01)I1810I*EN@N73ZK=F:QMH+W2[WLKZ7H>C+*OX6M-P MPHW3$UI7!N$)V.!%V"F5'5Q49K=GR "K0)I+1=@TEA+Q,W\[".9Z4Z#D$XTW M43M.OAV+O<$),(JQ#3V0VODF]B:Z>.'7DAUFG=A:V7M8F&%A_^*=)Y50RZWH MA_F--69S_@.U.\&=8BK[MB>MQJ>G;W0B:G<"!?16#:A6<20E]AW^3KWF-&*T M/0>CL[#UW,:^]1HAZCTY@ZK&6R*4F,X\=ZD3IXLTT"?ZX(B5F_47*=UU73'J300W= ^SR5$Q26T*>,%YH![CRDKF_*2;BQ!! MU:$7YVE[UW1FR]QE^WW JU4Z ?'\Q VB)(MY7D^8F\NQ?(?'?WA,K[>_).*" M]_4&7KF"8[]BUGP>5=4X+V&26Z84*$P\CB)NB#%@K=IEH>'D\(*/":4&I\X! M[_?1]CWC+@HID((_K,T*"7BJ3U7HD@M19?A8 2:;5N/DO.)INT@R&)4-%M)G MJ?IEP(UFN8AV_MX??_+#\U,&K0E;]L-['-ZG++V*TK_1],;Q51<+>G3'C4M] M[5!?H.KUQ8LXO348OBX0#V#*G$C!BFRRE$V"4O+*4 ?863H6GLD6O(R^$X@T M;3PEW_@-JRJ#^B:.'F)GQT#43^B]\Z*P6GUY%(\KQ=TH25:PLY^%K_:NW=1OGAPO>473. Z*?.5,WZ=LV.+1[R. M7%R1LW__Y>+^;U8C05@ [E!'(>S+KE]\U7%55Y^%>'Z;QHT>W]1A 9[>*O9@ M?!@>[@%.4_.85W!TVC'5MNJW"5%6]P^VZIA+7.OJ2%>'VT7UY1O MDE\%82O.*5UC_4QW&QHK3-'4#K=3*C6K;84<-L+KC&I1!T\#IKI7P;.V -T3UQ!Z\W5U2YWO[ M[_V0Y RLA"H296Y)ON/X* MC$G.V4XR,F+SV%F:_SU+TN+UN>8%#L\$X 6?Y0+*MU2\(T?O:/SDNU1<"+RE M;O00K:X$6LNN]?W&*;EB1<39]-\^.*_%) _6EG?"R#57L"* MJ.JOPT6\7%:2"UM<.);$M;1Q@MS\LDU==4W[F?(MV,APD209]4ZSF"U$AKV'6^UAA'JYYA-294G_,-HX<;.41:JYVT,((07Y<:I,SAV^.F"8$L$WQQW M5H2SKMT0%JTY^Q7A MA)Z[1B*F#H,/>&JVAQ91->;3I_(H)D(9L22J_9Y ]( M^*Q;R)\JW3/F2\ E_G(QFT5OJ!Q./OVA^^^Y9#&?E$_=^>V*5Y8AU/R MSS1]C+SF%/@#LX\FAA.^S-@(0&L<);M0Y45NQF^2-SS49DBOD3F,?EG6+GT4 MMT<.GZU@?W!2\NPDTC43CW@"VJ"3J*A!V-\@;E-^ 8/]6G4GY^LI4*UI3+!L MX'K^3(G^!?\53ZBU2E3,#N2Q\\:^NT:#9%3>$ M]-'_J#)=1S^\0-%+^G%5Z.HY4H)-GBI5[HK9*N PHQG MF<'F_$(@EZ%3Q6YBN&%BG(TTIAL=E/!"R4A]IIAX"-X+.EJC.:;[8_ M.BR8-I2&AK;<>8DW^-.& @6^G<$BLBB39&]'?F9K'UQIS1=>!7MY0WZ>_?BN M,<&VO1I?-1^'Y>.GHIPUY/Z=1_&X/?F!I'"BO0G['-4:[$D'\11TC#8C-W9X M"BYLKBLWW,FG:3?<>U4KG-M*1T-@[QUWZY#4-F4WL/W>3@@Y' VVC?:*^&WL MP.OH8B(_78Y=LHYC*!4.LV-X]UQN=^.\\E_G"^)# M%@QY$H5/-&9R?5/2; $?!!L&]D\L;(/S=?S@A/X_N+^SSY=$@>_Q?ZQ#[X8) M52P,K[?Y>R).4!8V['R,QQ!MW!!NU(*U Q(3A/$"O5GUAL8JF[#Y"42ES-)& M('[*$C^D27)*$S?V][DAN'C76UFX>_J2?F(R_*:PZR!"N$-LN&WD>.I/!6_P MC-!E<*3D+(G$D^^<-880^14X$\[:SE5T&R;" B9KUXVR$!ZUN6&PZOJT:ZAN M[8 ;'+IU/:A=HVB--]@U9!Y1D24G30K:5K8(_(?0W_JN$Z;'RG8->-J=_MCU@SV0%)S-_2)QIF])P% 9O^^..^IY6J)=-U.J*-^[[*C#\G([S:2G4@<'ANX:Y'MT7[?*M M0YUNW\4ZO3F8+[P>C$\*5OSTB!3,[ ]YLUO#,@;\'$7>LQ\$;"5ZP=:'X8._ M"<3SJ,EI^99RQ]#7EP9N-!AD$1D2>A' BPO#U!@:#@4WOH$C\JLKKE:F@UKZ M=XV1O8F\@=AH'2_[45AX=)@;+6KA43$4[V\GI&)I?P2U:1D4P'%*-ZGVV*EL MC!L(VG64 [ZY)=[ [I!WJ)M>0A;^/63A P,;;@D2@ # OVO84K7%[92M&LH^ MV=@0KTNVBSO*(]/"(^V/&Q-J:37NSAT_YK>1*U3I.OSJZ((["G7TE8.QK3W> MF-22>JC3 G%QUYY\YK<)1(X)%N_M&CVZ^BS/?UM'D]8.R_)@<[@KN;!$W_XH M,YO6M@/WCCX [UNZCV(X6NMZQ%[=''>X=NE9.Y=6M,4;I)T2#SY[%H396GD; MQ3M[U<\/]-/?6=/KN2S?U=Q#T^BV'(^>8D^H<.Z2":H-LCDM8#F\1>V5>^=% M>S^LO0?N<-;0]N )*E5SO.&K(_2(MY.@A,X]W!]$XJU=HU!'E\7Y:^NXT]9^ M41YK#F7"T] MIPPW7O,[^]:#9>'I6EOE9./DNTN=[6G_7BM8"A_DE2/?R5WUCNV@P? M311WC)NQ6>W$=11%O&AA2*]QE_*/*W\<5F/"%6F?9%MTC93CJ;Z16&NWVJ!@ M:R;Y!J*M0[&AX29-IZ-MO0I&41.?R[!JJH*!X*#!MOU4<&5EQLZK_W2,\T>- M<&-)LTZU"7FM!=Y(5\@YRO&Z*_$-+B3:7#M/-;3I]<#I:CVT+8I^=C3'7=A3 M5_C!Y20?*8'*M\P]O6IT@:IN4(Q3E,ZM"GB2O87WKZ8V@;+BJ+7QTJ;6-LNJ ML#%YXX<\%+I6P!U=<()7'WV;BJ(TM<<[AFI)/;K0B4P=B>_J'Y5H=UZ MG^CU7)2/3W&\T.3MJ Y7+-K!2M2SM:D#=VG6H;=VW3AS@JX!J[T'[OC6T%8. MZI;F>"-91^@1Q3QBJ#)YZ3L;/_!3GR9#=D@;EWXY;8ET]_#3IQ].S^RM>;$8 MU.J$>TG83P7S"T,G]^:@$H X*5\OTM KGF&.RSPS\=##K$O&>4S4$-8H!F6K M%K Q&K/9P,X73ZPR^(8:%I,30< MRJ< "Y[\ G:-*]KPZ%JJ]B;R!@*D=>G:C\+"0\3>2W> M@UJ'K^+_._>W=#OC!HM^-JCM;VGUQ L./>4?79.Y8K02=2]?R:_Y?VW#P4RF M*.OHD[*0OO5*U5?T65([CD+VHRNNR<^#<&![#^V,>1E[E6B@0UEIN& MFGEL-59L.+YJ <0P2KCA8H1UZKL8O^IPN&OZ\3Q*RPTG!TL M.< :#X4UV/PB$94XC&6_EXH5K\J?^Z&?TDO_B7J\Y*Y'M]5O#BKPMLX@)B"/ M$P"FLF.9A&^0-N[TC$DT'9S%X6RRP(GE% X6BX(]&V@9?S[V^J5,^2_]JIRV M&*+GS?C'9$(9T@MQB)#G_65IP4JD_)>'! M04:3> SW[ 5N#^KM3XTDB7/ ,&FO6N70$?3PSCF-:#7B2 EP*6C$I83( I!< M MMHA<)N,D(YLI&H8&=W.U1 MQ/:D2L,38J'K!WZYW[^/??:+O<-6H XCZHJ)1Y8F#%8\6*MZEHKA5W;X[*19 MS#>^KK>UTO_]PER;S%)"OY]=FN% C\82(**G)B9@HV()_SIZ)0/)KK95$\5T MY_@AO^]0 LV^J+S"_CX079HWO++=SHE?K[?_B[Z":DS+$[:8\]/U0TSYF7[W MIE9_$CC18HP]RLVIGOV1;T -U6;X6+L7"6H)2?/])K^JL4R<#1ME^;;P;_25 M &XDQ24A(16L#U)LVV@3E>9X/#@R?&# M_.SSE]"C\2U]BH(G!NGGCMN=;#":&&)\'6VCAF. GI208^YXO29'7T>2C&0@ M&O]U*1\I!+2UUS^WY6H[^[)Q./<&PZ 91SVTG8F\SC-1J,R2?XD>J+LQS3I M QCTL<0S &IV7@KE]5)EEDKLM+W&XA3B60'4.T\BX )/:Z@I+R1$7 M:>*Q='1]SR$P(K=E6W$P+W"PH[:M"6[*AKI,E%/JP92O=;BE<\8VR MP"./SA/\G88,KU/_?:&ZY65L^6R2_+#1.H[A7AY/0F+3ZL.GE=;/3BQ&M>[Y M^FCZ2X%C0Y94+'['$5\"^)I2T<@"67H&K?9P[ZQ<_:3BJ:&Z%,X(ZM"H.'AN:X#Y>;!-XJ&]>-)X8@@[@ MK4^"(R^RG4@.ZZX!7SGN:.(4E:(&PZVOB ?AVRB3U' M.>;&G^EN0V.UHBT]T$=@E[8'L:AJOHBH[!3>0%:-4ZR\%)$H:@$5,2Q:P=_< M1Y\^B9QIN.55B0@5A3R?/Q%D(X@GLYE$L82M0E$;B]!;IF_LNVP9?9>R97QC MS'>UQ1GM6AK*"[W&AG@7;>WB#H_I@BKA9,5"RLXQ?]=:5+44O?1#>I'2W>'B MS"AAW$YOSG:UK9#15/&&DT'=!F]^:&QX=.QW@#"$2V-I8QF+%3\=6=%\+GNS MLCK%9<;0P0D\HRUSG./>@PCN>?@XEUUE,?+=B(PV7X9D/,0T?*,PWP 7AP.'8!Z?<#9#W M-0YV:85)6(,H2V]A3V0=LB8\4,;L&YCEN(3!9%)KM^U%&&2WE&%H6N7-CE%Q M=7Z1\/,+$>[B_''?-_J'LR M3["YO5MK!,]I[C#9 MG\.R1\81^IH=#"&H$Y_-EK>^"X.94_$G&42PE_$""-#NE;+N;.B#_)<=#'KP MR_JU?R<'9?'@0\H4))&@MH)]WR#S^-//&P;8801/@>U\L0#\B;QSON*PPB$> M2@.NR+N-]*NG" 9?7H\JEYL9D_WK]TE^&X2U=Z7VGO_D>S0$:=YY7Y'83WY[ MOXTI@%M*WR5?K3BHO:-?<8OP9XP S?91DKXOLI"*J<+L.48(_4=SG!;/W(-H MY+KX\J5T1!)O">.R93-#32$_W,, S&-1)_8F&F=OZ9Y9_I&)V'OT;.NZF#&Q M4W_%2*?LMZCQJUN+"8Z@&?J67*42A.(\MI(('KMF"[&=37R>SCY'J"MICA%" MY['$H7_ ,\;@ Y8OT;MNG%%/JLK4\_!8@P!.P!QN"\5E]H[>2S@8UM;!S,-U MG%FMM!FZT]]9+0*[_5%8O,[@Y/:Q7);L*H,,;'C\'\ MI,4M?:)A1MLJ*71TP1VJ.OK*P=K6'F^X:DD]U(?KQ$7@]Q.7BZ?$,-@M:&.'VU6S?P4'4K?'ZI(>M0;ZR1%9<] MAE_ -^2&C7?T.YHNR16/;^JWM5N*.QJZHM[HD,-OJ8\>X:^+LJ#%)*;U5JNZ M-4X'U=12'M(53?&YJ:[ 0SVUI%M,MZW,MFUI-_BXX R.\D(>W@G/5LB?9PT? M>+ K"T7H]L,9:+TU+TX)M#KA/B+HI\)0ARVY,)=EPL2PL<7/POQ0JNV<+Q8A MW40:9N!\5PPU18^X$K)IK?E[> 8\XT_ 1!(MR CEOY_UB&%F^QZGZ!C1KN59 M5Q1*SG-$P()(7&W.$C^D25*@>L/23+S(T+AX4[5![II-&M5<46Z V/4:Q1SO:H9KAUV$2>H$HB)OSD0Y&6QK MB].IM#0L)GW*AK@G>MUB&Z@.!ID=OL2HG-(5&;VOZ*,_-VMKB];I.#0OG4S;$Z8/=XHYW1<-+LUN:P V9 ME,&JQBGS)^E";-#2M,")UL:X,4-/ M]&GPPRUY\\,WO^1N TVF-<1)7=6*_NPX@T//R:;$-W'D96YZ'=_1^,EWJ6+Q MI6B&$X^Z]"KFP$UM<$Y_6R4=_!*"("K*3^2$YTYD+&1@L55(H%R1M;5%[XAJ M#0^\\;@A:I=L$=>P7YH_.J8IN[$CM;;IFE_*PCW9J:2!"[7@XG,?LTUIF@NEMC9.WE!H.AB;?@Z^"R8%^A"F+O1ARB> M]Q!N&DO\?*CD[*!B1Z_AN\_,07[.4E!)O?O4S,5/>L@X,6IBJ6(,H24#?'&4;MN13 UM\(=41TR&QF% M27$/F1(G"/)*? <#KC]S#=J)]%X7^LT^ULZLD,VJ!Y<=3R5J=,,)-7WUUJB M<(G_$4-MR2>HA'!I^>G!R74O-+T5+Q 8S5#K$ @?8:%!? M-6IICCMRN_24(U;5%F^D=DH\U$MSPH13)@5IBY>,FC1MO7'4VF%Y/JN^BZ1N MO2R_-73PHO)58;<<1OPAL718]([)1X\ 9"9YW3>59:%A6<)0Q/HC"-'3?] MJY\^%OGYZR2AZ3HLE7Y=;Q+>2&&COC1P!^P@B\A1W(L WM >IL:(NFJ"W(IPC/[4K>;+U7<[5SN:+)<,XP$(<8+K%[R3P$(8K)WD_H0(3-G4YR>(8 M7B,9""6-%!8*)&IK:,'(EA ?LWYX&^N&P>N%A:\3YEL?H%X5 M3&B&2WS;!J6V_8?TAJX+#O:>@_IAOX6&^M3#>LD(WZANW :G=$MC.'")11Z& MC1#/4T!NJJ>PKS>!+S).[MC_)UN?>M=/-+[W=[1CA!]*"S<(C+*0C J#".&% MB7'JC$Q96A&)+ZD8DY(SB9[@85_&V_:\DPT0)@X>QE3UTF^#V4QW^XW@KP=-S\;\Q*H]%#G\4; )F> M]NR-19KT%PY9?;6< =D*D8B0B3_&+4G%&Q1RX<6_N0Q;6BLMK95(K.#?B) 2 MGB9+XXR+5JQ2H[C:(;ZE<"_1>: *T_?ICQOC>EOB8(M&KS->=.JOPHC-FI(3 MJ5@!%!7,X.>LQ\$;2_^JEOCCO(. M+6LOH30WQ1O!70(/+CXN/2Q?4#;^L&\/3RUDN.RXF]G4#K=W*C63_?*H$5Z/ M5(LZN)! Z7^7EJ]3FM?MY)'UH_P6.R\GZL3Q*\P@Q?-[$'T/.4\;42?>J8=K MH_D3$K^$?JH*/65CW/'7KJ,[O>/'<#/L,DJZ1L"CQKC#L%W'IK&PWA)O&';(.W947)&*, '* M5D=&PTI*JED>"@L%?XZ[0Z]HLXR(JVG4%&B\ ?[XJHLY/JPXO2F":4]C/_+. M0D\GH QI!51(I9N3$AIZ^;XD$V8Z->]2)TZM*KJA#WX8YMNRC>K."B W7(*+ MT(TID_B4BO]V&$?9:1D0TZYS$^8T]\ /0AURCT M>YYO[9RDT.T\BJG_$(J!'W@%'N[$_@T7.7VJ:K[V_9TFZ.T[MM; O:'KVX@:9QQ8>A5DZDM][DL -#4/L(:-#G_YX M 6*0%H,'23_T4_K^TG^"H"@YY_>Y^457VXGLL]J#URLF?F4(Q]K%=O%I^)IB8^^4;H4) FX"[+$M MS5+6.SA%_$=;>OD@0HN-_P[;:"*"@LHB,:)+EZE00YY+RXPM+2(L6$C3 F@6 M$B-F5^@AHX_^?1<,>&&AE_2#3].;UP3O2D[EP=DT&XI1Z@1C5P<3K0KLE;>5 MX.9Z>V@!A:$Z.^$.<3V=:P5O6WO@#6M-N4=FR[.-'<$G>,MFA7>Q;HN!G>:&P3UL1%B%G>J7[YIKGE$>!DE M(,NLC]E,9HH=_T\:BZX#W,G2\C)R3GCLNKS5K9!;2@V.!!^^P_,W\/XP(/6.6 K6B&,V"Z M]"H&ZJ8VN ?I5HF'GXU5HW),(<]&7\.82]WNH,[]^B"GE/7F!ZD].Z,(FX7I'8]]UR"5U$N#Q?SN[_7^'_Y$3 M9^^G3K BEY@E(5CA\N.>CCJUCA12U-+]1'$)?X*.5T" M#R\&7SMTL%\N9RI%^1;A?;%%:#\(+T)F"IJDMTY*[U+((KJAS)9L!%/64.Q% M8$FAJF,+=?2V]5Y*0&OI8"C&5Z3@1H#=B@B&I.*((/ G-4BI?\P(DW=.PJ9D M>T'^,(G) C*ONE1+A":E,G7O:R^"=5,Z\E M'V5IDK*%$B-L)!-9_'B5CWK6IESBJ:-S/X0BVB=1PA-$ ME<90M<8.IZU:UI&TL2EF$&T7>/B<*'\$*R=,.&6>VVSI"L-4FOX2.B+YD2D+ M<4C\),FXRBZPL)7#,>R\"=%KE-K93._<1ED?PWZL2D8&:[Q,'$)I#SS?EF4*GWYI4;(OG)=ECG M$ODTN:5[YY4GP%]O;V(_=/V]$X@G>SPHVBR^'TBM8ECVWV9,33?##:I+380F(X)O@E4:E%K1DB"UT9 #B($(4(2[' T@>T8 M2'R/'HL =>^?(Q,&K$B](>0YL,]@P,GIO!&<.=1F9GCA2S+&'S^HF#(4"_(? M3.6C]E!@O67F !W.F1T/[#&2%$Z,,&&?(O=U*!W<^;&CM1J[P[@E0>VXD##. MXH7/A+6%I-=M%GHDAMS:F(H\%DB=C7AIED0DT/KP*EJ29/"J[J.3$B>&YS(] MRA8E4-]B\TH>HX"GX*9DZ[^P9E',N %3/^1-]K'O4D[8X[DQ.VX+>%P-M"9; MIG+ZR/KR!=DK -8V"H+H&9JXO)AU*O_U:R**T?#7VA@!?\=I.V&8L1;B88F$ M/#_2L/Q[\4LA.[PCQ<0$-R[I)Y /4[QOL^7'13Y0BQ)>]YY+3MZQSQYPP??[ M.'+:N>LVB[%11LD-I9!"[2- M%YA8,]J>N'WR]1_NHQ,V<_'3\D:0\H:99C>2*,\:9K73XX((_<_L^"5?/QA!?4K MOIMU;CF+Y1KL(QA5=_1FGR?.HGB'EH/1[90&SBOU3F/G&>:ZQN))['5(E MNFEVPXMN??0NT$VG#VYTZZ6!@0(9@%V>X$D\QI3P)6 %VRW.=\50RTZ*U#- M8H2<"0$NY/BZ.V&:,T 59C!-*R#)G@3ID'9]YS;+I<4N?HN")K0?$E*\0 MI[7X3U:5:1G7QG9U&YX;>5H&VMB24M3O%C2I5]96UG1#C>6=$IM M'$NJ*HYWU^>WHD*0)3293'FNV4&\V=MPF55-&S/GOSBQ#\F%($K+$JZA&4[8 MZ=)+GBT?ML$[4U9*.M3]"H+"!>TMW&3%6I=MC0V7XX+J)=MQJV6XH:'EVH$C M&EZLG5./QDYPGH5> @R4TRME0YPNUJU;,;5J;H5[8M4A\XB$8K(5I'F^?L(G M4+/.FB;2+"=+.%T>2;-/E&QI-N?K$]=/- []A\=4E,%B4S9> 91-$77>I-#H MC1-L!EJAX?V*KJYX1[Z^"@Q>%@@^I&1$2DYBA'P'"X>O["R(9C<&4]58N"=Q M*H4Z^U<5YNP?_W'+1&Q: !W^#6>(-FH 5C[ [[P:A9O\+X)4#*]F-'QFT;X M/_XKVH/AX.^(@Z%)DS(8Y#\B#89&$0>[D: V?S#, MH,4\-7;\D%YO#_+)A#CE$<*)LV=_25\5$_>>)'"&UAA[U&KI].B/+T!':3&X M?@&\OQ1MR4&.#10RX!RKLRQ2\+137'E.H\R3<:I37'E.K==/CL_X&WVULDF! MNVP3^#L_S?D%]#R*+VD*D%\T;=B-'$X))^89L$Y9(F@8&=PG!F.5,G1C)LE9 M$J?@2;91S/]4EE^'8D)""O@QO\DLWMZ$=ODOBDLV\];%L61%Q;!""MYD73/G M964^T6-FO+5IJM(D8 @=GSH>G?Z?N>'Z#@8>1HS"=:7#_=51A)8/ULVVZ8O5 M=2IO ZH5.DV+U$G!E%]U3!:&RX9-UA.62^[\PN3<+XQ8M%,-DYL]R P*C]Y" M4#]C>;;=4C?UG^B(AUZ;:>#$Z%$6T7ONM8$ WFV$86H8*UEU\.AKR1/ONZ]3 MF*7V]*M]?"@>8CEETFC9YZ##DB*_25=UF,NMEQ+3C3(;"^#RT9[3N9//9M"V M>*+(RRON,C4]%!'ZR4G\Y(Y-;!WO.I236:7,]WD";0XU-[SD=L-J MIT]?G,$\R )532?-CKBW0_JK,2;]O1R_V+(>=C7B@M_\J?#S*7Y8R;GD)3)J MRZF+8&>AIM-PB4&WCIH.=61%MOG/@WT KJN8RRZU*F M,MT*&)O)5*P(Y[7"M=>):_2)QDS%6XB49O,,)84:_4;91P+#07308^,XK0R=BCLE8[92!,X$ MFO&-'O@SS[LD02X!!)4?022)/])XEQ0KB\,'&N9&6CO6Y(QEY*U8$\&;5P'C M]N3L2<&?< %L(+$=2ZU;'*W!R>PO3<\=EXK7 +5F[[7F.%%95T_U:K-JNY3E M98/$QM:30)L(X@B6CP8UE9XB+)_#A.FU_:!4KI'E-PFYS+?\G4UZN(UND.R2 M@GRXW09L/2EI+@4T1F@VRV95_;G0_,G:0A0$4&3!?H=;7"O5]E8!:7&SN2Q@ M&CR^H&76O.&2<$?638TDT&HIV%"3U5BT U4$@6M.N?18(6M79N]AU:'0OZT] M[D#KU+3KYBMOC#?LND4VG>7^*R<_6PV0N^+=]#LV3CFQ'REJ$:G:X73/3LV* M<@B-C?"Y8[>HPW,,!;&9RQ<5;'\)DSUU_:U/O<8RK%UM$;M?EX:E"ZH:(G7# M3G''NN**2+2-EV8]>V(A=+T]I5LG"\I84A9H[6B.T_]T]2Q.-]K:XC[!T))\ MS(%N4N!C7!Q9P&TJ)R04.(L]*J$\(!+Z^Z_1C><"-57[]HRHJ,/OG&SM^2#%Q6')0J(Q&,UQ3'!CT+K MD#ZPV:G7MLB?0?DD^8EPHIO7X\($6#8"3K(XAAL#(VIGM9! 'NX#[-&U@Z#J MCQ@&AFAAO'96SG&NVEE=>X"S&D6N(I5?E8_+J_)%K04L@/%+F"74*W0_B78[ M/^5GK;0[57T,O>5!22]+=>&*%K%E@4P_E8PCCF!?P@R#H%("PD2PG0AOSV*2 M';;,#J-3165B%BOPXTDW>J*A$Z;& MWO7,2V;+J0[\:'6W8YC&UF?!ZVE&UZ%WX[PVG$8.HX SD$=8H]@4[=D=]S[I M4&7&;)W6\Q"CQ8DX>4>FPBD$;LMV[@Q*Q!M1L@9\F$'G%<-\Y88S^_ M4[$B_I;]@_$IXXF64M]X+^4FVCT+KN[1S&SWG=Y"C)=(\)%N=YK;*V&=DEN*ZUQJ/S,%W">/\ #(17@2A2DS8.>I5%=[O*"LI6D! MP:V-<0.NGN@3G$P1EW-F>,GF%YSWK)@WK=XGI6XY?7MG4T@4M9O^SNM#M#S? MK-41)UCUUUTK2;WLA7<9V$/V"1+-5WD]%(N/0[<;H/6Y:,VN2W9Y]9/2.OV6 MZO:&6Z.'_5>?%1D"#"A/$P!_Q MQ< YL_*($*AU7W($'-M!/P"JODOU_P8-)G#_/R%T?_]IS A0Z[YH]S^R0P_W M+_LNUOV/-1CA_@=>_R/?6X8S1\JC8JIROW65[OP7Y4:S?D^<+CU >U6A7T4W MW-O0?9487*Q#+%T3_Z6^']BH_W8 IKQ7G5<=,0WJ#$VYH'D6XQZDZ92Q/T?)H][ M*$-2>YS@GOTGR>+7V^/7=4816B B:-FF$QY:J2P4*_1T&@$<12+&/O*A"*3C MY?E Q^7AX;=NM-MG\"/_ZT$9:1E'JLJ[.(!D6CMJE&LZ?#>EX#__NRD6[22_ MH,)+/19&&/C\@ 8"GT2AYX-J3E"I"5N'"609R:E/ZPQ_^"S M[L'K19)DU+NE<"B42-?F.@T\DQ!+0?XYOTGSJ#&'!$L:<6:UQ_!@P1" MIQ#IN*Q;\Y!$HE)8_H0V&_$8W8P1CKG4M218L2LJ#7;5D\"'9)TXAF0ARZ/> M(K[ET8@I25T[BJ\^NC19N=Z24O;CTH>5^$3(3W(%Y#O8EH?YO6(X_T]2^ ' MZL0A&TH2LJ';*&8K\>K^4NJ\T&3%:#*.KL_U%C>==E&<^O_(?Q$$T3.C4TW[ M6A^Z^'U2W2:T.@F*-XW@ MU_W!MH/(TH!7QR;M(-Q&88F K*6/(7#>Y1?Z"DCET"<]#;1L[)S4DDH<+2Y) MED^7%7Q1@>JDMNEG@EE6A>>.'__%"3*Z3A*:)NO0N_1%V2(?INJPBPTO)=U2 M-XMCJ*06>E=1&!?_Y!O?;87'3=+'B>&365)>O1HCCG?5:U[%H6$*DA N"LGY M D(DF-3KN1 O[]:^TO_?R_+W%"ET^W]!U67[?IH"!:4X4PFSF?36_X;,IRY.9\L<_ M^VR1%+N/K[ I%>C-9]H[+\3YM6R@F-6T]%R Z^O);\#S2^IB2K_^"[(I3G)L MA]Z3G38:"XF$/A;I' Q4!!80%[W4F"8\,,R-+L)]EB8<$#[HS8<:>RS$^=7: M-KKZR!7=^XNZ\J\)GJ9NMEWY(+U*ZZYP#&>*QD!@Q M:5'3&Z\E@P7$H5$UQP] *R($XL./)%*Q,1!82N;ULTC+@=5!80.SUT\-$<-W'3IALH23M M)YH^4QJ28M#D\<9__K@BIS1Q8W]?YA'=1('/-X.MEE&W9C=$VR7U0^S2(@J+ MJ5OCQHH.+=750*._2V!C%Q$D_ZW>&T#P&+LYE<_+B;Z5_'KWD7I90*^W M=_1!W#[<0[IE^""AT:?7_(]M.1/#*.$.X1'6J67Q]R>#-_3'*#,X;3[G":EJ M.6%2LB42WQ79O)8M+&8W\%RI1,AQ%O@[/^3BM>[Z=/7!'2I:&LM!T=H!K_OK MB3W4T3EUN-;OA*]$(F]EFG82Q2S$G)2R:6,>4ZT.W-8>M_-V:BH[KK(Q7J?M M%GGX$VTY93N7 Y4#4->&HV97W&[;1__ZK<+N?GB=N9?TPR_JMD5".N28K_'FVJ"'GU(]%:;(-)7O'+ZN4 M)30(: R5)XYOF.V9]H^,:'7'#%YR\;7+7"7A94H.WS/ MQ9^@5->S$Q<7]1.0]CW0XN_K6JUM-Z_E.+?WG!W)^1&)X:I8%*XXF.;_,&J. M'X4Y0EXVS5/-HN:U2CY^2,XT>Q6">16^E\(FI@$O*,16&W),O-$E%EB D$=[1^,EWFU^ZZ6Z-=TS0T+(8 5J:XL9['<$-U&!QA$N28Y?, M\?S93Q_)DQ F;\7^%M#P@?V>H7XB))L5T:>T34ZMC-&\7*6QRG=UV3\[\6^T M*N797"^R1[>EQ&R[WLW!V]QG25'&" '(.DUC?Y.ED.\&4V,N'FRMB$T6VSGOMDU8 MFH,*<["I%H/S'0/K)(W MWC+TCGT7S *"K6&8.=R(-DX<)U1-8\-B-F2.,NXYTP1Z#MX&\\IB]8E +3]T M@PP>./)#48#2"=PL<(KM,$\ !#F[N2-\8YCUR8+R%8E]E#*]?%ZSWCL.\+A4 M(@]R/F=+"!QX/8BCR>*Y&_'W'4T?(V_6R1JBKR./,D(6W;&%V;H2B7"9B!!J M]FTI1/:\;78_JZ,+U^]ZWW2Z:8KF&QM+FBPV:@B1";[!D:-1O84,&"),(R'\ M\H<)HY]BU.@@AH1()!1T*L2"/!Z!DC8O(HZTZ:?79@(MY0RGY8@;%6:PM@P1$[+#BQ=S M*#UXRJH #'O5&9N5O7)VM+4@HT:W)4;BL=[=X53U65I,-$ANV+%7!'A8K:XX M$@XN.^Z)&B2_Q( 9;D>#X]0E_CNIQC4T/0+UGK)>6K[ABLJB[TN3JLX-%PA] M(B]Y&O.7M-\TZ-4M:!#Q!.$W"W<'ZEG&NE7^4OG,U^]PV?*>O^?JH,6Z:I?H M;+-,$=E4WZR,$D_QUO##1*.=1U@5B^[V!M6ZU0J'43[:C1,EQ-O4%6 M;X'?W0QM?DD.-WRCJS&-YS(*'Z#>PD4(-Y[9G M8*>^MM+?&Z5R:6A9)-2U- M<:?+Z ANX$Z*5(I+O@H)>2H?O_WP/=DS%K/FIDRI-]<(Z%DI%&)DLM:UO6R> M"TX8F-BJM;HD9EG@'>6F4G3<;?WC58-\99^79Y;:E;?Z(3MV5>\&XMG?A\9I MY4]'5K:R*=-LC.IS?WH]KA0 7UK< +K>YKEX6?H8Q6 QU1)Z CZX<7(RR]8V M8DPSP8N5TZEJ$2V%;#S%-D_&+<6S4Y06G9$K"^49Y([*0HO"RR?'#V"'[3R* M?V9]56=X$[+[,M!39>4?G'=0L%$>E$U2BTX[ M*\BZUXKC-!>E&[Q'WG@_EV,7]<[I)LZ<^)5U:GY1>Q !G.$]W!;%YGJ_WKCW MVP?J,OP"9+7OOJ=QZO@AOQ\:*>L,/ A9""_M+>0A'WY8$1!JUAWZF2VEJ 5 MSG*$MOH5E#XH1ATGCAU;3] MCDLGCZ.+&Y*-:VD"K/DA:0[5>\Z'<'G*-RD2U31&X+BEZLJ6+3AZ)4V$1(2+ M-#Q/9S*4:\S;,4[\;2/=<9Z06)!ZL?6KQ$Q>[N1+0#M#%C2- M=X;3Q$Q8ZCI4URXW3?]MX]Z1)4U"7TG\[:/?L:J#5U<\ZJ*0-F&?G"?'ENY\ M:AB61+,$EC[K+)-?O^\?VC$^;E?J^B$)YTHMYM% 3G40R= M3.?D#14")U;:_29&W_\]"QO?#5_>U_GD!+ 0(DY*:.@!N@L%R3L_S"]_?#6=&>]2)T[? MG"$W],$/>2JQCCD7/G#R]-KD(A3WXF?_C$?LO]1AL_D[S#-JUGE_B8.FP@+X MQTPA.+R])41_8TLDP]^EN.\P#LW-;O)WVN $1KJ8B7WV0F/79]T5:&U1#)RH M;?N[C#Y6&"'#&SU\,&&1P>68'RD)RUT4RB7)P7N?@[=?";8BE)>+AGFDN(3V M+HI)%OKI5\6[8;@TLE6(_RVTTS(O\H/E1('^ T3'6/;I'?JR3]367$18W3YU&\I3Y3X#H^ M>]G[L:5QNE6,+W&<[OXNTX_3:AF^U'%:PR(HQ^EM(3=AK:B0_ L8J"?\7/,- MU.?RM\O5>*,#]83?JR3]36'"-[LY6FXR_Y7Z#X_LOVLV17$>*-]'.&5?]MSQ MX[\X0491)*;TE!+G9 "OO6R<8_81\4OQ+'1D1^\D_Q\ >WP_;P/?/T4[+ M.F]PB'O+:4'3?]C6C"&/C9Q.G,"OQ(KNC2H'^+CFS#T ME^]+G34,_)(VLIC^.7\P:"+\DXC#/"B;*+8P/3WS_SBG+-/)*T<2#\>/P6)E? M0.?O?++6U>B4'R?+9\EYH]:\KS=R9&SC2]I-^D(YZ7A['UF5*;;$"Q[_**$=NY,AWT!<$Y(-O_-A,=ZVE*@7QI M:\<6&,:*VL'@T1!1J$"X#BAV/A?VJ3IV/@\,;'_+66IE^I!V_OL+UD=[V+MS:\WSXP0E._<0-HB1C MWUPGWW!"G@M'>Q,6-[E>:F6X8"PWHC:&M5$E*9%$7?HVV,3VYSM>Y2L@3F5" MK^*V1$"65CP781K[8>*[DQ1?U.#WMH&XT](3;5K5F;U= .Y6&0/XUC:F2CF7 M6()PUJ=T<$T MFE,"G':OV:HZVFVWVB*@]R^\&LHZ],Y>]A3>A[^/X%?J(>Z6[AP?4OY/HI"G M)V5.<$_CW510;53 MPWMYK^ER:' G'1O=^B8P$88AAJA%G%"CQ2*D33BO^Y: M+I0*$DE# BHN(NEGY8SQY,JF-$>]LMP^B M5TKO:/S$5C[-B[FRSA2_GT1)>A6E?Z/I+76CA]#_!VO:GLD_!U_< MX]-LEI>'G*E]B;-\R&8__E+_9&]JE!'9Q.=1G/\*VJDVLF87X@L=3UJ_ MR2R#2*,$7^#(T6Z'<1M+!WE#U0;*T2 !8T22-HX-0D"^.R&)^+;6$M-\A-9] MMH9Q0$CQIK!_[@_YY2+ZK.#]!>(THAF\ JHG@60PC15('FUOSH5D\NQ;O6$F MSDK:]\MP9W-V/GX^:V&=T=+@1G'+7\E(]N M7'D?R]_ME@T9L>]6Q[9./F8;*P%D^(;>@77XE8;ZI>^)[^@-% #GD&#O6XR_ MIS>$^UN]J3?*%H;NZO'9]L'C0I2C6X[W!;1$.:K3L*HXQI\G8FV\+.;'OX\P MM=U',3\,%F6#%W(?S\JG,' CCW^4>VFH%=?%$C8@%[MH8E&R]&MY5CZ0,-K! M\UO61U/V\"-#T8'2U5#-[@:-AJR]&C72/U-SJ:M>LZ>$>%#2E[ M3IEP"6 +A:G-!Z:$.##(Y*Q@X((!Z*$I9N4=%]9E&\4[*'5?&^*6,5)-8V8# M"T$A&.&2D4JTY0PQTUCV1G;>=[+/VG\35M+X5L1'?BQTF(4U'9>W/:0HK&IR M7#E@\?8'%Y7"8T:8QDUZ@7+L%^GA&/06!Q/39C4]HN3R%0?7\R868S5R813: M;!0L&WTGV2Z##/$G*I9KU]NU^^C3)TYJ^E5B%_LW. :-^ X3;?&U\GZCH]88 M2XP:SDH.Q=M=;&WD5$SD 2QN/DH@SW[Z*(]N<'=,G"TL9&RS87RM0>]3RZ"G MWM!;D4KT8F>/?55)^N6,B#8^S4E'3"QQZ)QF]V^L(/\<3IN_C8V!]NC;;2'J4T\(K#LG\.OA-\%JO#\"+W/NU^+\FDS7&#=' ^ M2BK-%_951NGU$XUOJC@69IS^PPT7[(L9O$=^NXD&\X%2?5&#^U@;C1GL1;:, M(J>[S/F.GD2F3&T(W^?OMH0TA1&#_7Y+_132\U9?^+3 U@>==)H@LFX:[UQ5 M>A%0C$B:-=_'6MS$P5J(3A&>B[J24>8^K9,DV^6YR*'WF::/D1<%TG'&.R]BQH\AFR]+Q.2) MS9O\'61^ ;I7V5])D1N6SZ/RM.6?K"\KF\Q57MC^3!VXO9&OM0VO&WMSQHG8 M%JP_>N77C^T;7=H--,*8M5M5!G-7T9<.@Q()M6M3R.(&A!^2W]^$?PL_AZ?W MX9_9?^Y^3_C\,5WQ4A7TQ=GMH=CI[V\^_.W[SQ^^._T]7(>0;UN(VQ&,P99! M(#"-0DI@PYA1@.VO712FCW"/BXT'Z://FM*0>,[K0M9W,W_5R<;C%:G*9DAB M+VYU-O/W^'P<5^_ N9,AJ:ZXUE"W?O+;>4RA #V%[9E;-LN88_*DX(MS-)[= M\I.MGIJ8?B%KIU;5,2(UDY> P*20F(#(RU\W3?(AN+6V8"V_L%8,"Z;1-Q-P MP751A?W4?_(]&GISP;6"[Q<$UVV6GPRNFYA^(7#=JCI"N"[?B2@$?B-H/:,C $XXMOUL MZ=O"4%6/8B/<.ZCL<;P)OMR-I>F-RF4959]#<=Q3BBXWN-X6==!S^6^2'QHB!PX@2&4['U:V75FQ0!G$(\W&V3.)5K9[J6B[)#\]D-B\ MIPH&0WQ5O:8^T@*:?::[#8T/%-?L@M,G^^A;6VFVM%_ VE!'>@.K.3\4*0:P M[&!3U30_EF;))JZI6'MSA57V;EJF7?D@O4KI3/KZIU1-G MM _0OO:<377?0XC3![F74M?4.=X<9^E MCU',WRW>15F8'CZ V*\GSO >H'VY-M;KAB^\AP@_V+-Y$!][]HI4O(A@-FMT MSVH#'MUQ98-]80.GLH'39(-Y$J<:S5"F^5;VJ-HTXX$1@CAAPIRM:CE,@ZGA M Q6#.IG'FBH;7T(=J:$% $)@+T%'NM>2A1Z-&X!JVEV"!EV%9+^D?M#P(.Y_P,^XXA?'47F5C M6EE;*J]=MHJ.F8'$J]+P>.H-C;E=%>-BC^XX(7VH'>0)HFY?O-/!WAH,OJ%; MWS8J6*W*A\SY"\2,G=A3M3+7F\T8A<[[V!>E:?(!"4_>6C.DGKVX?D+OG9<; MY[4EB4V[,VYDZ&>#H\LOG3WQHD)/^GSL%K^V,F#7]!:9^KG:,',1!9IT3*;NNJ!@[M!? M&=6*?@L)[R[I3<4YY[.2IO!\ZBZ8V8_YJ:QP=$KD,MI6IN;N(_6R@%YO/V6) M'])$ %PB"L5^>I7^U7;39 9W @PU"ZUB7M/&GB18; F@^,C9PC#8\&2R#Q7 M<*-<^H7Q^RT]8JC!)@T77;I;XXZ(#BUEQUO?70(/=>,FUS5]T66DHXJQ MC3;>?.G3;WG.VZAYEQO7.BW+H9M%-^G:Y32.&K\C(V-_Z\T894.<#MJM6W'4 MV]P*]TENA\R39I#SJQ".),"LIZT3:2Z3M7R792(-N5(R;5,(\BEV-FR&J 2. MP[_CQ8M&30J8J/T1-SHTBSHI*.0L5\2!=U.@7%+J.P&OH!OX#X\IU/+=T=B% M7_IAPA^:8D0V^6 W*X28-4].S1Y>3**.*7#X',6QGWP*'/)K*T]I)A6+U.0<5*.%!>E'Q2+HAO7 M5\*(;C^\T-)+\P)NM#KAAJ!^*DP*2Y4HI)*EVBF].;F8%8GFL4RWTO8P:QX+ M,!5-P=?/,:7AW=YQU2NBAB9X04FE3X$_AW_'#35*:8=ZSH422C@KPGDM8EED MW#22 >SAQY1:F8*,"MG^&L6_)1>AJX2.EJ9X(:1+OP)*5.UP0TJGU.:A11JE M.<\5^XT[*UA,J'2#:O;@8S8]F[[@8$"YIR].4G%0HHFJ'5XH:=6LP)'&1KA! MI%UD\PC"^4DX@FT+9AI['&IM#U?FT<_8E>/8_W,4>,QW$G4ELH8V>'%$J5%Y M ?BP 6[\4(L[Z7;)W>T%*?BNR.7ER;PW;XTK+>MC+'CVZCU+^6^(@^50@S)( M]HO87SP6T_R >G)Q0%#ISTZH$'9?U'@T*V%67BH\2,20RSP,)U!;JJR<_Z@ M(ZK1J/!S%'G/?A 4USM/>2$E\;J]PD(=77!'O8Z^@@;*K+9&L%/:>+&/G\\<+U)TMAQ4WU<:^Z, M.W[[V:!CO&[HB3>F>\IO=HR6.)%?"UZ3+.%;GMN>3FE7N:F_B;(R^GJ;Y&,XK$, M/#%JT8ZMP>$,\*.3637-WLNM)BX%;RB'1BKN-JMBXS)@.>.AA:72B&PH\3BC MO!2P'[K13M18VV?QGJ$VEHV-VW*>=L&3)+8^U,58,P!/R]I5Y8PQ]"[S"G$^ M3?ACS-2[HFG_^91AKLL SHFMWC&#,\D2/[A.K;C9.6,E(I%E)$)(J=A5AB>HS-+WMOB1$;C3019@R:\#0UN.PRA"W-XG NE8V@+Q= MK-XS5#&/:H8M)X\@A@@BW>T,*G< MT.A30/CQ&) 0D*164U(2QF8)R18S?GK][/P]BOF;I"UE)?M16&P@JJRA&7"' MW1<96$HE)@J@S2OA#/-G>^W5KVRQ2661*V?77LVR/Y7%1DN;530CIHG$(J.F M59%I(F=5BQM@.Z8NYNCP.R++:NYBSA6!E6.1!$/\CCTQ+)CQ5PH5?,JG!W])Z#8+ M+OVM:J=G),G%8TJGO7IBC)+>HC&G6RM3&!2HYM:%".6CGT(( E)@!:7IS'9D MC6I/6K(+>?,,8"_)8H?%17MDJUOCCN<.+>L3A,:F>&.W2^#APSJG2TK"DX:I MQE@]C9HEP?+M77]0(I+B$1PN- M_FMS$$53V>%V'7OF"L&HD[=L79_0-LD#U M>HYF1]PE8OJK,;A&5Y0Z 2QXTT=*7">.7^&:FTBL@Y/4_"\;-A2!MR>/E*;$ M8P,>_"7:!/Z#V$V#5&D0R6/-XRA[>&3_=?*6,&SMQ:O7/*M:[@;_3D#-%=GG MBO+VM'S=FB9?P]26YV>SF FHFPIAA07(/HKYL6XNJ12/Y)V74?+LIX\^^W-( MR2N;%!/&,/\5- ^A@ XSP)Y??F6JNZ\N$]/?DB *'_[_I19ITODZ(7K%.ZR< M#H:$?0!RV",N4J=Q*XO Q4/T"HM@U/2G@Y$ J5RP(\:YDT##300+(65@##)Z:@Y@]X@4LC_SJC MI:.!Z+9ZY@$#(+6X) "2WO'W6G$J'IRE+G%^1.ZS8E+NL!-Q+P:)GL+$* M4','ML-*:T_"BGI@&0TJ4W6!PKD**:E) W(KO3^PT"^"%CM$CQ,3U#2X\R=Q M?D;.I_AU#-[\2J2[R4W28.,58-4HO0:&"69@>O@:R6,V^@A'^ !9=EPP$:@6 M.P!02P,$% @ MX &69$[1M'R2P G*,% !0 !B;&0M,C R-# V,S!? M<')E+GAM;.U]67/C.+KE^XV8_Z#)>9CNAZRTY+VBJV_(6Y:CG9;;=E7=GI<* MFH1D=%&DFXO2JE\_ !>)%(F-! B05MR9KK0-@#C?.=@_?/C;?[\OW=$*!"'T MO9\^C7\X^#0"GNT[T%O\]"F.YI_//OWWW__7?_WM?W_^_#\7CWU+$ MA16B++XW2LJ:_##._W"9E>9[/X[.OIQ\F1Q,CD;'/T[.?CP\'SU\RY-]0Q6; M0T8Z%WI__(C_YP5];83P>>&/[R'\Z=-K%+W]^.7+]^_??_A^^(,?+%#V@_&7 M__EV]V2_@J7U&7IA9'DV^#1"Z7\,DU_>^;85)<8I9']_"=R\@,,OFV\14^"? M/N?)/N-??1Y//A^.?W@/G4]9%?&?.3Z2)\=_A93T!2QI^DKYF0W&Y^?G7Y*_ M?OK[?XU&?PM\%SR"^2CYU8_1^@W\]"F$RS<7%Y7\[C4 \Y\^O;C.9VS^@Y/# M XSC_UQETLC_._6<:R^"T?K6F_O!,K'BIQ$N_I?'VU)-(O_M)8:N\X/M+[_@ M!%_XRDJ0<=GL2SMH3Q%2)Z['I>^%O@L=+-8+R\4&?GH%( IY@?&49!"L!RM M?WX%$;0M5Q[&G6+U M[\,IS-9V\@2,35CE!2D>8 O?27;P%X!5X(5^ 6]?A+ M( UQ;=D&0;?"UQO7_RZ/XD*)!L%\M;P%"&^]IU?4VEY]UT&C_/5_8M2)R@-. M^T8O3"&O@VOVP$!$V!!PMVIZ&1J@/((5\&+T']M?>+ 9+75E:(#RU?>=[V@E@*9M,Z3UX!9) MQ%O %[<)/=3"-("[\[W%,PB65^ E$D=3SJVA^C<6#'ZUW!A\ Q;^.>FRQ'$0 MBM$ Z DL\,>;K#*H96B DDZ6GJWW)NVDE%E#Y>]!E%;A 03)N"<.H:8('8+" M7TZV*O!,%DUCFXJ*4(XN2(_@+0[L5U3R0^ O FO9$%)-.3JF,7$(/1"&R+8O MT!-;M+%*T3.1"6+@W$'K!;IHY&XXD:F4H0%*,DHC@RYAE(P*:.!&$V4\OP)> MLQD:NT0CIIXRIZ"&346?K6:3-W))9DU+F^+C*%+S%+4ILKHR3)FN-L5$+ #T#?,1O(+.6+G^8!F([0;P.W79L<15J MBI%\$KZ,817 &\'^Y[3Y%O_X$[OI7EMFJ-;;YE MS';,]3O^)VC>;+E*-0;NU$;DM)E%P$\JT7 M0@<$SX&%[XQ,@P![/A)\BBK%)4AI)8@"?"ML7MZAOV6H\'?DW#@H& Z\1\!S M@+/Y+8SP5\[/CU'5#LX/1I]'>6'%?UJ>,TI+'C5S-\) $537MTO5B(J9!N9Y68.=%HW]61%*V?Y;BRUOB MP/O9?D7RR7// W]9:Z'L:SYGI?T -82?/J%_Q2&JB_^&:XW=A+NP-)KW01^) MWKFR(IK)2^EZ9WMV[3,2)EI(0+T@Z@[Q%]%DQ0_J&B$I:>^HX *0L7'8*1MI M_WP#77 ?+U] 4,/";I+>6)^KXIG5CS18_1$L(*ZY%]U;R[I^J"Y9SZS/4?F, M@6,-#.!M@ UR,1@R;662^R<%JPO?8=,"#57S_@1QY+1=:*!KF?K_=9!>.$< MIE>5&7T6(7W/*!)!D9%SJH&,@TX79?]"2!(R)Q-2D[1DIO @R0L[T$7*) M_CD+GOWO'HN.;VY*Y]3H&/)?!D'&&"Z[8B5@FP7A\0)3GWRWE B#"*G1L>"^=:+ 8!5^#* MBJRLUI1=I[KD/:-& $1.C8ZE,]XS#B[1PF7A!VOJEO@F5<^(8-<]M[^.]?+3 MTG+=W.>!:/]2JC*&0].W+-AUSP_G="R*KY<@6*">\VO@?X]>L<.4Y9';06WJ MGO'!CR'GI=MU<:::5^"Z+#J*B7K& K/JN?&[72EGTXJM9VCB8Q?.X@A''L43 MN5<=+Z>^]H8!=Z]S:.DZR+U'% LN] M]1SP_@] [IIVTO7&^ORUSUGH=KF=S:-O8&A;[K^ %9!]FTA)>\.%$("D"%2_YR+;M?:Y1JF/G%\;!32EO$<]84/%H*.J?S^:79W>S5]OKX:74SOIO>7UZ.GGZ^OGY\^=> /K?"EZ2\./R\ ML*RWS)W?C<+\-UM-9K_X?5/]V?P&>L@.$+4@/W7;)'B*\V5IWIB:P$CC'! J M7)_(E 8EP@!N8P)HB/[F"-XPMVRC^/NXU"0Z#^%6ZG3Z-(*@C5:?R>7RPEJ MX,IKICIXB*Z*I#G@88DF"[49/@(;("N\N/CF<_TQ$T^6(4E$&"?QJHP,99QU MK8Q;;X6 ^L$:H28HH9BD;)%C9)'CWC+/Q$6\AM/+/N A &\6=+)[_7F4K)(! M"0+@R#DD732%2[P_U$NY\ ACL!+@)KNZN2M(MA]9KGZRL_>ZO,4=0(OM1[AX M10NO7\(T4AZ!?&H>,\4@J )QA$KG!AI&#!]9(%H_N%8:&R /-8;^G:[*09UE MIG-4?S2MBIQ"%'.Z1+[8OU9"BY0&7!4?W@0^M1D)J73HG'7 M(L_#AA*DF/]Y$(*A@AG6] 7I'T;@#JZ LQOXE;S2H6<:A 0:0)0TU5F!X,4W M01J%Z?R][]G4&6YMVD$(@1\9\9IW+SN&%#)U03,(?BE0B%?#>[EV*<0(0[.7 MQ"FM]/@HXX2$-[LIHFAZ,M8*IX)UC3:1\!VM=*+];$203_(!"0?,88FA&(6_5V.+XKV3Y9OKKP%X!,F>2-5<.]0W+V@PRI!L@F&=MI7WCG,3K.G]"#W3 M8(33 N[@-JDVF[2<$J%E&9Q A,'*.I4S8VN:.0B1$PY."F*#2.N]*D.V-@IS M+N9697UB@X4@9;7*#WI89[-769TW+]04#$L^X&#D&KA8FJ ?UJPTFZ[?>F$< MX)&5V:F0,PQ<*X+ AS4O)4S,V:=EK'QEVYUJ"XVB2#3-\"N=M)JQIF$JAY%K MX+II@E[IJ6SG2YWD-+HX'',=S-=F&+A6!('+.NLUHW,IX&8OA0W Z$01. MCLW>2YT\Y)5.S$"[-EN3TC1E"%)9U0(OQF$=\1<"F5'O3>\D*UOF3+L+4&OV MN0!*VD E^0&?=$W^F$!XLZ-QZE]8;1!/@0@,A[90R,PY.* TA#VNO]!&_2^P!Y]H*/#3-#DL7 MJ^;0AJ1I)SOCX 33$/*P-D@+H).]'!SD-@"OP OA"J1'4W=^B ^D9O-GZYU\ M,"-2RN"D) /_L+90JR;E7N\.3AV<$#_619B&%V &)XY&@#O93=40VO$AL?Y <\5Y/.:/\SCZ2^DS?_VTC_NH=(;ANOYW3/&-'USY\4LTC]UJF"O& MY1:1,LHMYOP(U:A7=^/:@^U]4,GR_A]JKK,@L::3+/T?0) $^N?:("5E[KM* M6J#L_?W),O;TT8=I'+VB >S/[0A!E<5NIF')@0N= F="_3*X#<-82 )IAB'2 M3T&F8--+/_7D9V\XG"LL^<#K?>3S&&?2)'S^T^DZ?M.O1@P%5YT'6X>;WX9SN;9=1?T5X&-XPG]@:"G9_2?;]?W MST^CV M+^,P0M4+KM]M-\8=%HX=A_Z?0SY^;E"2*H5U35LX MZ^W8%02X+G[!''AH@'9Q3&]G"3V(+1+!%MB"YAW!E[B'M+8#U?O=VD-\/4^YW76P]]&X11 M!K9H!0+YE!RFT-Z.TZHV1"&WG;*;=J\A<9(E&I,T%E S#54J#5 /*[:4J$PX M;35&MCH:A$+$ "M83F@4QW9"E6^+0"]&=MAN!EZ N1^ 39 M$%Z_(^,B*T#/ M"M:W:!Q/@E;@#14_F9'G?3-QM%+VQ:$*M&N3R5H?U4J\\[%R8Y7,^!=HQ4C> M"R&D-D5: O-G$21M3ZQKYT<=#W,@8JZ&2VEZ2"F[_@HN-G1+8WZ9,'>O82Q\ M27;^WJ9OK!":'/2G*0UA>-&!++Y)V-4&K7C4+<.KJ ;1T1G M(T+J@6N!AE+I:E6[&AX!FK7:T,T>-!4;#>HSFZ*5%F.# #!9'BHZAXK? '[S M%CA35 EK >[CY0L(9O.*:Q9M"!$JPQ2)2."_*J;VEAA6V"B"/;(^E]<=4K"4 MLETGVK=;NU"8D"TZV83MWLNN)K*%@+O=H8B[W>7LV\/C]<_7]T^WOUZ/;N_1 MS]>F.MX5O#53HR2A+BNF8L9^%"RE5UL4^CN)ABQQ;F%,Y)S5,0+3Z0F&S0AH M@WI=Z..7++#S,;@"Z7\9:F]?\ #UI<@H1KV#J$R2-WZ 1FXO#8U@KY\#RPN1 M1; /"?YR4WD\-6"'C;H-( A&K^OX@#];VI51J"K#KYLFJ@5*9)?^JIM.[0. MN\:$#%532M\O7'][R+798Z$YN_3IY]'-W>SWXR] M+E,0T\8:[,A*-4D[GX?C.CP$_@HBIB[6OX3X;:B-E^D4=8ZK]''"FK-VEBNF ME,)-Z39X&-Z9WJM"W_MK-^D=!?T_:,GDG%ISZT4#LSZ+ <4J\ JK:=;BRC?[L@6XI,EWX0P3^3 MWQ,DS).U;,%#[6AX*%FR)62=Z',M#W/@PTFIQFX\W4_D\, X"LA*!'ZP?7\B*T L+/Y;Y1 M!EO^ DR13P>RJ#D1:F473$SV%^*K@P)%[*77 MQE!R]]B>:R=YG6^T(=O; #A)[+PGRP6S.?J-$V/# ^JF&COCQU9;,_,H>#55 MH\L.O\5;3]@^M-A:FDEI1$M35A ;MR85*PC!PLLL'",6CON\@I"!OO?/13^" MMVR",9O?^=X"C>_+*_!"$A(IN2G2Z(#RJKZ$C#*TJ/7Y_/01N,G\T'^VWO$+ M7*^^B\, W?B!D*=^T^(^M "E&DWQF;P./]GME!:__SA+$(77[R"P84A>H;+R M?6S)-;*.TG5"]\K*FAUJ7V@(B /[%36P)!I8_LXLHY,C9_S8VFIFGK;K >,Z MKM0,R JI31=9W I$0)#%ODC/E=N6GH_4J]4,K ML:699-TX,.,A$&P)_/_Q #K M=S3RH(;^B-K7]7P.;-+;T7HK8TIC$-V6,-3@5[6?? M'+IJ#C1UM]W[>TN H[EF$/5\4.E(X^.]R+L2^5C:2B)5^;57W=;I_$)U_M:R MC>!O73,\9[/?D+Q$RA/6GKL04WIJT16M!)0*[@)U[%" 7XF9S7\)4W^QV4MD M00_O3^6M]<;?WE2YP^UYLW%*\CEH7J(I0I(HD!KW \GV&58LUNPN7W(IV(%1 MC$A' P@.F^]5GTX^!/XBL):H MQ<$0D-\48.0JV^UTF")J8@-):P?69I2&]P:2#AJUHL0JV%\'R1M/,K>C(<<+ M!,="+Q#\/+W_>OTTNKT?/?T\?;S^>79W=?WX]']'U__\Y?;Y7Y_,?Y8@<0$H MV8K]/@$M3\<]1UZI9TI$AG(B4_H%(0Y*;9X-AS+KT+;TV50[18A=YWP/-]SI M.R0MWZEY3"%2@!<*F=P(3>2VX$WT#>"G+$D3P-UTQG+(34?-Q(X+9.\?ZWC& M^T=QL$Z IIBIW!/3#U$#8F![?W5ZZC@PK3->L=QZV=J&J@=JGB%J0ASP "[$ MI-LG^=O)5$'4)QZB$@20]MZ99FK;\3).KE*0GE^D=Q.\^<+JC_[,>2JQ8I*[U!W M'O8FH>$V#&/@7,4!]!:I)1+X6]>[)-44,_,U('>8CG38O<5)B]2 K>U*+$LL7/#7QA1/*$ M48J!VC[=9EH("=J((!*[2;BOI&VXSM4G7#BSG=\#Y3=HLLW?(WR^'Y(6'D%$;0QUB++#/?O8VGN MWZ._E&KQUR&Y@POFU>:/BAB8!4DETZ$9C=*)6-@>JJ2LJ M8>J6( XE;90R"AN,B"3"U^T&R]Y@2E')VF$2*ZWWBE&!O_<>LJD-\"$7FORU MVS!J4E3O124=?.\=;JD=LH1]'TI!)8.>'VC?!57!/Y,Z;M>< M6+">4ZS_;)[=VK;<[7*4%;5%1ME(9L?G)\?GX[/3@]/3R?'!2>>AR/(GTZY M: ?P+4-0HYMG))4+EQRX7;P@T_H7=916NR1)UE*U=E/8)66/Q^->&!G8+H2\ MYNB1)M4>:5O>J%"@D?U1%3JADZ$E['CZ 1<>G$,;/^59J12K2^#+;$HWP&:G M-*=HCJV'C?81K("'/4\V3G@"C?:PVFBS\D;E HULM%E5\6,N.$ ]U@->C5S& M8>0O0<"8)G#G[OHF)[5:K(;-F]V4IMV0R_(ESQ:0E5[>4'9>LVVQ7WW?^0Y= M%TU1DN/,6U2>MX OKM#@?53M!_*"1Y;GC)*B1^6RC>P2"N;8UC9] K8PSZGO M& 3S=MLM<%6.U3F(%5)N+V/47DZT=!&-."UV$!)@]W!B4/W&@D%RFOLM M.71)MQT$VMQ)MJ%R@D>TSJ^HC>/.#)!PJ(?0D M,5G'>UL[]>"?XG+D-*6-LC@I[6DUA-7#5IKZX#Y;[T(KV+-J\TP+&N4E&=DN M-V"9,U=JRLY#CNQ6A=4L:5E,:8\<7.R$#A&#U,.VN(ELL.O,R=$BSZLM$A67 MMTI4X"@OT,RY$3FB4Y6<<1O';JP6J0Q/1EZ4Z0=,^TM$:6_4N1NH3 M]+ =TMW3V(UQ?% S>\5E?DX*'>V4:F2#W%8^>52]$)0BN9*(O1K#;=B*_#5V MTCY0R\*Z;=SXFBG2"/;5AU\1DNC9]'CGEFH"_]ZF"^S::V6A[$Z5\H&*'O8 MG*>V'<2H7MDS=4+ND^,:3ZRLO%&Y0".;,IH#X3B]X=1SDEI;+JLE4W.T'T"K M7+#;)G>^LF /M6U8"5@_'UF;X^MA@\SC.RQA&KP&V0<[B$%O 3PQ[^9QC8-4 MZA-5*#[QE-K]@)'-E6(3YCZT8-[NKZ,S*\<:F\4*,:4S:,3I[B7UEK![V$=4 M/<0%[SZ<(Q$>3#BN/HS^DO_+V/ 4/;P%D=W+V:G0.OU?YBR<*[,I+5SL%D0+ M;+T/.W$/OA=P![Z'_FFG#E0B\A MII]"D8)2542)3B_.)&^-Z;# MU4.-W? U 30?SE?,:RX%-2BI;-\C9-_SONI)%GK%KV;HO9TE.M@<50<;^A4M MX\>=P=[5>K)?@1.[8#;/J\GT6B7G,*5?:'T+2Q2C[E5(_<'L!D0>3>L&HFD> MN(,KX"2F<&,OZI1S6+ M*8V9CY'ZR08G*MVS#8G4?[.B.$C.=F?S2@OFEP-?,4.02 ND2I:H$J:I\7)I M!>O9_!]@C='@".ZH+C":+@*P?5>9.A45+*)_0I"&4G=L7-9*965!-]MU^04- MU\$C6/GN"@=LM6SVGE:[PGHJ"[EX=8>Z90@$:7\3-O'27P'TSR@4T 1'_K)9 MCI%93GLE@Z80>QB8MC:8A>CL_Z0Z^R=$M#!^&2 0VH(OBZ80%P6?O\S^SLQ[ M!'8;>UWX ./;>\_B"&QENULC/%+9:/2Z@FZ,GX 5VTT2*LV4]BX2@T FU %M M1DZ]"#H8.%RA.8"=[;-=O]MNC!I^ZEVR?(OS\/VB82SD?ZA,R,G1Y$#/0SW- MM*?4"CUT\JP/G"$X%HT/:J:>A.@9QH]''SB,1F%*5BN+:1#@5TZ3.J*9V6Z$ MA^11O81=]NRV7?FF]$'R0VNH-1%EW,R7NA,96Z>_@A!/Y"]1D2" UO0=[KY9 M24AE"K'=T%'>3.4U!P>)HI[!/"1>^4L+[K[X1TQG"I$BAJ7208'%0FI(DRV3/!M_ \@4$9&I(.0PFB6+N6IJ$("H@K/W5PJ2K0!^HZ2QKTQ21 MC0\0LLG!A^@J^8U!F8YKNT+1W#9;O)[SX%K>O;4$M7VRRD^5[7RJ/> *6P0U M4ZRN[$+L9KI^,*GT]'7M8$%-:QKIG1%8U0Z_?0PAGVDKDJGNH =N([ D/C;? MNF#C9-7Q *;(@@J^MT&P#I).6NOVS]H5^ M./$I-%L_Q]VB$7DV)$_'Q4+'OTE*]K89CX+%I:7Q>^X1),MWX5.*E?/*2*9S3=W_I[0 M;P#-$TYJV4AVQ^=G!R<'I^>GQ\?(4,>=;QW>Q_CH!\<"Q+<6<*/(;BJ0#DS( M&4SK+=115.UJ!*W2PZZE&D:U'$Y2N)^I>0FC+JIJDJ3P'?.[G0\79Y6 A);% MM+Y"4515T<;?=)^TGMXPB K4HI^VM*(??B_UBN1 M;]:__2!?,I,6D]5$IO'300@=A Y:+K&GJZ0QR?QBEBSW='S C!RI\*N:(,!G".EK!3'NLRD< M4M,/A4]QD&8^T\#H0A\"WXGM:!8\@6 %[;JKKZ1D)2.,#_J^B*)*7?9 MQD<=WHW(JDS>0R6F-85$(09JB>/$IG;E%KOY*>W41O4(D1X >?^,GL% :CAM M7%G+B:(T0IZFZ: MH7#'!XRXN&MO_:GK)H[E.0@B!?4)A\*# #K=4?E5^5[<,:ZVL[*9(@6)YP>- M("N]8''4M5@8GBQIB$@:ZT M3GT DSZX@>O?A,_U+WWL=N_QI^6>07X(2 V%64I4%OU8^R- +;SZ.(!UY@8F M0-J%Y>*@<4^O $1W^ O8V&3_ E)RTXCD8*-*H1 X!=$HE9!)=2H@9S"-4"%N M^*BE %5Z7F,#N$IN)=T#\N%T7;(^<$(QZN[1#2= W=M2[2-<5NZ245TW2S%Q>FYS-/Z'_#.03.; 6"9[@DO:'8JJRRC2='R$+&::QM=R7/ M,$JC@>HZ&WT$>%L#>HM: ]'%1L]KFKCD"8$HL@8&&62/1K<#CE&*8YD^XPNP MB]D\-3XR=OHWU_)::X_S$WN)2K3;X&9WR+QQ@CP?EOQ@N[/_B(_A/6M!.@SF MSO^1--C.*$K'WPZ"OW[U?><[=/']C\27XQ:5YRT@/B;*_R3L/7)4#1R5ES6R M/"=S&BE\J9C >%^2@L6V$)()85B(Y%D_,1;,JRMN95Y-OC=62ZE-Z3D:L50? MFY*-ST1'$[71+ P8$T0(HAR/<4,U)"Y1N]@5)O F;/D:]I@ >Q6[P@16F!8M MNY.( =/M4])1[(KQ8>]X% /6>Z^0?*A@.854TAG'TL5SYQ.B<@1@ MZ"U^\2!G$.4\L6DBX*.Q2K\ NDYN1'3>_&^7;Q8,$@\;/V3U >7$0]& #JE M_4#G/D$Y\*\!F_HDS= 8)X.2M)GU!A"[#IKG!U&%[G-==#\DE;KU[ !8(;@" MZ7\9_-=G&IH@!% J?:#M1)_&UG)MX=]I-JHC-_QHU'CR>'D_/#\^.#\]'3<^7;4 M;B7O0;0)4['!0HD>$$?6V B1FF[%\N8%'>^ M!4,Q"S*ZN,!0IH\M)I(!9#DJULZX3TV3*&N$S^@[%%_FNJ0FDL9#195$;G0<+'9^;+9;>:HO>(1>; MAQ-N-O.D@V63"K#W#LY/P$;COX.M1(UZ6$DW"+[%T'5R=[/=F]7_B>$;GALD M\B4_45V3;!!\"H'K_S,2I>G@'>OUB/K4IO'>?(XK E"IBW+GF^)EY+<>JA8( MHTY:YO4B>[)9848RKT>!,L^*O7#G3S#\U\N).?Q?X?;^IGDIN/9L>;+#(- M/-XTCQ.*89L<;[(;V(".-P?$)A7@_GBSUWR+H?M QYL]Y5,(W/YXL[J\5,%;#]$QF\TEGA;Z+Q(EU6'<(BP;(X$,0/H(W:YW$ M>)W-'P+HV?#-#5O:6^R]@D8;SML6:IK(&.J&+39I1/JP<;[U[ M\!X]?P?N"GSSO>B5MO/2N,RRS4\_G! Y+:+4G>?,:!7BEOG\W99H MAC#J :W:59( U.DC9W]G?",>4/!D,YLKALG+D^?&<'4?)IOEH'-F MF 9$^EYN= :=7$CUR=%/'C<%S7QRSF1VMJ:<^YO'&L7TPN?^+,JT/K8&7&N- MJAY8W_%J[LZWO!L+QS>*UC,/D-]=X\@V"(I;@=7MUB/*^/-WOPGCFVP?@7$Z M6 6[UMUVZ(]@Y;LKZ"W2V6..FMJY4_,,0A/-D?;>.ZB,E#*QKB8TC?KFTVI. M;)36GV]I'.KECSJ_KDMJ&H><3+ H5#ZSKAUZ+ZP0X* '%WX0^-]1-T+VK20E M-9L/[@%6")Z1$^#IGA*W[D]_M0*(1PZ,F#(:[B8SC>OF M8R$7,LJT1]M(6*PX=1RL)BQC/#^::'X>CHL#.G448 I'P!N BK;7 M!TCWRR]@=G*Q!X0BI;9,[ M?S6%%+9I:VAHTN.JM_TWZ,%EO"1:O_1WX^Q/J5:9 38,,T<]%GO6.YV]XM][ MS!X3AID#D=[[D'TG<0:E[0QQ,. M!WY)I_>R=*,P7OGU? [L"*Y BY#E-64,0U7RH"N]@=9Y?-JR/38A*9$]N+13 MS#!DH3!Q*GUR47,X^PLKA.$3 F(Y,Z^X$3KFT@@Y^Y 5(XA:Z2I+]%$-@H]A M$=XCKA7P[ 12WCI0SPE]IV8^PYUW&(IH#SF3PZD1\<0D=R>/P '+!-!# &W1 MV0HQ]S"D(P-T)IXS(\8BCKZD. O;0KMQ?;_N%)D[[S $T1YR)H=S(_H2DAQ@ M\3+CVYL+;3Q>?K."!?2P8QD:1)^3"_D K<00W$?,7+TZ&A55MMP8L=!CLW>>(&=UG\Y51_IF!A/2A)T;R.3DX/CDX&9^>GI]-3LH/,7VY,4R.)D?'VAL[M\WY3I3).$T,+R,S3(4!?(H14D,H+T9)K@"N":%) MVD:X,(%W7M[8E%, ]IETM;>H#90 A<>J",21]M(C5-RYW01B&_;I;%"2G'+D MM6T_( MW$G P"<;>!9:+!&&L-ITIK I8SCC!\@1]Z.3VUMY17_QPC=@PSD$3NUR@YK6 M% K%*-BA3@B?R$\]R*W0T*\HMJE.1&\2)DW_*9HS!&,\= K1>* M>MRS-H$YK(<'19&Q2Y!$Z\7R;P$+(9?4FM2\^G'>NI?)MF%D< MA9'E.:R'05C9!J:9)FC;SMW/4YUX8(&F,([^0^.ZAG,9!]CR;7H=4A$#4U!; MY$I?L^K^X;0:<_SB(61.;H1+?[F$4>(C!-A>NXW+&[[*FIM!Z:2I^T/Q@@O$ M+'H%P?8@.11XZ):4=6!":HI8ZP(>^O*]'R$C>L[U?V+XEC[.@W[1P&GOF.FTEWYPE'Q@A!8XH\TW ML]\-PX6/X$:F^:9:FW?Y)D=(_7JV\\C&9+5M,@P37>]DO:$8=KRK%H(HNYS+2X^ M#R?4Y-L$!0*@3-SG.S.*U(_Q^(CHQBT ?M#ZB-/C((= MZH3 *5PN7KYB%^M;[]+W(H27Z1!)36\4,T(6+O>]A5 MTN%P/(YE\&,?&DEAF[:&!@J$?MYP,L#^E&J5&6##T,E!\WM*O>* "<.0;0QB M[)\D]B7WF4U=1E/8DWV&PXVULP>FI/$M<+Y3G]5LSKF9$Y4 !;PAVUWT^C]_ MKU\.".;N%_L4TD3YIUN@SU$U&+C15^IGL\+Y/ZYVP+H:#-/7<^#']+5+> M[!]6.PP32+H!8:)TX*I-O[/-7K;;";+;T0>1#MT$DFXR-)$.U^L&93!/\)VX MGTLV$KC0 5L!KJH)MWH^I P9^2:^?&#"0W,F(!&":*IKO9= ! M[I\6E18#P#3)T(FORJ8U\OW3HL(O:_95,[(-L']:5/!IS8\@' [\^Z=%6?,; MH?=#W3XMR/;EY:IBS73NA,''NGQ9M_;3HL!0CB-JHIT7[>Z5_6!H2 MQJWT15(%CTKN/#-5:C//Z#]A'*P?JV-1\X*&H1;)^)4^12KK[DC;$ M(!OU%*FZ(T1USQKW53HR0)OU%JDI[QKW51'M(:M]BG28#QN?&>:[(J@6>190 M^WQHYZOJNEU- Z)W]E5N:LS0S9NE_7Y,N^^*$4*9"T+-AN_^,>VZYZ.')3!) MULB%:$:06*F!A4D#7"')L 3"1):3W79#F'1NJ3MH8_.WT_M./2>^7 !J]G*E MA(0N([GT/30!2^JX[?#PO8;PU7>=8J]=2 MHPKKI[SM<,>-D<*YMEU;Z8&&#>"3EP\VE=#B/0\$ZZ$JC#@Z/) M9&P4:US=KA@ZC8')Y 6;-8&JAAVF&,#AAIS52*$8!3O4"8%3..VDO3=?,_7D M?I[^\/1HMD \E%6%#2(J88.3]G^ZNH@Y#5I*, MH'3ZV\'KTC<6#'ZUW!A\2ZY2)LMR\:>D3P[&NTX>N.!14O*H6+3Y7AX;B["G M_O2DW?8&F[I,PQ!$^'GP.VB]X*4?Q'N2"0/.S'O$+Z(%T%N@!/>^%^0_)O=J M:6X@TLHWI2_AX;G84:@U@/F^",T]2@P8,-22)^R!(L"ZY@@ITOG* MM:OJ8IN@NLIPYC:6?4'.^-CG-8!I"KA8;_[Y,P0!,N?K&F]PNWQC!"6SL?QW M/TR(6JDSUYZV?485F/"802S#6/V(\\G9A0A9PK2.Y-9[BZ,PL<.8;_BHYC"6 M\L8L49CGA&\:SRUZSSN&^Y+4;QBKI:Z''V7&))XM:>V!_AE;7@0QM2OTF[D? M+%.6Z=Y18H64S'%TH#W&G'JNF?U8$XLI]9PQZ'T M>?=)NFON1:DG7QW(B[- M<;TW]N92TB;U!Y0-';M2/RW-$>/^I<.]")ZEW,E4G7)*L M3V@*A;+IV1(OB%WC===J+8E7)DE)RY#&6F],"AB=Q18%G"$[8;,W$%A8IIDR MZ??*":G-9H]"0K6;%4&H\M(K?J/02S#@#9!'8/L>OEJ(NA,,B7S[E2?? .AJ MAY6X4NJV[26[ &&JLP(8:@NDYC&%V';L5!NE.&A#>M=+/T"S "L"][Z7=2A4 M=HGI36%60@\KAI&X0NUXN9)'4;B(0^B!,,R'!XIC 36/*82JF[\V-X.)KF59 MI:D. :4TQA$L3$,-E4R "J=$>&/+<2 *63C"H91 M %]B'C:(:?O.AA@P0V:=E/[]CN'2P)/5.$[5#6Q-K:%TU[WSD?$1K( 7@QMD M=30S3/8O?X/1ZV4<1OX2!-?OMAOCF.WX-!_]/^?9>B?(JT%)QJFMJ2:J\I)E MC6'Y)6SV9VX]&YGAS@])G55-RK)])MI? )&H%EZTD@Z)2>_!G&K3P_7[&_!0 M2V"I(4_W$;1 Q:IT%.K\(NV][_GE)I"!)^B!F'[ NA##+"G8!JFGZ-SI:-LQ MYD,J]&)DB:RU^%YX 9!I09H.C:8@O'Y'PRZR _2L8)U8&IG0QH.Q[R8[F9D; M%W&O5MD7!ZS2KJV6Z;SU0/J A\R\PR0[.:X,PVT?0N/]1BB0H>W0J69[^*V <_]+A@E!Q+(R>3\^.QH?')Z/#D8'YQV/F>]GL^!G7I\ M9M7$_N!U(QX!'G\!Y>9PJ-U=2I28:E??$KN"71$)\4U>D>&2M^T?K'42.2<( M+&^1'-MD4W6$LWYA(YQ_.)*0 UV!^[SJT> >1*G5'D"0&.#28(?5X= M'E#Y^1"!OC!*/H%^7?B*^8/&M15XJ#L(XR9["/-F&1YL 3@5>:!S\H<$SV1#QN!M:)@Y_]Q IP!=+-\-G\$6"'9!L;)O+M/Z;?K<"IV\V05[AI*E,AEO+4 M5+'ME+IK2EEP-C) GOV5G>:):7,O0[EF$QI$*'.EU^$J0J)![%I'JF4CR5% MF4:2-2K7NF)U[IJ\>QY"6TG4IC5-2(UG-0=.%62I!ZL# M&CY);IDL)71Y.C_U(I@/R-F0C8?CZ__$<&6YH,E;@.<'$\Y#>_SQST[V]9&= M?'X4XN^/P+8"@SG/9R5'FCL^/ST['Y^<'1X?GIZ>'70>X7![,Q%SDU/SA./8 M)J%NTQM>P$G=H)=O<2K'V7P7$U]T-!D?*;?4X_1)>XT]D1"[-;O3ZHUCXE.# M+<%>K.L+H(3"4/A%TR39@::J0N[:OOU1-?-)158VT_35-=6\8F-8S)" 3#O[ M<-1@3+5I^R$'!AE53OFQ&D+D]?+-]=< %#:TJ&02TP^44#&\JGR?37#,U$]I MIU,"$9MPN#C)=%&3X=BICTT1PU+I:#)*]L.QTRARN+K+)O &Y]@Y!-H$<)H8 M7K#EP'#'\"Z45;PINNGS8IMNS&'%!FMI*NIK+U+*+G-P@C@X,7#V+TE;TJ5, ML:%B=]'S#MZ6V=PHQ38 7IB4EMT@%3VH&1_4/#.#/_ Y^<*H^ GTI^PKYI_& M; '-YD4,C\#%KYI=^F$4)CA?"E=S0\*93=O"=!W?;-;:Z=2Q7CA3-ZE&THYP M,/2%!_],GGV#?HJ,[Q1'XK=,Z?OD:*C^7$>UN4S<"']P+0_O%U'.8XI)3)%! M]^15A<.TB\E\4X\YRHE,XYQI=S)5%$ *PU_?^=X"!QRZ]?"KG6CVA*M#7))3 M4IO*!,6LY66X*#:-[U0]XH @A%?&-G\SC1 =W2';()WMH?!06MON=OYJ"JUL MT];08&9S^F:]PV6\)%J_]'?C[$^I5ID!-@S3CD1;]0^LK43)7S%%%R;,/KLP M[;#V%PDFVH;^NEA7 X/ANU?E2ZO3.'I%$/XD.F9+_TZ9F].CR>1 KR-E!]*K M6:=W8E:E-^JZ]QJ69+.5!5W<-]WXP5>4E[3+KNIS^P;0N7657NWKO!UD7&17 MRTC[]*2S(Z[,>XVVM)7YM^PU1ES]:'J28ZZV%P3/4TEY8($EK2.$-\',.)8Q MJD*#@\7*#3#*P6+^F0]VLBBG4!R&^ #?4#PX.1J/S\?G!YW?)RV\9L>:.H2D MN0/?06/+\DWKZQ0P3SMW5&$]$\^>TBJC#] N?Q73F*8+M935S*:8QC"1YN:V MV>+U'*Z#2A6?,DUT;!$T6"K*LHLAN]F2;VKI)[TS JO:X;>/PB/SVA!8R6X% M<&[ 2Q!;P1IE&A-/T<4**,,[T_XR+#\'Y263!-2ZWSHQ];*??E%H[!/$;#3D M"X(&R*"C2:B(.3H.?R[C;J ^(D4,2Z6# DOAT*PX!+U1O% L7,N,$$2%'#4^ M*D+_]N.(Y/LFLVA36-?1K2JUH8*7#91IC-B!RRO<%)TIYUV^Q/2,+S)J/O/( MHY'4\H>F+NX!3[T5#9?8\W=?J<0VY>\EILR*2K?5&E2BS M>F[^\6VITWK_+G]ZU+:^OB(,.H"T)R5\9,\UQBS@+$V?4[ M"&R(LA.:C:YJ[)L/I?D814K;6T^<5U0,;4B(L#F J.*SX/K]#0::&A*Y&ON& MI*TA"9+2T5VO 4STS%](&>YG.:RY'A<=DA[82Y=2UUZU?0UH(;4QZ,XKI\FD M^@KU+C<6#'ZUW!@8L0TH4LO!#(<&[A.VYL&H%=D@VJ?!C7(P+;'#!F)FL]YO M74K>KC*O60O6;]^VS6[;,N@T:K#6OGTJVF2-JU^)X^,#Q/'QOLD:LI$DBTZE M :IZMU%K5I-M4+]]DS6WR@-Z;. M##J+HS"R/ =Z"X4[R=2/#:;-=;8A+&Y.HP*CFB1Z->>7I.\,1NKB"E0J?XIU M![D+BD/HW(9A#)RK.$#XTUVDQ%IA(;Y.N%FMD@0N7-!>P;YT\[7=QV.XG9SL MN^?F'4A/W4CZTC_38XWT>4[^PC;<"\%P_(L<1O3I[BM2IGA\-#GLZ;%3H[F\ M?E,KW:S2,\_OQ*C:&Y"1#4>_GG4V-%H#,VDY(?<8QXSS55G';ON&5&E()O&B MU(-!S]G*AQVN#%@IF=3,3.%DH,LK.>O2'9OFO=E# .WDV&O>U7$(9T6,'-QZ M=E32QM22S@]-6EZI-ZK>UC.8)B-7R=J:6%]651J?,-HY-"!Y"4MI9%(KL6]K MLMJ:>EJ,?D:')POF]>Q@QE&1_[]=:N-:>. U,C;-_$9+V;JO2; M@VE'7:^BQ*V:M883):/,<=]:0J%?N?6B 'HAM)5X1+.^-Y@6T%B82@<-#F,K MC=C9N^E793K[[$>6VTD;X?GTOKG(;RZ-[;Y?N-28$O';; MGS;!,+)1OOQ*G \*=M#A=2#R^7TSD.M9T-KV2CW@>K?V)INSBWTMSJ^7><2K MU\F';4,FF'Z IYPM'# *EBS/3L>T5J/D@_N&(M^_1M#:2C>T>M M<_W^!FSTSVOEF^NO 7@"P0J-W/7\;[P%$S.'R9Y*\>^7?AC=^]&_0/0(;'_AP3]1 M4OI1C/+O#J9EB1['Z+'LOE5PV7!;4III-Q))UZV%51_36I$><7?8R!H1(NG8 M!XV&+[X)^Q/*K)N>"=SX0?8KG(XT2>RV$ON&UG%#XV=A6->)E!FTZV94YNK\ M:#+6NT<^^!93:W!9QT:X OKG?8TGZ;3Y% P"HI2OTTB/KY$D,G!XBAGAZJF-L\9+%BU ,#VMN- MFJE2JXKLVY*);8G!CU(G-A-;565G,!NLM]N"LQ4(D-7F?K"T/!O(?R1=:L7V MK4Y3JY/)EU)WN?X\GK,-'A:&\3)CW7.^@>C5=WS77ZQ5;3#S?WDP[:VSS>26 MMLW:QOD -X[K++/QW?L&+-S#96.XY"%([,N#T7Q+*4H:3R08WZC]8+,&C$<8 M_G$3 .RF#I THT[9>[&_;T1+:WAZ#6]THWF_MQZJ[-A[EM^!5?0 M 9[35;.I^^Z^V732;+A-/^"KU+5V"2.XQ/OXFS_.YJE;4;+RJWB&=5^!?0-1 M/B%KQH&D36J2XW(>RNEO7XHDHY7<'\EO=W^9V:="<^2_O<2(S!]L?YE^<+NC MDECH$;S%@?UJX>NO_B*PEE<@LJ"[.;-,Q03>(]1K;)M#!"/\H?/S\Z/Q^& \ M^CS:%HM^2$H>;8L>966/_I*5_E=4T-+U0HIU\'?P-:E/W;J8)EM3K M .XFZ MG0MOJCWCJV&$VA+3EV4].9H<:O;;KK5]<4P4@T)9.>6M M;"*%O#"("L2AG[:DH1]^KV]GTW>XZQA 3VP:76)D;,EL@-)L)J]\O*#GYC)- M;@J;#=C@H9("DDBFI+EAI2XXV3=0$PJ*)XOY/%%,73-I$H6J8/M)(<\3<9XG M'X=G&E1)^R5N XHE3=KJQJ/-R0=U)D?-:8HPV@Z[;2$KW5#K9O3&(*O#7(P6 MH$%R66GIQUZT>Z=2(*=I4FE*]EBA&4OHTS.\##SN<]-S1!ZU M$+)^$-F(H!]68#1&;]MLC!JN:IH 5QKY8:S^1/PB#I&5PO#27[Y +RDJ?(J7 M2RM8"Q^+3ZK'XGGQHV+Y^+@\_83YI^-U]F&')Z?GAP?' MZ/\Z[Q3L5^#$+IC-\XHF?6.87#\)+]:%GVAG[*+%E%O/$6H]1UJ[#6&6:OH+ M&2;H[*"W@>@+ &K.[AFI32-<"EM5$8B@[PO7Z5P)U)[R<^/!?%"_UN+\^81_88=NWO/\I@-3(,_Z+P'I!'0^1R=+?AT@@&Z""LXWVO'WS M@P"&%ZYE_T'DKI)FB/SQ@51PM-">0S0-7.(7!_#S@V$2<,#W^ M(7+='+B"XX#V_']%V+VG-\LF=[^[28;(*A=&!3OQ[0G' M<-JBG_SN-O[H)NB!.W&[@Y&");)8H?BTE24A=@&F"4J8>;)X&H)7ZF3<^3%U MC3$N46$*B^16+%+$QY"3&'RC@E2W%M17WW>^0]?-G3ZNX@#- MLFH#3?%D&:!@A.$.RQ^XIKU<@= .8 )+_'R_)O, 1=,"N.+0$2<&3)D?-FY# MT 93-_DN^G7>TC;/VUKO5V@Z:D<033531WS^.7;S;Y19.3F:3/0&56FA):ZI MN&1+#7["M0WL>NL@ZN X;\SII0QO6VNX6*[@9Z, )W<%54]([\PP_PN64K;.*;*.WI@^;8D5D@JW0>2,%^VC\,9AY"]! MD)Q.X][T%;[5NW!QY.@1\]P\5=D7-8 A3.?=)<4H+ [7ZU=Q:8YHV7EE=8D_/(SCH^ W Q6NTB:_U2PCFL7L'YZ2MN39% M?@"U2C=/)P$6%9X%3&T[B$&Q+0IO_Q]60WUDI8X*Q9J_W9\%',//LB3UMUS6 M;C\U1\=!H)=OKK\&(',7+1C^,@YP0R- 8.8SK5/@8*D4[[D1/B4#3==C2]($ M\=V@ #_*2Y1M\@S DX4P/P3^&PBB-<*^"4-%:MU">7M*_ 3@C;[M7(>"YBN#"K7E!/56!9,"R@K3ZD>46E=%BCR8I/@3V M#PM_]0783OJ%V_3.WG-@X; A<==>;=FCH^.CG?=E,.2_ M?4EEF?WN[_\?4$L#!!0 ( +> !EGY) PG,58" $8I(P 4 8FQD+3(P M,C0P-C,P>#$P<2YH=&WLO6ESXDBS-OS]_ J]OL]]IB>BY=;"ZI[I)UC$O@NQ M^(NBD H0VD +('[]6Q)@@PTVML$(T,1T-R"I5)7;E5F5E?7/_YNK"C:%ABGI MVK]_D??$7QC4!%V4M,&_?R785#[_U__[\S___'\XCDF=9*.$B;I@JU"S,,& MP((B-I.LX0/6U,=CH&%E:!B2HF!)0Q('UA M?R#A6*S_?N'RV)/4,8#CK03R@QHC[6)RB M[\EP*!1Y>3L+C:DD0*R@][!\&KTA+O;#_5X?CX 8C8=B)(7WJ'@/AR&R)X3H ML$B+8-G&T$*D0N32S ?;Q < C/^]&UK6^.'7KSXP>_>Z,?BUNN#U^6YUH7A-4P1!_W(O]Q#QUK?/ M36GK[AF]OI?\U2F76&$(58!+FFD!37A^"K4I6D\/;KXB_&MY<7VK-+=P$PI; M+T'?[P?Z])>DH>Y EZJ_+ -H9E\W5& A'J"&R#!.Q'":7+=C&M9K:J$?MR@E MS?<-G:0WWK:^W8#]O:2*_$)7-\D?%X_-?<%:YUJU 0=[\>7=AZ_?R5M&RUZ5Y]%I1/R EB_NZAO<=Y M"JND>4S+$"G =-UZ![@S1_<%N#QO*C)(I0\SZB&S(&$-PA M8[8F60U7%#GT@6<1!45@B+PY! 8T>4D?5<:Q<->6JQ29(T2M-Z!Z];OE*.?+ M!Q,F7^WS$9XF>)>]O)*/#]5B(I:3\7P6#.+Y>660'-QA(A0D%2B(E?E*Y@[3 M@(KZO#(Y#S4D\,CZ0I&U=$%FO;=7;T-$]WIS;#=-@)5U3-YJBI4PDP2QQQ MM'$Q_LA2;57A4K@0A5FK2>7ZB2^,EF/3O)V8LX5RJ)UB; C)QZY2X!;"# F] M^:!)"A)>PX:?X_+V0%.ZJDJ6B[AF0A-3J#TT/ 31$C2W!@G&"C_NCLP:DYI6 M&"*=8M2T,W/UX_1C.H"9GQL4G1E'04;5)H03:V;;84EN)L3Z]PSJHXS:EL@6 M4-QF-\:2Z,YM>O@XX#BGPD78YK#:JT\2/F70NX-Q\NEZN!:*$U*3:K)5/3J$ MF0W&5)"/:$C"5E?2MN%A!$_RY)*P37V#RM%IER_K[;PL.X-,JVT R#/&$Y41 M\CXP2$PL)X6DQ@!*7A/AO B=9;(NNB&<4,-CHY6)2K<_$1BK*.$5&F]4:[3K'S^[^ M])&I@]_9P92-&(RZ)YD"4+H0&(PFII'GO=%7*^24;;MOS;E(=CJL67D:/A*H MKSB.W.3O)6=Z%7<\=S>#?C$W.IMI9&)D*M<4N2R;*W))B<[6VZBS[@O.U],: M>H$NONPKV[.K$VV1)XE(D1#Z?+J>F;L 7*=>]?37MN?A*28RE=#\\X_KX#V8 MGN^&NHYY#M^#ZQ;]>V=*ZEAQ'3GOMZ'G*J- !%_'&_=S4W35]=>+)KVOIFX; MWC?/<7Y84BJ\_B:) M[O>^! W,&P7<&6:D\L5M'7[Y\)_U3]NMCSW*K[\AS\"P7/%VY8'&"1+]OW[N M^=I3-\7G6U>BOGUE_7W]DE];I'J3"KO$HK8%"P5#O.?'-. 8D7^(HKR: MH0\,H";FDLDCYNVY[#95AFH/&KRN33I*MCJB"+NB-8U<.FTX\_JIJ;\B(ARX M4K_\*J*7S<>*)$C6LFN8**&KWBS#'1KIP_Z1WOU!0]US_7FH__S:^9HG1CSU MYJ.B0>%$%*?"AXA&"".AQ?$8702A2ZDUA(:N4S! .JK/0HQ-/* MO#J[*E$('5\4EA&PM8.[ZRM?4/Q-0*%7%C/$KUPNU]&SH-M1!H6YR,W1U3&* M0ET/V>7Y^B[7<]8USRM;,1I$>I.)Q.I50JH-HFW.F->21=\Q>NU8OCG*NS^; M <+6,$^F[Z'#H0#=2A\7"D([78RO2D0G+0Z:3)H3F$AQ.)7FN(X"+#3K:*?O*JO2H29;,XIG&E,.#O9QS.E8IK/EQ.!1)S"73R2C7CI M$WQ,!)H&!*9M.!YUEH1:B4(40,%)-P2+B,B%.D[,"P-X\7"Q=[A^]PV^QN4& MM("D09$!AB9I W/%XJ249A;S1"?-38J<7J%5K53%+YW%N\=ZW?Q];<@KI7J! MS*2X&Q9 %EQ>'K[:EU-B1>-SV2K?HBX=JM\<\I5S6Q!LU5;YL!ARXAIS"O";H* M5YQ/M3(S6LQ')@1KBP(_F5(P6?#]OW^V* AU+JLW5.)K"[T M%=N8-F+12^?Z&?RQ3:_[7%S>XX]->BT91G(1R*7:CRE8X/3%0KYT%G^W/^8' M_K[VQQ9CO=@N-4M9+J6U'J,S3<1G\.3+'=?CC_F!JV_[8R4P?01%9:9R*6<8 M;0E6N%I+!_[8Y7+[8'_,J40RA-H6.PRPJVIK$BOTY]V+Y_SY_;'32,&LB6>H M:%?HR:FLHK?+XWJ8&IR<6V<=_,:R^[&\479(-*E4K#20'94>11*]KC$_/16O MS!M]D3)P-C;O<4C1Y#H?4 M-^P^V",UQ6BEV= YDF@G58$=V H:^J5;[G-[I$<6@_4\\?%\,ELT%BQLD54N M4C-J2I?N1.?]2T_G^'Z?["2K 4=RR9R$A<=TQN70(QD9UE+)2V?Q-[MD MON#O:X]L5LOJ4RD7FLFX&!^,H@M>>6Q=.EQ_GT?F"ZZ^[9#E*=7L/C9R$5D= M\C ^@_/JO'SI'#Z/0^8/;A_LC\E%(EVK.JV.G,IDJY5'757DBX^DS^^/G63% M]GC^&*R66&TTZ1)$.V,.1GB" T[GTL'Z#/[8*>:!C^2/%>;TO-ROYZL,VW*: M$ID#$U6Z=,7^;G_,#_Q][8_U0?N1:\MXB6F'VOVT@.N2*5XZ:[_1'_,#5]_V MQ[*YB-1I*LVA#*EV;Y9)U=GN)/#'+I?;!_MC?);C'J=XNT04S4>I*YB%F6E= M.C+[P!\[C11HXVI7CN: 1=@DG:X8W9Q-34[.K;,._FF.F#J:-SK#VP9R4$2' MB>0KXQF;S29&^4M?\?EN;Y0ZT5+ 1]F\QQV=R8^BT2+$%I%J6,5",B.J8';I M//Y6=]0O#'[MC[;%M"):<28MMQ]KDT(BU"2&_4OG[7?YHWYAZ]L.J0YB?9*8 MIWH$Z+7S859/6+':Q;LE9W!(?Z2G$H/GP"0Q X;8=,9PB^V,.E9T!T+/KE7'KO2OV)Q8Q*Q69YSF.;LUEH8= M(Z+H&=^R>6MTSVS=.[S+6G@/?9J+N7(7/F8E8AW_UQOVZ-?2\K;UER#H;A!C0M0Q*L57'*E63,&Z:: MFE>%,"=5##/7:_4Z50UO,>2Z,QTHV4;5K(JS3,)R.!*+7DPU.4] M':JB>)U975RU(57SI-VR(Q97#8]2M5"[8!=E/T69+VD/3SEF=IQ%[R M8FE[7C'CZP;N32XNW[J7C<=4&-,WE:$N1;O2DFO#>O9K[3(&_7:LEQ/B7'76 M3.1XH=(.YWWGG 7:Y;UU+QL#[3I8NVJ&+MJ"5356AXX\ZQ>0M*QM68C/1T2O M+#Y-ISHA)L94>ZER=MX0LLUL@%[KE^[BQDK#7K(CP*];UK#]"*;KBTPERC<8 M68J5LEVM!5*EK.\6:P(-"S#L]!J&S)>]-%X)34P( N* ;DCPF( V2'-.A#4R M<6;R*!B#2K$4P_U7R-:'ZO8V;P)T"W3O7:CK%KJ)4*K9CA"J,*TFH[.*72X% M4'<1NA?@W@EU+ZL TSVUJBUIHCX[)MR5BEP4MQ.@Q%%A(8&&.@X_%@.5>U_E M=K(D0+D+T;0]=BR+BY \F')J5(X .$VVG#E3/?T)88'6!5ZE#[1N MKU>94!0OEW)UPS'=R@8=KL;,F%@DBA'C<:B6DUTR'BC<^V[E;IX$"'?SNK8? MW*9B?M@LEHD14VW5\62X:G5JLV )SM>Z%N#:V[KF2CRC2*JD>1?<0+L!4=." MI"#Q\.[[3$9),=QP2G3<@PIP[+R20U_WR^H$5 M9')1"$]+CEKG(J9"T8*2QQ.10&)/LPXB2IU67/1;@L+ABIT&RQ5,?2N&HCRJ>>3 M CG^A%7>$V_.NGAD8LJ/2:*8R^1"\0R7B?IOKYH/1/AH4>.52N_!(5>M'1VK M3C?=9O",/?R!<23-4K.;HO1(#0K%^O=JS%IS_SH(( MXH7/\?L=5W\F !\+*_G2OG^9=\T^9C))Y(@4R*D=K+:2\.:V,CZ4A).YV=> MJ6Q\*G0V!J%NV*@E.YQCRI5YUR1)<^1+>0ABUZ_@PIZP,SF4[5:M5RLRU7%\ MT>O%TT5BZ,M-%4'O)!]W_L34+1BIIP&V3 O9^MT)S\@8@:;\*7$^2KC MZX:J*I"!=GTZY>0QL>B$XG4""73S5L/X)-E%(VCUN4(E=G=>,Q92>@ MD_+E1'6@80&&7ZX?0+4L^?JX ^4S2;C-W)C]-UX/1S3N!,7H3N!;AWD545C&FCU@S7&[+L*)9 MU^VQ(TF!R@55%:Y;T\Y656%18(NFTF4IQLF6ZJW$HZ1D&L%LO__W=P=:YWNM MV^]8EAYE76FPXP8Q&9!Z>\$T"R7%EXOZ@=8%7N7%[/1^H]AR(S\60HGXE)OP M[3HL9*+E>BB81?'U3N\ X?RL:V\<',!V:^F$T(XQQ49=)V>UT0*0@:[Y6M<" M7#M+585P+SNIQ4RNR$7T_**4DPTR>UG1URU55;A:>?W "G)ST9B"=B.58(K< M*)/MUXM6?!Q(K&]W2=V>S+ZS+A2AG5+2F==G,I2J]6JCS=)B_:)"[[,+\/EV M>EVM-']J)FK!)>I.LURNRX[.3)KSUK1M%0-;? $[4ZY6CC\:;_)2QGSLS3A5 MSD[2).SU%ND:#*RQOW?7^%%Z#PZYS"@7HDTY5Y?51,QB^YH\T[J^-)I!S//U MJ@K#+J[VC'!98W Z/2:U>BA5%>+1I!*+=X4)H8HQ>] IB=FN8/:8ZJ#:6=#4F#86%P8,MQ3WK>IIT)N"@[PO0_<"W#NA[IVNJD**&HV2Z9(Q8YP9'NMUB^%VT9_G"_A,Y6ZI MJL+U:=K9JBJ )!FMY$JY"D%E%\UF<\8ZX4XP7^+__=V!UOE>Z_8[EK4A.XBU M]/" @/$I#?EQCYA9 Z1T@G)]U;3^XQ6T13\TR4Y%3Z[/XXR12F&7BP0*!KW4MP+6W=>U$515P MHF?'(N-"FD@5 !0G\3!=FEX4+-U,585KEM8*2>%4^E^2]*: MA6!3^HG6@0.9/7Y5!3+6,.=UQ9@0DT>B0\5B!9#0?)E0[5L!/M-.KVN6YD_- M1#V6NU2STPQ/N*HD-75JE'+PZ44YVC=95>&:Y?BC\69F;K=#M1+-R!$;)KBB M69?;Y< :^WAWC4^E]^"0JZL3T5EX--.8B5+6PA$\QL")+QW8(.;9P^L/A"O9 M."$(I;#=(8JT&"GI6J9GQGP)D4&\\'%^OUM5(9*=:Q6:). CV2[5-%(&!5^J M>N!K?U$2=B)-@#&0"F*C84_]T[[I:J"3_G^9=\T(U7C=@', M9IQC#P<9?NKH37_B@'^K*OA4-CX5.E.I>9-0:W%/>1%[+O>W\"2K?;BW<6O7I> M9@N/,SC&RS&.OZB5OAO:]WV6S)-#:Y; MU![E6=]2@QSETZU'!.AV:[JW'^IR=&BD6U.N+ ,JVGT4ZN%ZIA0XDQ>A>P'N M7615!;J8BDV93(WGBOE(J* *#%=C ^\RJ*IPW9IVMJH*A7&"5C-"%1 LW:?W?IB;Y[N5<*PX2,KV9!@>4+PPK;<#A?/U3N\ X?RL:_O!S4DD0N9BWM$( M=4 QBX8YJXU&P1*WKW4MP+6S5%4HU*MS/[""G*^0$Y"S7N5BQTR=L 6\6LE7=J88ORM&^U:H* M5RO''XTWJQ(#2@NS-&><14=;1!>1>=.?ITG[UAI__^X:/TKOP2&7&,H",!T9 M*2(;IXA6PNK+\; O9P*#F.?K516:UB0\3YATB,A"SLAK?5IL\K[D=A O'+VJ M JN5PCBU&,=D] GB65/GHHD+8W[@:W^AJL*\LRBPI 7:9)),P0[K>:&D1OS,Z]4-CX5.H^CBMC1Q]TP M42RHSLR6:;ZH^A(:@MCU*[BP)^PD^X,0&,VK%4[5X4A7K/(P:E\8,-Q2W+>J MIQ':Y'SH]6(U,['18)!FC'7M:;%Z?1=RGFS5]:6@Z-'-O_LDD*'1X78[0J6R' M)T$T3Y.GE2"Q*:;B\6RX(5.3GEJV!66<47P'+Y@#?M!I;- +/^@+.8+'R*UMT6"6K??8&A&A^[%T3>;&8RG8 M0N+[;->S^F-GE.3]F:NAA5$DJ\/FC+#A0)E'YBTZ>EFY(7Z0Y._/);TN2>Y3 MS911KAMA.64G\%EADALZ"]^%GZ>0PMN4@[SF+NTMQ[PQP[N2AEJ69V?%9)\C MLN4<;LN/E9F5N$AT?7.:"$#)"=$P34)[WHV)WD5::O@LM_8YR M9_'7/C#[<3V2O-]?D]6BTZRJ_9#,LE,J)C0[B?(DD.1+\->N2)+3SD2IAR%, M$@Y?8^>IQU$Z:]R$%-ZF'+SGKV5R"X6(=SDHJXQ:F">,K#]7EGWKKYU/)HY^ MLODQ_+5DJS"P,D!EB%2(A/5A(Y:1@PJ _O?7?'H"Q1G]M>9L*#-RO-!D8+^C M"(/4//S8N,A8]K;\M>N2Y'#<&.(UM9@EVE1AEJOG!YWRZ"9F>6]3#M[VUQ)R MTDG8M9PD0WS.I&,M&.H5+W*V]3S^FF]6U'WCK^%F598MDLX2DQD_(K/B*#*Q M+U*B;LY?\V-NZQG]M3##."E83J:98JT5BL\SRFB0#R*/2_#7KDB2TW;ID6,B M@L398F20[\R&+%F^"2F\33EXVU]3,G VC:KECIP:-1=2(3\8$)F+1->S^6M^ MR^,_0"92NC'642.P\A*CT@(4$Y5:,4+@"SH:L_ L8S0O4A[VCC%8&S]0%I@$ M/9;H;JG&3.C(7)Y4">?1GWO[?2D+%SCOOE\6<*;]J"@#+T1N\=Z_?[#9W?T[9$-NFQE M6I8$94;J0'[0&D45D?'="H'O9>.R]^KMLQMQ8A8+Q7H19D):XT%_^E@&%=]A MB;]EPS?^Q6=WX>V1C4)EV,";,4HBVEW9EFI*=NHP :: M:2_+-=$P;$:.S 2Y:8UFQ:GI.\EQ/=0G0MS]\%&7'Z0F+)0L-'3[K6U M>QZIB@.Y8DSE*MN.T&4^EK(HWXGF6D1>$VA5O^< "IU:?%_1]I@B*[DK^.C> MUU*XOO)9*8SR5&3;;3N9%'H+Y% !#J*2 69-=+VD VVMZ,V9OFIEF@"=3)$- MQ>5JSLA7:JUV!U=\&S/Z42B]M?(#2'TB&47>9!2G(L>2T=>6\@M@3%3[TXY1 MDVLR3%<7]0IN4N;4=^ZASR#S=/:'I%[%C5]@+IU3XTQ1CD2)['2J5*2(PBI# MW\XH^(^Y-$Y2&V'@YYG[CM-]C-S 2"LTI0K3V".133@\L6CU>+SG6]?%EVEZ MYPW'B(W9HPTST$RR/8H+)T*,K44S)9$THY:MR*JSK M=6!S7=)_9SWY3=&_D[N)&3#$'=&K.TS!@B)KZ8*\XB9'+XA%I5<8,-D(CE?' MZ5E[Y+]=E$]U0S='MAFN[AB:W[EW(";OG'N@=S?,R'.0DW2#8\V:1M2!$V]F 3??JX! M1:B.W=?5O YNV86W;WV>&9^-*B;7SC()+@5D*<4-X]F1XEMO?M_,^#[*?7TV M_'V2/QNL VD>2/PY)'YHP'7Q[6JY)LW'O,01V3ZGP>A 81 MSJ@94RYP:G9IB)8 6H -?PD\JFAF_N6 MUU*H04-7UM??E/OW]84J1FNAS,(AB&PEWI]('1GPG.]DVLWUVTF9U?EX;Y'F MV'+]!4T*9/8K,DO%UQDR(:T=,R>%#-<6E$8S-4D3M9#OYB\N0V;71+TEF3U& M(B&E+ASCL5^=$NR@.K+XQU2T'/*=W3QI"N E2L;+V? O;??8.\$Z:[9:+=C. M$(RMQ?E%'U RA+XT4.?8X?$=4[??L9+RI8T9>V5G&**8:<9LLURDG.@9>;7< M3?CS].IS[,6X%MDY!@1UYG7.ZN;;)09GBN%^?UBC)W7?61F_09 /N/ONY$4& M2$8+*#9,.D\?UMW&E6=,UP=Y 8DC98M3THU;D^Y!N.C.?2C2FN5S/3_L4)X.GF0PYC MX_.>%Z:6VF(ZT*16I,_C(Y@31SLJ-^L4O MPKX;J09Z>>EZ^<&]H88P=@1\)E08N.@7A485P$S.M_ASE;LSO^[SU F[6C+: M8X%C84'0PA6Q4;V!C)'KX.(30II*?Y)X5&)=AM*2X7!*@?QC_^*FP[YC_5P+RHZ@T:;3>2B62;23RPRC^1<+40NS+4Y R[Z MB)5/T!@G&ZU*-185&;6GS(M)B]93_BT4=C@K3PR.9V3E3G1,) <"FP\S%@,L M(.5RBVE3S5T@&[\1';][9^)V'8(G=B:!"1O @DG=,/391@F_4J6KP12LM M8$B@IWC=W87TU2DT-&DPM#*2!C0!C<6]D]7[Z[3,3*T,J$*GSA*PG=6G_,!* M=F3?^G"O&;:4T7T<.UU:A(]KX3Q)R=??_U*\7OE:[\G75>4"7(!5>64/W!8R M4(0&4#*V)IKNA=4SZ62O/2=KS0D'9S6E.'!&Q(+V+4#=FNJ_5CWWW;M9>55: MMF]N(@D49&$@.X30*NF"IXE;D)<0!,.&8@F1S941Z7G[(D]'$TG:<@@IQ-/U M3+32RG1]BW'[QOEL>_<-]&+G+#[/VF&23 UU.TW($2:*VU):SVD]WX:]OF/M MD6.F#RBMBTL-*$!IZAHYLP+72#9YG ]LA399&2[*-:)>Y\ BY+MTIO7'1D^=W"2M2G8DA(DMF=*6&&_\9KH/O,@V+5V%1@,N*[V80VF\1J^Z_*B7R6$G M(L/0C.7S!(.'=/^BUV["K9SBG90[0K;#X23?. AI/\W];GZ?8LSPTZDU*,@, MOSK"YBTI;L(Y,%'D8BN;9V,VM$-B_1.$!0^[J$389Z,;(C!^LLA8O!,H+9NR(A>PDH2%#L6;4V47(2IU@J. MTVH.Y[/294K"OC&>5AC(R,'"\'SK<4XNBCT)P_.70X0A:T"HL6,@K&=_FHQB M5_./M2CCS'M@WIB-'J?^+4+QIA"\'-LIF1_"R=B!S-^\]0C,I[>.-/L ')1U MPY#,I *>RG/5NWWDY$HM@9/XJJ(FP_%VP;\54M_D_:O!G9+Y]$?.+".."0.? M9GY*5Y$C)$A >3:5Z_MK@K02")F*2QVAB\\X"%J2P>LU8)B7*1 '#?@ZA83B MR?"3E#Q_.41,D@;H(<=Z)0X]FAT2=?V1D&TUW%^D0H-NA?/O',Q;XK UL%.R M'<6MX0/9OGGKR<[$/83KK"'E=$2/Y[6H2-F8%[IAPB&<"!EUJGR>F\++= U? M#>YDW/?Q*;AO"@46BTHW1.XBYS'N)I4*=U L^Z)D;S MJ6:<9*QP+\VQ2A5887PJQ$Y?A.6CTYC'GA)Y^^#6!.J6*"FV)4VAEYW@+9\P M*[D#H%82MCC=F M5TI\+L97*I42A\\B$;/$UMJR?T]^/2&MGF?A]A+KE(;8'T?'/DNG:VA;T+2\ M4V\D"S4+G@SPZG&?%5![\YT:_K52O@Q),5.I33:8D84 M(VDCS>ETM5Y9\.V$I]\EY0,IP_1Q5\O?GB$XAJ0XJ5DC6V@5ZW(D,A]4!ZW2 M2)0"FW+1T3J]_WS"+TA*,AX2Q62N4",F>96LA!OMJ8^/9?:[I'S 3SFR33D& M^C0-K_R.X[EV[@KEDQ^L] EAWN'D 6-S4KX)BI98="X=>?8.]SI19[>$2++ MI1_[!8< A18^TAV ]\=^F*/W'>&^9(3WJU91;=?)$=[@Y78\E"\DDD.-;P2J M=8G&]X6$6"&]&Z\8H@!]Z?VT7#R#I03\=+N'-N#3BV#6$(3%@S]($!U.>\AYV7 M-T2]SW6M>L0:I0@JWR5ZY>%02O*^$TGON(B](UUE0[PSU&-*PO9NB#"R:%]? M^E\R-\I3X>4&IJ]P=UTI2:>CQ9+%VAUB@I>HTF,XE[.COHO+OL3=T]9,HG B MBE/AXW%W[3&7YYU2=.8\YKBJHSI*3!TQ/=H/'O.V:$>/6Z+F&//@^YW@9IRQ MX2C=S28[5V/,9SX?G<-2@T=<-U=V'_3)]XP.GSS\."AI9, V6J0X;?:=1 M2Y1X_VVK?9+:(S!M0P>.Q;7/ART?R"1YQ>\C))%L"LHWIGUL^P@43AUM"[O? M]7SC9.OOUO00&8U1#E'-<6VG"I:;[S;GRJZ0>J#KFXT]%Z#\ M=DTOPPZH1/HX!T.9:I@HAZ;VU'>>JC\U_0@%(0,]ORD]?SY"_ML5?=&8T=EA MI:!SDEDOA[IR4RUD DC_(-L"3?>;IM/^U/3S1>DSE<]S5I(T9%N.3X12I6:. M:P&B!U'Z-^DY?5MZ?L8HO<;H\W!"U VFF&Q8,;-:;+('@>:'D3I@9Y?5Y1NTH5N,9).YQBJ(^&L!J=# MR7^;&_RIZ$&4[D=-)UM>OY&:/TOA6A4J5Z5)>ELM;H%"OI$CS]IHHKT?0@2@]T_6*B=!I/ M5!+EQB(A4S1MD/U2K-:I!)H>1.F!GE]7E)[E6Y-D:&9U."CU<@V6S45:P\!Y M#Z+TB]/TC1KGU/-FB.TLFN_4K%:YSG?SL_F"L,W"A :E2 LV? FAMR=_KRNS M4X=NS]B\]2@%^:GG[>O;D\G?*:Q)(YUA%)--RI!*I\=J?$S F"]3JFY<6.G# MA94^@;"NW:B-TR.H;Q?6S,*,Q!+19(R(M"*BH;2942/N2Y_EQH65.OS,"^I4 M9UZ\*+ES?%GM>6>;;I'5N\',(E\2_9*!/<,&AH->3ZZS79H[:"[[:B^TOLYN(5,S.N:CPC&1-@ MJ46]-/+?EHEW;-KW%\4]1Q&30TLV?R2]MNO(BW2X2Q"3\" 69F=PT\*]B)VH) ?,H-PADETBKY;ONSKSA/'_Y]T?SLGU "^5D^X(\ZA5P_868)\*T*)OHOM+1;\/-?64 47)2@P, MZ!G3CZ!' TYU9>IY#&X;&2!("AKYJHFQDK RY:(YY:1V@TI 6I4HVK=QTFMB MK8K.'D"M4T/*FW3VNW2^4V9O%LO3+3YHF8_>D\@0WU,X<^,[3^T ?-A)IT=P[\]N M3!H5F2QR[%!P M!N/LL);-^2YH^( X?/#4UHN6B:].K&[C@ZRV(_6)U(ISJ5ZL-^&[DWAN'N## M 1+@M^G*K^!#(44I"WW QQD[%TN:;*+K\(M+EH)OQ8?+E80]^-"8194Q:RZJ M,JNE6BQ.ZXFT/S?&^A8?SB<3NR/6S^)#8V#19KVO9SD86BBS%&%T@';)KL+W MX,-90^^O2L!K?,C/%\5,M39<<$6CQPR[L%3,J;Z;3O0E/ERT).S!![EJDFRU MH]D9^JQDEQBU45-*L$3&^WJ #P=( MP-G3\8Z(#^,8\9A,F94F$3&Y))!+,A#;ERP%WXH/ERL)>_!!+?Y;\J?#B[3.Q)V=Q>!7T2"Y=.#?3BI&X8^@P1;BT*QUP/;P'$ MHI[BO>A%)I5@HR>K4VAHTF!H920-:2[JA7LGJ_?7>]39<784[89+,@/%?GBN8_67U\)/^\Z_$OV;J9U'<3?ZXSGW];'/7JU-_-K M]W,-*$+5VX!2\SKXU,[;M['2?-6L.*N(:E'6&T0U/!V9E#04K:CO9HS>D_,/ MIY-]\HV[R+WLP8'TOD5)WX,\KOJ?#'G:,T*+A'OE# $K8D+06TJCQ_K.D7D/ M,/:1R*> <<4R?%YK#:=PO7^2+6=9DA S!0(OTX5J44J69?]Z0A=KKY\I?DO2 M[FZ<>*XUY7XK2YJDVNH+J3Z'17\WTSH-%>! ,6V 61-=+^E 6_?PN:I=F2"! MQCZV^TPDQ[3L.I#(><=W[HZ[46.C>I3[=8L17U>3*T&<@]^^/W_]$+$);,#! M-N!;YA.^9@,DXC$Q;I1H@HA$!N/:HTTLDFG?^8;GLP'7.DT1V( OV PORH_ MH!.WAZSN%$L_ MDH\/U6(BEI/Q?!8,XOEY99#T Z5.MW6:I%8E#FF>[DYMANFP$ZZHFLU14Z<2 M8'9R2_JQT=,X26T4QOO8Z&U-6@Z=0Q_E6)#=Y21]5QK%PUY:K%)DC1*TWH'KU/:]< M/O/QEZ:E*6*O1]35:P>I4:K(X5)&3DG3++>P8@U:>7ZMZ#VPV5@% 0JR:+KQ M2?*_>M[],0TU796T7.N"M)GYM]_X#S%A""Y_HL<4B%!# 5>5:_5&6F[@##[8^4;W_K=?]TN:/R!Z MZ;8A0'/Y=0B!Z*DT(LJ??]!?F&DY"K(,*ICC,TFTA@\D0?SW]QB((G)$< 7V MK8?P?2SV_)/AYA>L?]--+]T'O49!^#:%O^]>M&H,) VW]/%#])X:6[\1;_ A M]%J@8O% !L:L/_OW7^: MNH"^FF.@;77!^_R@N9ENRO(ULV6[JY_N_C3=C Q,[V,IUY1I%I)/MQ5$8X#^ MC'?06E @,!YZNC7\_9+LK^BY0;"X1T&OSZ[T\-%X/T; $,T+H1[!AP@$$H! MGD.8"$4C0C_2 X1XM^S&QLO7;'1Y0MX3X_GOGFX@F?!^H.]=\IBZ(HG8?PCO MOQ-R9:LKZ 87"'"@2 /M04"$A,9FU\@=77MFZ^^=O'-?C7C]>RJ94L_S+A^& MDHB0#=W^?_^)403]^XE93XPZP6!W#VZ[][W772==?F_*7$]71'0O5\DWF33& M-A--AOWG5V_9^Q,QZ8C]9ID4U\@W\PR+)2IIC.FD]_FX89W=P4-UAP+?Q;:,S/2#( T.W M-1$7=$4W'M96;=TB>L'KYEQ32-Q'T*N6#5/A>]3RTDXB3-+@$STQ8%NZ^\ZE M63N9<3L/5[\^D-A'!_+2==C6P&T[D:DVRDN[AIPNQ!;/WY4$;!7N-%R7XW-S M I@&W$A.A-)#6A>\>1UW;N7.\PDJP#!X81:9%[76N$A$.F$IRM-L-,O6W^DP M2>#UI>YO=7A)[)7#T0="&$;("!_ID2$^U ]#OD?1$3X6#45B,2""* 0KAV/Y M1%/@LXG^A(T[;(J1\E1V,53K!5T8H $3+^^$BQ;%ZD[+<[36VK/T#)#F*&!LPH?UATT.N_*U8J[K9PE+_VRMQYYKZ^G(ZH>E M8^O]LN7^NNS>=GZ)5WZK9:P[MJ&][N_B^OKYNXCX3^NZDO MJW>M=6?#9&RTK:/V^HH^6RO)^KMGWA]Z!@0R/D,T>M=%?[H.>LBYLJV5B?E^ MSWR_G2 _ZL*M_K;$@Q@0C]W3X8 #I^+ +\MP]<-C!=)2]\Y_[ZB[]_7"'?9^ MIIS>31_9IB7UG3?]KFTC^L/=!8-5-?CWDQOUB@1?-0=?'S?UL7&O$&_]Q^W# M-J9YV\"L?^\DU(()!40,7>D!1=&MGCZ_.PWDU6U@('16G 82R2[(O$$4K3D^"N'1^0C,WAEMP=;@__V'C!"_ M:>+G\H/;G;U*[5=!6GGC$2+>ZT%(\C >IOD0#,?X> 2*/(Q28D^@8P3HO_*Q MQX(0G3F/G2'AM%,#UNS31%FMNVRZ>A\[\/#.[6,'42%5RF$.J,Y*)9>AD7N5>??.#5_EQ3[+9 M2%38O.^-&R$3TTR,4D:"R!+X*!8+/587W,RK/_#6 M. B"Q.E(+$I\=Y#TN06EV.$NU!G6CUX[.2?@?0,.)-,UPE8%7=G@O\TTQFU% MS6M$RK;5PZM"37V0?S!P(ED0"^3$U^;$^\727-SH1_P M50;C!X)6TST#<&SH4]<$'7V2=&GP\QKR!<A9'U=T ,@-NQO3W^15'X_H/C\P8BGBJ*.0QL()M M2*8H"5[4@X!FBR7HMG]ZQJ\_56, -&GA_?;W15B&L_LR33#/K[8A"%Y[KYS: MXIA204*B!=D.ATOAX: CS,=OKP.<4*A#49PFXA$Z1OG,7?Z1OV_BQL L1<\(1F%DTPUK MB+4E19& :B(CG]1M!4Z!(7ZWW^47UJ7<'<9&4Y]I&XR;&I%&JDS'LYR3Z/-< M./O(IU)G8UP:.):N 2P)@3#\X)S+";OU\YVDD&\+>%:<]'SPJE%#+Y,T83/2 M60P<,:,.\1(W25*M0:$9ZI#"VS.=)Z1;!K4DB"[:Z>8]4^<@RA^<% Y4QX^&;2/AUQMQGNSUX\G836=*0.RJ,T?A&)3XUR MHM88/M*,G;9'@TB7:<7R;\_$GE ^:8HDOST'ZF,<^X%HB+E$]&& \JU+#I\* MT\\B53].O=+E GG"@."%;A$+ME*$)7)$3+AF&K03H62_?C;;3\O6Q37!\KV2!,I<5T_EA0W=,4SR?S2-".$41?EO5_/&\0O67 MB5E0@6.7F*O5XY\8@FG%=O$4 TCR$>_6%M%7B[#1;[2([ZW![DPZ\LY*D"P) MO<3P" X-*&)CVS!M=VW0TC%TASG^[+I*;V9(0K(=S3S31A]-VO6>/ M(L-1$81Y" 6"#T7"! _B1)\GA9Y(Q6F:CO;BK_;LU9B\!270D=56*_[8(0:Y M ISQQ.L]>X]Q;=:KV;N7LAY=C^. X&TEZIL5-\;S_?4V3DTX MWRU)K5##(:F>IV]/R<$*Z/<*BC*OR)-2O20.0^(H.ELG!^\VX\ND6S=)3'>O MZH+\$QL# YL"Q8;8_Q+W!.EF3V)>O:,GH_ZY#.$-]0YXNX>W*\.RM"M/C(W) MS7Q_&NODB(@TTL1P8HX[Q=EJL\Q;C$V6TL=@VLI:71/77LX7NM;M)%.%:VUE M5N;S.1D.,;9>&W:;L!_J$JE4J._$2F2RJ+H:2[W#6)=.7=V0,=;566S=^+O, M_H[)"O\[Z^_V>_<6@?WS+G=_\IKHKE]#K.=@PA BGJCN#NS9$'J)&:[;;CQG M_?T@_\:&P/12LCMQ:H==\N+Z77"ZR0P+2Q.8")PS/LUWS=I+TKF6 '.@Z1Y/.PI2 6>X86F ME]Q:/;A[4\Q+87D1R>W<(A.+Q^/+'/2W! %;O_CDD[LIVS"\@VQF.NK28"YWQ]$TEVW,LRH]86)"MOZ.('>AN<^*O#GL98K^ ?_LXNA'>+/< MK431^QO:[%9%]Z_EN"F3YYH"9 54R;*0W8 *L@:&KKGNAN)@$+D>#I9WP0(( MWK)/&E@ <[@S&;I+UJANN\[/P5 M0P*&[[Q@JLB(H;<8:R1&.J0B@C@_75\--8<<'+>O VQ@Z#-KN+Z\-@0LA%X/ M1=B7M.6AU:Z9W_;N#?M[N;[1]=I6-^_I\?I.25M:7)+J MX=3:#]UT/N^?5.BF9?F3'7\G5/5LJL=C5^0'NN&<*,'%Q5\CM7K'5K+S&'0* MI&G**64Z"I78O@'S[SF6I=UR_ 43_C9P[M[W_A1#[P3.Y]I*AR-(XN6(OMJ[ MO;#^O$?_\-Y5=AFM=UR.T_>-W6>+7M#N?)48E@K@]3-IFTB#S4G'F^3=:*F?9WD?FVD>MS7EC_#6_'S1K8Z:1)_5VQHA[(J^AX>JNJ4&D\PR@!C1! HH+1>[^ M-/=F]SVPKZX[EM4D%5'^03B?'D& MY$+A_,=#\V]W_8(H_0U\V,Z1>&G314RW+<_2NB9WI2 9;UX(V5;WH!A/_C]R M&M%6+4C-5D7=$J$@(:_M#C,%X Z0V-:NY4%6T=4Y5B&^/.^4W$*$.:[JJ(X2 M4T=,CT[<8:MFS'_O\I7,CKEW;\7<6WQCO1Y6GX>VJ6UEGB\61_DD4TP;6:%/ MMNA)K>ZF_?TD(Y&?%$FM=61-AS_+I79S>8R+MRS/OK,L[]:00'<7;,7!:/(G MYH[K_N6! ^OM=JLS [;.6UG]=IXC5]8=0O=L=^>2CUDY-(LN_ F-7:]^>4KQSJ!\O%O@_!YT_L7$\T?JH)B^]8 #Q9<5%T+>@\0"4&7#,U0I@ M+'9//>4J/#R)#+U,08C%_HL]?_26"3]R_A1)>"627^Q=7?UX^ E4%'GO2NG& MH1TA\C[Z>@-L< ;5:XJNLDEI*-(1B@0\&7>S26,ABH^%8G&^1\8B /:CH1@= M6N5S'H>*KYR&#^<,5FM)+E]*8ZEJHW:_D1F[I+6?>II(EABW*&&J6FDRE2;K MZZ)KQTK7/: *L/M1,7IMTX3>AUC=I+K$U[ M&;W\3 WCZ/TY!>7**Q@?=#C(EN+&J/O0FX6C LT]E4YL;QT@[LES%E>_?C[L M/$&'/DQ)WBF[[E?WX@/R%R/O0_$K'^.[.O8M8SS+7LT:BCO=XE3[3U2Z1)5X M"OEJP+#R?&:]/,+GM>7D&B+$9T)!CY;>(HW;S(,]'KOI"B;T"&E86/Y^,S+< M;/Z-)[&+ULPSD/KI'=C&.UZ%Y <1/UF$@P3HLV6H+E&O ZC[PA@O M1]9](-)/AWBLBOA]NSG-6U E,_E*HI+*)TK>8>1E=]J*)^-Q,A+_W$2FVR@: MT8:MQ"Y324Y+IF> \[^A *-N4"-"4#@A2 'D'!= OX$ M"<]10#53K3&-A'MT(% 8RY08P)( M""#AJ@7\.4K0U;$!A\B$2U/(NR<(J?"$2+#U.FSYND].NEVJ*MW]B00J [PX14@LUE2M4VBA+(&!&+G!(;@#G$,HH^N[TH(1HHS 4J3( ( M 2)00(M0;#(FCP%A-XDHI$R4]&"17=0AVU=&P//NS*/KHU M4(@'.G.!.A. @O] X?R)K,BEILJ)2B*[=*W3>3;%L2RRHHE*&OU'IE;ET;J.BF[1;D2O1TV^++LL4W)%/^ M B#1UP1(QZ90W:U *5G>9G,/4] /ROK[QLLP[V58&1@RM##W?3>',T$8=(F: M$^!,@#.OW7J$"R'>+2!FH%$ALU/*>WW.P^;LD\2B+;5#VMM CB&4" MF+@.20Y@XNX_[C0^GP&"I1M?0HC$-4'$UXGBMH"M6@C@(8"'"Y#^ !X">'AE M"3EM>;H6-*#(LT#YY";MZ\L*.Q)A-IO!W&:\3*[EQA/W1$C;D"P)+A=/.-,[ M\V85>-P+M.GZ"45V^BE%^_%EO^^[/&>P>%+X?#&>*AJBM+T MSS_HKW73@@*!X4K9\+7UZ\@G;?H:+OJUX0][0;F*YED/BOV^6- M9K?:P@6H*+_?TOAU"R>2!6]CX_*U M0L:*SI3H4V@NTEX:D-.FW\_3^;H^L! M01X8NJV).#)MNO'P'\+[[_<&-5?OISR-'$"\9T @XZ"/WOX E!EPS-78H_%[ M^K^_>[HAHBO$NF>T%_Z[9/XOMO'9)=(K'JI@CF_0<64 < 7VK8?58^O?C"51 M5C_JIE<6[<& BE>[Y@435R)@Z>,'BKR/;$M B+R/OA:!DRNSQZG(LYH\6>GF M9\LM-%T171YY@T1C5Z72-W3F)>EW411@DOCO'0]C\5@ -$8'^KW8GP, M$ +?BQ,Q*@+)4)\6[Y9O/0X5-T?;TQ7Q WKA9ZMY&;8]Z.4-]O(=?\Z>7SJU[2VPB M[*/&10R15S4Q:XAP>#!TRZQ90\ET*[$9Z(KB8 TXU@WK)X9<9V&( 0,^/2EI MZ%Z(#13=-('A8#VHZ+.'0'QOLI>>A_KDV'E>F.O4*6!LPH?UA\U.N7[0JC\N M^@M+KV';Z]J(PU8N%_'*5;*,]5O7HUN.:&\HB/RP%W'@S #C5:L4?1^EWXH# M-_R7C??IZ!U]5_I7)%I_Q]VF'Y8^ZPP1Y5U?\>DZZ)FZ8EOPM^LVOA[U90C% MEOO_9GS^)E-"]]2;\Q@!3[Z?)U'JGB #IIR**9O3?I\W8RL[O)I\(,=SS#M< M EO'V2><[HI]PK'[I_>:B+'[\*X8#,6;R&_YYU?OD,F_+QF7\_BX>T1J#S6. M,JM^B+I?LT"E7;=66J:<;8K5D53Q::[KX3^" &&__^W$.ES [O[0]Q$J_-_U MEA[OH)HC2=)2W[Z7')^WX4MZ'$^_MI3ILD2BJ8^3MJ2(?YG82CK,I738FNEN M^4(1H>8=:"29IHV^E(&! D8R_!.C"(KT(D_1AML_OUVPX13^^_GI&+HG3ZI: M-Z='?F;VAM*L^/ZVTE0%2^]! R-#+]0F WN&[L>+5$S]($!5 S8UE WT".F M-Y&9U($ANOE5Z*)FH79U0<;T\6KF=/D5C,<&%);3J9@W)84N&="T#$EPC^PS MAP!]>_T3TG?)O76,PEUWQ0SU!0,S]+[5G"R*_"3$*1&#$UN: F5K >UVL!&9 M/,J=<;:1CP#,)TX%^'BM^/B_%$%@Z+6*JT]+33&>V3]^J:@BUG,V=!4]4[ 5 M!Z.6WN2G,?&Z8C=$B="IE<@/H'ENO;HPL?A?$NM]0='*P,%H3\U"-PA,"16! MLWM8(@K8[K'7% @ Z4H Z06C77?058,4BM0D"TL,#.B=F8DM3VA>HD_$4PLZ M0!^/@)IF V65-A!@SFUCSDH8#$\8L+ZD()V92=;0TRF62;G DD'Q$$82>!%# M<&2Z1P*Z2L="P8NQ2!K3#8P,_Q#_=I,+O>>>JQ,R,M8 FNI,&6$H7I3X:T5:%A-O&'98+T.;&T6:7IG!C MUU6[05#P(K< %JX5%E:!>1]+2P;TROV[7];K30$F+&G43P2@<-N@D 2:[&H& M"NP--*R?6.5^X\B0&X(# _1ZRFL@# #A6@!AR6 LKYFVX@4&/]TUSU/)^H69 M@9<3> $LW#8L>/.\4/06WQO0M+SIW)="\G,US;O,6:,(;YX7_0U4'<48:U_K M)^;Z&1@P,2"JDB:9EN%EK&-@X+7AOL*=MUKNNU+<]QK+@S6\&TQL# S+6VTQ MH*7?(#2E;,-PY]1/,&=\[6JX*TWG$EC]_HQPS.\3PA=F\)ADOID.HJ$;AST& M&)I[3^1GQC??1Y:?GM.W]"0#E'$O9Q)L,L"8;]B(=V%B(6E 0ZBB8#O7:'8O M55P_MF11G*EAK-OW %IN"%HJP(+NH,GH;W-KOJY42F'BK]XO@&V(QL8= @VU7A(DZ3W'M8 M=^[/W%@BND$@>K8P6%LWY&!#ZBVAT4OF!\M&S[0I+6?K [2Y[6FSG4D$/S%+ M'T!O4>=I!GM[C6>UL*-C=R]7ENYN$&3*NF%(*-A3$.\#@+G6-(1-+F/_!]3Q M;XSU-E 'H/(4_D$+*T$T3C" 6,-%W@!?;AM?$N;+JJHN"2CB]ZN,!.]W\K=W MCYMFH+NPI-N6Z4ZFN7&.A*"GA^(:#9I(Z5"XXY[.[F+0_Y(;6ZW10[:V4:1 M .;PIW>VC+=,B-T@/%6Z+!/ T@W%/>Y;NBC@P5BOM,=Z@2? */=R+94/0"F8 M8GLI%0@QO ,>#%UY.7%]@Y#QLDIZ !_7&M4\<_J@O1&-"[ 8*>Q49!P62,5V M>L"&H^8F13\Y:RE=5273O,W<:'95POB$D]DWH3B7 B(GFZ:6-$&QO=\5:%EP M6,UI;7/3])\^*?_C+%&JF0<9OU;MC:<6>L M;TX%?,[1H=NQN45,LQZUM+-J"9:XR#8),Z1=D:P2K.+>.%(T\EM,5MU/F MK:[3>.<_E'3PVBH$ '$E +%QT,[Z8)V>;ACZS-OM;+OYF%XP\CH3TSM>9WWN M3M0K\1$)T.-);3) \ 0):\Z"-+4;QY+_#8>?4\A$J 'J9EH@)EWBCBF( OK M513P*NN@L+WGG4;N?>S;JRHX0)C8TO+L5C?(=QT[=T)M!DRO$13%6,_3"TB5 M=71QLEQ]=>^_T?,'FG .S+?Z8D M2L"0=AS!Z>G4+POT%'@IIXB?HI=4;*.7F/LGMOSW98_W#&Y]5C3QB6&(DCE& M/@;24PW^/MJ8W.\;YRV.;"0+?6=SE#A)K<;Z)F?>8"EN/+WJ0R? ;QQP+R@0 M&&[&SO#WF@Z>,+Z@*^V^ WE-3Z.[I[V\#T^A28+XK]O_C6:WVL(%J"B_WRHI MMV[AN\^]I$+/'%AQ@=Z@T\;?_[,YNF?3A0NZHAL/ZX/)-ZBY>C_EV;(!Q'L& M!#(.^NCM#T"9 <=5 MZ<05V$?C7SZV_FTI,.L?]:6#_&! Q2LE^8*)*Q% EON!(N\CVQ(0(N^CKT7@ MY!;,XU3D66< -C1@_]^[_S1U8:<*N9^1:ALJ4+;.,%W]A R[*Z*NS^\F'&\= MB G>UYF7I-]%48!)XK]W?"W1:/)Y_F[9\.K'7D\DXW$QR@."Z/&A>)3@8_&^ MR).Q?E0(BW&:)");3]10B)+GGPK=\'G-.^C3?>GJON.P8)-4WG&O;Z.*.S@L M[ZW3DN1O+).O)"JI?**$Y2N9:J.<:.:KE9.!QYL0=Z!A7%(W;T&5?.H\VTPT MF3)3:;(\8A(9B9^3PO_TMMZZ^>">[#MW,!AYCVUPXWE$__SJ'1/-WQ_,.V>HUMMEM;-5O;-EQ[ >G 5MT\W_^/J5RO'?L\W[)NOOS(^].D>BV MB1Q>$X-SM^+)ZF!'Y.:"OX\L1TB1D,.Z)T$3_*O[I2KVFRJ MM5--)MNN9])FLA#F1PF>^O_9^](F195M[>_OKS#ZG'MC[PCMPSST/K M%:2:3Q]>?W[:$'%"(P7QB"SUW3SH306:.6PX;-%?M#-6& M-)B0W9ZV=-E6/00MC^6Y*/1:_HK<2%7+K.YYO9SO*;#E48_ZK+]@^@N--ZN] MO#2,VC8FAS!VW-!KZ:-$7%$MBQ$:] MU1S9^9;5EOGCEI307TK! -^)W>JZ)#AU)C^20QG'3ER4;[4&C44^AU5GE1(Y M.F[J#OXAMMI)O5Q528R4Y>(< HX>1QTR78:C?=-M:0M0M0PU4,;?9JR)3'K/A:,HH"QPT/3%=^IZL.]V6'IJZ6]XM\1)>8LB93)R8 M+I/.KABN,M.,J$^6KN&ZHW)F#[IU8KH(9*;G; )N+^KU9CBK"_-J8P >X,1T MR7--I224O+&HBUG7;.5RI?H$-#TQ7<0J@9?6.VXE$?C&6-6F>;LR!P]P0@LK M*F=E1T.!QIK,/J?66QO:+H"KGAA899'7]GY3(TVBR_3=];B3;0$)D"<&MM@: MVHS2JSJ2H;-YUA2+*K,'34\,[#!?;"X;*M/%,K3K>>,LT=$(T/3$$/1Z@]YV MUR 6XF[?$;?-K53>X:%,GM)88L[6Q[,R+:UWZYXY;U0'&I@#Y(DAP-0U4<[) M>,=4A-&BWO3T6=\59/*$7#ENL)_YF0F!#;JJ963U:6ZL@JN>D&M)ZK6X\4(+ MQ0$MN 3>-A8M,+#DKW*5<952<5*GP)*I,3*E8HK,T6"JZ& ?PRB4JI$*]?%O M_*(5[_L.^6LGZI/R2LEDW94XX&I\R"_G(@E4F3HQXG3%W0>-N9$WJ\4\)14- MO\?GP)IW8L2K4[EE$$4Q,->;EN[QY0Z9\T#3$R.>K^J[2FU6Q:1ED,$6NAV* M6&DF4R=&?$Q:S5W?PJK@E-S61WI:KH.F)$<]VIJS!>W;5+([&FUJQU;&# M!NC6":4KCDK+9;=2%J0E/?ZT>MN4_TQK/*.)G)-C/7(3O/M[UT: \F(SOJW+ D%^Y5T_KGA$" MSZX//26GEA,^FIB/[Z--V;<#"10"(;Q)OCPC-)^:*A//L0)?OS;I1YYQ_M!?>399\R>OJ_IRHKL/T$ ?5. OK,)19X#K:\;+'!2#!_8$72[XC,/NW/H41P"1FZG M6DARUY7;N5(G"[\0MK JSDXR MTI"*Q"/9D6A;>E^;]5C)X/)<5BR7X M @BV6&KQ!5?^CZGQCJMW\KL--1&K[(X/,X'%ES8SH,; AF9Y/HUA_-EMZ!AL MIEXVJ\OV!DC*.23R3.3&.,$631P$%2NQ( ;RXG;/H\+O $Z> $C,**S*Z_%T M+>4XPLZ-FH5A:2G('+1S2)Y,P\5:AU_ MKKLI]2?/I21L8Y)L"-TN/B !J\"C513?((K[,I$>4$$\@()@:TV("$($!"]O M+;DAQ>=' 3$5F;FOFG[(=+1)*//1$2V9IND+&DZ?6S_ND"!"NGXM^^CWE+W* M+O7]"MLO .;0O_MP-,1F_ IM@C)@ [$ M)ER636BN=%?Q@?QJNN+I$0PTIY*G1SN.$SL->K+D\UUF/,'T]J@^"C%#JAA1 M13'(+O XV&L<.^\C#4' <0N; P''!3F)CR+':M'[D0CCZM,#(@IF M.JO'RD&/6Y9B^X*MB8^J#%X?"JOKIV!1F +M$%0U6 :6XNM:7E^YX 91Z77P M36'I@%'='RJQGS@#IXMBMR]V!EA7\)D:WVU:CAF5: 6V%\&P:1J&1"*7ET2" M"(J)2JXI=!,TJ,U6U7T@%#218$Q^,5DTZ\6U -$ VE,,E:8X]AY]8MXRL8J. MHX6&9=W5[BH1)E8+%K%7.C?,T8,;"B M?539F4AC/)9F.416W3=*($>8N[*T7E'W(N[9*[?)C<5=H["@-V%^U7,%J.X/ M/C!$FF9>4_?[8)@B;^J488.1FQFP:OKA- ]13(G>'28 W1'%=%[+!FP<@:1K MQD;7RD_:?' $/!U9&M+ PJ$;&PH+=A.YK4VFJR$- )"&]@[-D6FDV&S<4!CY[]$_*-KT6NY-/V)+&XZMOAA (4RW*[DI4D-QI^YS$X'3 MVI[>EO$HWS>.I?%7N?0[0*!8*4X<\2861%+<^G]KW+B@=],[@6.NM*A%OTYP M9M54FB8NMRS6$2!P,!%P<'>5(_PI\!PEZ;EZDAX2:+OF!)#2BP7FM.GU!XW_=XJ3,=*.;268N"*E:HT(T4'G),:9PATAQ]_E2$\=KK M_)I5YQ4<.'PI8^E3/WJ\NSTQ3[+!% -!Q4HL,2K"'BNYH.F"Q!)SQYZX![7? MU!;][^2G>SPO^?[E>ZTL9,NUOW.F5!)O#H8)S!T_BKI2?B.V\3L(;=C^ZB@(I+U"!^4WE+ M^T L8.1>D8A@WF+*KKAU.VVHO Q47CY-<^=WSXO!SO]EN^-QS[^"N47 2#O3 ME.78LPQ8MY=@.";GBQ&-@^69"-LD#H**E5A0VHR+FS\UH/,]H/)YH/$OP^=B M4\MP9EZ2S#5F]:5E9UX>4S.9B)*]4G2:>=6Y&:D%0HM[)3IBB1:7,[C>!Q=J MQJ]D9V*U@^G+:2M?])>^PH00+J"UQ::Q"Q3IBX]E!8Q2-]"UYZ6L]/UCAYE9WSVQYU'T,&CASN\50\%B5%Z=:HZ M6Y0978#H $FN-/_9**Y#HC3U.,;JKO9A=<9,*-V!YM M?$(DBMGFLD$1JEQI0[@ )A;+XFF:3%2!HS=-BI-AZ[=6!\1OQ4@JL9(!2@&# M)@*2 4H!$Q]ZXJVUM(9BO]!>(TYB0[F5;55.959Q:;UW/ MD98 02,Z!B)9,HT1B6(I?LNPRNM3'8A(2_G*]OGA#ZK#C/9=22GRK =611_I:,B1=%]EY/A RS$* $, <(( GS^]I M' ,#^ 5RZ5FV(JX](,R"EC;94ITO;$>"CP0@O+$UA!**=$&C<'#00[73Y3(_O1XV\) SL M@M)3Q %7MR;U["S;[[4A:L"2AER:Y5Z+"TT&[_2"@76-('ID2\5"*K&2 2*; MKA(+_RKL+=I\/5.B:C;6%(>SODKFZE6L#1$9'M.11)HF4& 6P@!$-R7%Z/D= M$!!VW='&J*PX<2V(G=%@Y5K&,H1/"(_=*"9-X..H&K(WP_';7#;0'+ MV*NNGRN:;B,#;*XH?3:1IF%A-Q:%]<4 :#ZW6%XFLQ"0W" MT2DO=V%LE4>M M;E'LEC3/Y>:3O3IN0R1A(B3A^33.,TDBM]Y2BZC1%N8G01$ R0+F)XLATY)SETO"78/'P4L &BHP<\ 2ZK2+6 VU& M;B^6F[CD)$ N:+H@L<3H'*^RUW,_73]?SQL;0].ALW9LKKN[)L]PB5Y4R1L',&9NBM/>Y#FFU_]17I]PH?."( M_:D77=B)EN(VW:ZO^+K65ZQ ;^EN%S[KT^D[=CA];RBN*V?SA%C2ZWE&RF7; M>&,[Z&O]P@R,Q,7$\"%/@ZO) >M:##'=D3US1_$E'>N6BFLY_/(=^XKA)[P/ M?OD@M5+Y-M[W3,>Y&8XB\:*HT>!V23P$J;9DQDQN>GTB63D"8$_=UR@ M4=II<157E#*1>[HXF'*SU7;@+*F%\-:T^?W.7VW2O*OWANF7W45N/S2;_(Z: MJ@-N-V% [W$LC6'1OW=,F8,,4LK3K?ZYDZE3]KS@!<%ELCC1*!(D91*U=G:@ MUON;>M"^FVGS2L^G:@=;2GMKBRF;@L,.O?FL. ,X^X&98D17CXXVG<#WH%# MRIE<(#^"']5/2AX>/OGQ/99Y&!DU2)(-[X';/JZB[ M,WI$K]MTV+E>:,=*41/+.[^\!89N4XZ=Z/WOH0L?W_2I6KBI6*XP M%XD%,YB'6'YA3L*$;GY_5PB+UH;L*!W"P9;;?F'4;S:6F\WL<^Q\G\GL71L_ MG\L.Y: R&V"ZO=]1H_5LVM\E<__RT:[W'+;L:LV.*A77&;-@#3<55033A* _ MW:;W2'2O[/L:39VWY'6V8JZ[)=]FN)UMJ\*7[R2?IAD\31+'.G9BOW<',FK^ MV+*>%-1:T66CU6T[9B;3,BH$MUD7RU!06)KFJ#3.'@H4^(ZI6X.>DFU.RZII#> MFEZ]92@53**O2H-I-ARV>HLAT8;3"T^S+ ,D=1RM^NOTRNNJOISH;@I\!TXQ M\JY.S1+!QB!!Q?/8/I8AK1>+C7\&/I%Y?2*LM381QV)@EB:2TE)SW* H;2KB M3*:BZB/DJP&M=Z BL5(());X.";$$B9+B;& M3FQJY'Q;7_I4EP0F*)?F63:-4_3+V^5[V=M\3&"Y\F#)89W,0,IM:X6A$W8H MC6U_^'W52LU$HQM(QAIU1E9?B*A?;4B&I E.1]49(_M+T%E+ULYPZJ_HR .(&: MV_YPU2 +#4;,K3@QN]BV9ZP%4#,J1\/C #7Q8]1$:H+0 Q&5=T94_A9\S'92 MG?$EWS"7;'E4[PXVHQP60O@ 1A>/,6F2O&?ZLJ/["FBMI73%M<%S)+A$3:ST M'W<*#561?5E623&.-[WN/M=MS]CH*FMLM\H*!6VQH7_"C8[%6.O<.,R9F:HMF(M1FQTK L2-0^T_ MADPS]+$5=5?$VC\G*C1'WOUG-JW0UO7WMJXD G-"2:6?C.4^$EL_[XB#Q:# MOM\:(:]17UFPM7?!I2;.!A5M7YB;W=ZPLNA28Q(LV?H+\0 MA" (N02$O(O!BD'?;PTA5ZFL_%X,84A*9PM#>H1U&:I 9KW2FBU'& ),+CJ- M,T2:HT^E??K)Y/J/KX 1O7Y %^2>GHBHPYAU=3UE.SZXH>^DG, %8Z8$F@'/ M)<%0 ,7W#J\B0S\ZKIP:MF*K!C"Y/)@A*ZH7^?7002? !"@ZUKA^^]OB9>Q#'PX>.%[DJ?G-U2_&-C0ZO_M-UHX'RG=4W M O_*@)XLP=N'CE'X5Y:^UM#]0IXR/U(A*JFY"P'B7SU'/;F,P=>O9BCL005, M.=-4#N(-F,%/JYKR_1US^6?1GY*H$B&&K&CZ1,,9529)GI$IDE!E1:&F,JMS M_)0D55+3^"^'NYY'BL][.P%@]N%PSUZSE97*M7PJU^RT#GI]Z$NW)_3$NMCH M=9N%9DOL"+URL]&5:0[#:"I>?<@U&WFQT15A)QK=9JV3_WH0:I92/WH M0^HOZ1'T#B<,,>G&?R<_/BE]J^I M:Z*@[FA3O#HXFD3Y*J,/ :0KH,^3[['J]W.%?JF!^*E#^0UIT5@!IZ)&\K@DP<7Y,; MN&1N*/=$,1C8GC\01SE9@2WIHY::&>Z[,A6*W6YYS6JYJI$=P)9'=R^1_'!% M4!5"S)!\9FB79S)=A2UQ_->FQ'R^*"W]2=9:4GY-M-,Y/O+W"Q.RBT&S.9.VYI.[-E?3VW=Z). MS*V&YY\KBG3K!BWR\H M@8-[HR5XUA-B+8_SE#[ ^S*FY\=,=B*:BF.%L.G1]"MVF^7ZVNQ5R+LVJ=T@!ODN"R_'&_BD/.S:\$S\-V\C[?[AN$ M2N]G8+MSW'31"':5]6!/BIG5;.N/:];<+PFPZ3&HH6*'N!(!/.VK(X#HS(Q,\6!U?9J2EVS MH@M2O M:L'OSO&2G\$RN([55Z/RR">CJQ[W"Y?W>M7SIENL*\I6L6#K19L%ESVA,T:8 MZ>YGR]Y&# A-;@PZDU)S YJ>T)FR4AM($W56QHS>QA,+HCT,EN )?B!1M&-\ MVHH<. *P#;&4E:=_>WSQ?"6&EOO#F@OM5?5@Y_Z\3WC&(3QL$H[W9;[[>-?' M%?RP1K_OR("BOY+$:R>,SRSL9]=WP#6GEA,^+OF/[R,[Y]MA5Q4"(;RYFWG8 M;T8W?FRJ3,!F-O#U:^]B7F;<\ \P;C]VIW]*07U% X,&!@W,!P8&^\I2:&AB M.31?.1J-3#Q'AL#1R,1R9 "X.;2GJ&:M6QX(?_]X7^\IXI0=!?V7B' M17S0K>#+]][/'D,7!9N^#S32<. MOZ_IU#6V'YQ,")41*K^D1L1;:O2B@/"O/'U?F@6#*I(-P[&>+7>VK!_*+29Y MMB0,;=B[FS\(;1#:_#;:_)Y5%[=(XX;NISS%TL^1FB^RV5!(X.VE<)TE#/*!?1@8_CP7>&"@=%??ZSXI9XP)7EW%#;-];]72U#L8KF&6(P*G16 M3;)%K I0]YE(]W$V33!(]Y'NO\,K(09=BX'NXR?7?78SDNO.H&R:NUFA/W 5 M71;=6Z_[:YQ9.H7-=&LJF\4RT]DH[;T)=9^/:A=05)H\4003Z3[2?;3NOZ;[ MOZS[U$+N3;LD7\(RO4K>;K@]E2K>6O=%JB7J\]RX9W8UVJ\H2W%'\@*,-26B MO&H<^(=AY\NK=ODSK+?G>\[Q?)@/X:ST!N(R4%[)=[$B\>4^[YHB@4K?G!8= M1XL2(.GNQE!UK^M8V@E4G$C+4DMM-K:2053K6*:V+ZT'H1Q5#N I/,WPKT$B M.B[XT*B)S!$P0P?SY3O'TVGJ MDK3*)U<3!"7OYFP0E-R$P/D0E 0[4YC:]KPF#C)CANNQ%;()"QI!G@9/$/@0FE%4>Y#(9S3.K3'ZU[LRJ?&%X' M#;J[JV7*#%W!R#B2$9+)K63R5I;=SRF5>!\WW4Q]7LU>]CF%\E;BL,\I%:0_2'_. MDT?T@HPK<7<5OX('O"D>T$:P->$GJ!$/ M2'."TZOT\C4E6QK/S:(?BBPWG9;*^[;,0I<# B?3-(E.#V-P$( ZDPG!PB@ M;N/#\-L -6@,%HS;450L&,@U?38S"7$# 0JF".&H-,-?T/D< 10"J"O[0R" MNHV_Q&\#5*]47N]WH\ 3BZ.R/!W(5%;9PL+5_)?O),>D<>1*@0 JD0"%+*@X M^6;\-D#-\\)DM5E/12E'MA=T7=#67D4 7=-DB:3E,3ZI=ME5GJ=<90* 9W>W=/I71M)1:?Z2D72Q50@$"LA2N$M"Y7V@X,SZY'A3Z62D*FD.B@-C-IB% M$!0@>T*13)HFJ83G*[G+.)AXB3"6\(+$%-LD*6]6Z/L5F6.QAJ,3J;L([HW; MB1/2,Z1G2,\2G8H#Z1G2LT^H9Y]I/4N:GP#T#?#GNILRHNU_ZJ^'<)R_TRE; M][_=_9$X\@JX%R> ) @!<=QQY[COA-).@A"0,B!E2$ >!*0,2!G0RG"UK5"L MPJY MT'%9M^N/08='Y3=VL>B%8I!M3NWJN%;-:#,('\+]:R0\/.V. M#K?O/P;^BEQ-4O.*7)6X03E#;A,A#U7^.2H>0EU>SA6R=2OK%C=?\%)N7O9G M*[&T6W@AP,>(T\'3)(U"X%"I[YN;50A.;A-;_U$X,>V6XZDYSC.)M6UWA>JN M6^4%"">P.&6:P5ZK%X70!*')5?@=A":W"(R&9Q*8)'!WRQ^&D#@'0W2?"3KY_T6\! M$#7"F>)ZN1Q(N=E"6KE.D5AJ$0!!-R,RS=/(5P A4.S%=@^U0I+OIO1;""2$ MAMVS=)+$F'U^+NEC8R:Q,XA /$ @*LV2QZGW$0(A!(J9V) -% >&Z[<0:%.; MZLU!UBE@&2?#%NORMC^I1#90Y/2$I3&&OV.GIX.<4A,=2%E_3/7A*UO=0SY0 M*,%'0A)\Q)77OU)0VF-VWH+K+'/@.0P[ -)]2-_KV%XV4NY#NQY4;7'KNPI8 MF0Q;<7=E7U]Z #IA#UPGJJ'TZ#9ZJEC23."JGN[EQ76Y$NXU,?.<"T)V$!>-S.M3:--$ ($ M$UAFA !@@MPI$9@D.<%,7,'D2H%KUP23GF9/-NZ2+TEKN;+V!^O1MM.-+!-8 MG@3'TOB)C1P"$P0FR#)) KES73 9M">C?D^C>'/IE=6LEVN613,"DZBL"<:D M*>8UW^PD>#^=KZS)X3NHBDD<4 A))2[YD9(@%W0,AH+VXQVTGP2Y("U"6A3O MK#E)D O2(J1%:"U*IE?!#T\"7]F>.PGN78PHRJ*"LJC<4\3+$\_VX&.5U6U] M:ISBTC+5(CX0A&U?ZE:'G>%:&YC^MBWC#'09H(DT15_2Q_.3:P:*2[[#N.3D MAZN\'ST<(EMO]P79Q8Q^*$\X2[>'_ RB!P/0@TNS)UP$/@%Z1.]N41(;P&$CU+%E>=FWV"%5M7=M"!XP(PE#I2GL@A$A M20*/FQ) "="HBZ#)>]*,Q*#O,4"3ZZ0<>0--^OV%X70F5!O+U;=R=[F5A>>XCW^/0 ^NE%Z"7?)R M"?;7WEQQ]6___<_D4T:*WVPE39:84$#]S9=;)!84Q(B"&#^3%L7L-#:VU^WM@8FAXY#T2\ MAR?/]>?!V9C2F2QW3!7P%BOD.VU(]WFOWSGOS(7#%N*K6XC54;+],=4^<-> MNY=0Y2XW-,VP(TABT<7JF?Q*91EM!E49.N_R7T^DG+JK\^5?V(*\806^KJ'C MT/LY)+YU_/5G1;E;\ H/ZGL"YRI8:SKJ9[:FV5W2]K*YV.[]+L Y_, LL!P* M;[KK-9G%D%FNVD5VU LA"D2D!(Y0X.8\ M10QTYXH1T9\5%F[!9KP,"VI_+E)V+Z^9&9]8-1<^GZ>+;0@+$9]!,P@6D'& MC(.[($)>1H%9WI +B[J=-S/;T;HG]LT%5A(@"ARH$(J]RR!FG'A+[U$4\PW) MDD\N A3%C$X^8G+R\;__PAGLGT0[@C&L2 MQ'+?85U(BY 6H1!CI$5Q$PO2HL^W%L7N\ R%&,?(*2C&,KF3,[ KI3=_ G3[,F,F)S;BQC[@(O (XTC'%B<1K",T?7,Y+ M,13.>HR'Q96Y%8D2Z\TZ0IMNZ6T9/"?YY3N)ITF"2G,D"HI"Q'&"B>/X8\2' M?8ROB1&4IJP;M>JT+15[C=K&$W;D?#B#&,%$&$'S?)JE+EAD)9;ZP2&,N*(, M$AY _4<8\;L.Q]?$"'I6;&'UGA!@NCYN=,*9)!2-R([@(XR@.#*-?SJ,0'8$ MLB.NBA$?=D>^)D;8/#.D^'5G; 8DU17S\SKO54*($5&Q)6!(L'2:),_OJARK M@WD4M8V.V6\OE?L+^4XJ5?, $@) L8RM,>,]GS&+65=N-]?>5& @-(/ M9 U-4&GLDAELD!ZA,Y_8GOG$'UYNP?)\ %Z*@]4",R?-HZRI78; MPLN!YV'!/PY[S3S[)/!R9>H'B24.CADQAI<;$D0?@)=L3C/6HC)P,&+;,A6: MSG0S0F2]'"@BAB>A!8/@!5DOR'J)(;S<@EOZ +S4.QHY9U;5E11X=8G([T-] MZLP@O#RP2RQ!I!GFS6K>__&5B:7?:J;_AI/*Q:>>JH-)X3X^.8RY?^*P7E58 M_/#7KJZG;,<'3^,[*2=PP=14 LV L2=@NH%N>8=7GF,9F@(_GAJV8JN&8H%K M@@^6X/[>0X^_1EU6HD&7"0*;4HRFR3S+TS)%D%-Y0I.$C)'4E.#TJ:IS''BZ M_RCG&LVC(?K-X;6A6ECO1C/-V'S_+_CQ>"G5TA47PMC\,;_! =*^D?"^CR"& M_<\% ?LCTX-^UHOHY_][WID?,)M1'/D/3&?OWSO0>Q,.=-4 M#BXD/]0VTL&WY_+/HC\ET6OI\8OS^R"J7K.5E8U+.6:YUX9@MYX]%RSD1<;71$^>Z/;K)7S0@^\Z?; K[K8Z'53S0+X4[W5 M$4N@7;DOILH-\%Y,_24] O??YUEXSM.A5\(X=.BYXKUSC7A8$7628!2-4F2"XRF98A1,5G1M(N,LHS&J1G T MSSY,1^71<&IXIK(,0Z$B+L.>O%-4\UB0K3R_*ENLF,!9DXOB:SR/89JTUC8L;(%Q:4557: MT&R3Z5];5CM!D]YV P'+3$?6LK1FAPNN#5H>W;W):O:^UW#&IL[VI6R7$(?- M'=AIRCC^:],I/<1].3.QL-UDZJ^"@)>=35LF9>S7ECE!X0EJF)V;1KL;] OU MSBPL":#E49=$;)=9SQ;EHI139]8(ZU07:Q>V/.I27M!SS' ZL*7=L-0$@[4> M;&OP[D==LMVP:1<[VE@L5KV-V>37ZE">@9;'7:++K5Q9S%>+II*KK=:=_$AL M9$*9.NY2@2IRNI*M#,0=2S2T@22%?;XMT\:(2@Y9&8AJO-7,$')&\N,V*(^[N9LMG/ M0,LC,74(V5!E=1=(U<:.+GGCZ9*DX36/Q:36J8K:G*[2<*E^4%ZX0*F'A>UGP^#9AO#!*C@VQ'SW M\:Z/4'!0]G>?9%.O.C<\6U*?7=\!UYQ:3OB('8_O(R3\=C"C0B"$-\V7!P,S MNO%C4V4"3':P/;NVV?+*CN,#%,$/<_2/613R5?\C-#)H9-#('%%L/!J96(X, MTADT,FAD/HQFKX;ZH:%!2H-&!HU,0D8&&6=Q'1FD,VADT,@@XRQ60_/QH)S7 MJW-7UU-U\(>YEQ)M3==2E<#6#XG822S]F)%]@F83FDUOSJ:N ML?W@7$*@C-3H134BWE*C%R5$?"68^U(MZ"N?;!B.]6SA[FZVD,F>+0AM$-H@ MM$G,;"'/8=;%()3EITXW=#]E1+ZQ9],#%,44 [%G3\\"U8C#81M MMU*G!CDQT'5\/+(JTEX-SYRX(D-^(#@+J.O!D[WF>-Y3Z!7Y%'IE^.4NEL6; M7;$Y7[;)15;)5^K0.97\\AVGL31+7"@G!5+\F(CE>HH?CW1.\='\#^>4.*OF M[_>3FCUAVARV7.[J >OM0RX#-9\!FL]0:0I[+=XR45,<:3Y:\F.A^+^;[>&L MBD^,R>I^73$#*3, MR+/(WM1?%I#.WP\DQC?$YB7Y_"U>,GC#^?+RIP*_HELWSYD'9\ MUIF!9("6#C0QD P^Y=)Q!Z?"OY1%*#@N:&:GU,!U=5O=I7Q7L3TKV@>G%&T1 M>#Y,"Y=0[B0)^O*26&[H7Y$$L;U$5,?8+>4$+J7^2O2!=<38_)2*[4!I/:!* M[@%4>A!3#OT3;*WW V&*BF%#^DMPP9RQ9^#AP<\6D*NC-72_.>TIVR\I#UP) M/-<)BFS!*A-!)D3>;*IE@W.FXRQ)"W)4I@%/YSLJQ+U5:>W=M-;-K80BR#+AA,&CMS"=6;.V#\).!S!X[$%E*. MXH&N"16&[@1FO@)X[ SGIAUFW# ' M^^VVDEG*?:$FP*?[\AVGN#3'7:@J8:P! N'!!1Q-X];1^ #"9=FMCP$"0(!= MK5OK-0!0;F^8_B3K@T"@%"#/4$&0CW%8#R,3Q8\0H^W614 MQV2,;6M;+>^D<1/B ?_E.\&S:9P]/G-#>(#P !D(B:%:/@8(#%O(C!;C+2TI M>W;69;&9-2-AR:!#E J3)E\M9'Z!2J!'V_FKU(Y$SW[?S_[A;$Z_5FP\3W76 MKZ=JT6DX3ZBJ*D]Y'J#!E*9D;L+2,LTP#$80)(;34_"$,2J-^$XR[G-5;V50 M]594O34NU5M/\N)G*][ZHP9JLY 3NJ5"K3GHRC3.81QS+J0Z2P_>5\,5]" 5 M=>'\E5O/GNGLHA59KWX$$[O4C;_;D:>E?$)-U*DJ*U-B*E,XP\@3%=-EG>6G M/$M2%,>J#PKRHVBG)DPG?*91,JNRXV>$CF+U6B?+RN98PV]5:GY#U,D1D6\J MRIQNMT\5B^75XJ(TPWHEL9ME)(FN9=>3SZ%6+'74CHXWUX.)%A8 M]>@Y@] >5$J#T4 TBJ-"45?-ZB(+6QX]IRC8GF!-"@UQB4OK?%4D37:@LP>MYPO MBQG=K3)[C%B,.FI#$\4I/I.YXY:-2D&OC*D.ANU(.HLS1+_2K;9E_KBE-NMF M=V2VZ9O%RKJ?TW+;D3N;R3AVW+2%LRK1]CC-7#.9;6FS=JR2!9KBQTTY"0\8 M@[9&8A4'&3XQ6?9XIDQ[![3!] M5';YUG2F%O) ]TX,0="MC%9FA2])>KE:[]*9&8X!"1 GAF!1;9-]J4/J8JXA M87JY.9^4,$$F3@S!2!87@P+!CD1&#UH..1H,L3Q0Z1-#T"PU=[,S8Y,'-A.,A.76LLD> !3LAU2Y:)UJ*S<"2]-92JDY:L M"D8(N9&CIF%_A:F:4%MCN^6@,;,7+-4?MF7RQ!"TIF71;55F&L84.)ZM@:9M M.VK*'%U5Q?.YILXO,*9(\L9@3>:K!=#TQ&CEZ_A:P2J^(>VZK>IN4,Y+95R M3 MX,3 AF5>L;;B5,.JKYB*CU,$K.AS;,=T*T3I+OMZ1U;;]WLK/MR)G,8-,C;%^RZW#(K%Q3VDE\J2IHV4P8@JN>F"ZV M.RM)RZFS@U?/-;U6L.M1@DR=F"XCDJZ16Y+N8@'0K6&I$HA#,X1-CYZU3A?$ M7765+YM58NKD)T&AN&Y%38^>-6N::\4%=S2-Z0(O6.6,-"V#5?#$),P0^DK; M9GQP[47>8+'AH-&"B]N)F56<.=,QKK(],5<=#X+\0IX76VW8]'&^)K0<-\M^ MY5!1H;4;BH'[ V[TLF;JC85RL0)]+\F#P+[RMRW:QYW[3./B M1?N09L5(LW[O<.8<8OKSTDG\5X:\+]T[:YVMUVUP-)\^QWSZLTI<#UA]W5#P MDV)X?Z=SBC=/%8 1[*5:KK,QX!HVV:7^DJ!/F&'_G6JN=.@":L]2@@I,86#L MZMZWLZD=A/$XA,[_OB9>:;V#M%HLSU]Q,QA[K\^N"K4 M_0JFT#4KUYCNZ0D&O969"Q3?BBEG(3RE?X^"UEP=C)5J6'K*?C)QX.?PG0H9 MC-4S[L)Y8BR4YXS%9V8K$F C)5*NM]][Q4-P\1;3+>B.^YA@\2%!DB:Y6] B MUW,'2!HW\A3OC'/1#?/Z"I@4QD.I&5M+*4L'//X^^@!Q)W&R"^*F+[$6&6)E M+LC*/ <-\-K2'W+]"L^PX\1V;JMRX[#E5&JB,:HSWCH3-*J#]B&Q)<.G"1Y' M=,W=T#6)E KB>B[)]?PF;.SV(Z:O%M8.MAP2_=J@LIOT-N$A_25#I1F:N&\2 MZ%>3K3M77#TS40ZYBI8KW?;.:ZW%P5:/.5#< U-SK\1,S#'VLJ99! Y9B VY M9]!P E5+*[S,%8TV*QE>@Q K&6%N9=HR"XTQ/LW2_.5L,:0VGX)NNEMV*>8 MHV2; M4R$" _P$<@YVO8!L=.I%+%JI]!?=+46_Q^)>U&-6'0GY?:;K\-< -:7,1KY/H=LF3/245H>VGZ MQ$\9GA?+&G//8:4Y+1RJ ]BS',23 M$Y!OH7D MY&<*_T-DV^VE$C?V[*YLKR=-+SANW@DF_C2P!%4%"]))4,0G6G-8((.IU!Q( MS>56[XU'HQ#FYH^..#D610D_= _JDGL^Z0GNP>V;0 M$"5VSV99^1$:!BX8D;P3GO(&X5MLL;$B:EEQ-ZYF!RPOMGRU#:L?D1!=.?XU M)U[$A"$F+":"0DS8E:VX=Z%+/JR6ZTJPGDD[-5/89Y;*:KL2(+K 3!%I@K]G M BPW5^R9#BRTE H>6P&_#WYF43BG92B13IPU\P,"!<2%W9X+NVK.=T0&(3(H MX610W),BQ,"H.K'(DH<;=G15-S:P?I^7ALF6$/-QVV0LB JY$RHD^?[=95MU M=<73\_KA=]E^9)E_@,:)/8NZ-J;Y4F$UE(C]TNNO5F7'&@FP2'D0)_*9.)%KP,REB9#?@IGV>HMUA>UP)QGA?C:1,D.\W8A@!E(C;)J@ MV-=@)K'DR(/=]D@?&3J*NT/TQSW1'W%$P&L;6L^T^U1^<+M=6]JS?6 :&8'' M\* VFPYF,OZ0(#S-TAR*I4.LSZU1 KD 7=%F^ADQ7@RETW(",=_0@2:N[<&D MS3M67:X+$#J U413:0862/L4WD /=E3+U5>*H3VZ51\.EQQ_KKLI-7!=(--S M9S= &R_$@R$>+-'FV0-HY/6I#B!"$P_8(=A:$P+'(:+Y!/CZ=D9F^+4DFTRQ MN+4&OLVL-&"WT5&BT#3-TX@8N[TEAP1U%\38G=M[[X2@%PU!QR9RU;91ZDM5 M5G2\<0UG>[D08A$P!+DTQQ^S9_=#GCT2C*F5LH/T(F+0$(.&&+2[,M$>5;QU MT/#7H) /]\QJ/,ML,,7).3QM\]IR!J PRM^.LVF*._:R1'0:HM,^-9UVS^>. M[\",+H]-B?%"Y3'&8"H=(;,T\V2$&0?S"3O. OK'AX\QL+=?-:G<0/_)+QLQ M9H@QBYV@$&-V*W,,PD/M!SJ\AJX%?-HOCH4"@3&,B"MEC%D6YVT99P^90M,D M=_P@'3MIGCJOI;N;0^!N^VJ8\QS*TU+^PZ#\DM9/&VNV$ M%D/."Y83@\7T=%FU_#4XS_JI*6RO=D3)<9SU; M;#92$?JG18G>B32-'=?@07S:A4TUA#R_8[8/@T3AP3@8@'C $/B&#K3#PAPJW;F*!_A%M;6Y'U M59 UI: XZ&6H8G/Z3T5,DEM8(E$< M,2-)]I"*I^)]J@F5=%^A5N"J!L8*'[,?]\3D M90?UV.LY@@J4VM5;#WK>LA3;%VQ-?%3U4[[;LCCG=6+KF>LA M,\0QL[%U'$$FB"@Y%9WF3Y2G0]X_B(NX*RXBCIAQX:)T?X(9Q<%R+A2-X5K, MB6J]S=O4NHJU(68P44([YA+^U[&B7WXULR(A>D8T#X"A-0D\\%W/>TC2#C^* M?'J4@ZPUQ+&@4+O8"0J%VMW"5LL^045#]YM3R-L^_$4[%?G"SMAE85ONF7JN M7E?R*]<86#.9B)*U*8Z"0I%V-S'S/@8WV=&&RE?:4PM; MMFW*W/7RLC,.(=S 6L1@<_AZ8&_BR3/7 7-2\U)3UUFF/" <:,F=.;\H @84 M>O?Y0N_NRFGZ$2<* ":Z "6:4_")%L!S=?W%[**#6@6KY'=]'EN&C4Q]*5>: M,QM@*W6(NL/IUVJ%(MH-!=W=7&HHZ.ZFIMWO@(XF&3-WPVN\&0SP7='IF[-R MHPU!!QAT+/=98^V"@U<4^/_1*0K%V<6*JT/0_.G"ZI+/];T0D_+D>?E33,J+ MV1D&Q1Y6"9:='*87%CV]*.T(N2;(1)2%'B=PL E_M7(:XOQ05%U"!'D/477) MYPS/ UMEI=]N;H-%WFQ.-QFVS795K-"&L 4M33K-D6>B#E%,'>($CWU MSNS_?"N%2ABA=K/ EF0YMMU&3$F+NOLC*=T!H_3'87@%PU9L%87AQ6#Y1X** MHXO8GQG9*,@N7H)"SE&Q=8ZZGJ(E86__04^ACKXZ>%I!!R'+L6<9,*>6*4V? MH/ ZM&F_ITU['/G0RQ[C/.FVUYS6@&KW@&;G@6*?(#US,[-)*J9'F]V&QD_& MI:U#]&*$$"%@NFLNS1&O)ML_F^D4*Q;E5VNJIVS!E4/#G\]U2XNR%<#BR2DP M+_3ERG)V.KA-E, YC((P<3XY%XZCW?.@2]-7 /MJ*5I?1 A#P.1ASP1.W)'87GB5G=5PXN"\3S? M40FP^.(OQ,_-S-UO"![$A.8!$AZQXE1T<\!3!;]K,*%)T'VO M610:B]U,@$\(4U^E">(X\Q7BZA!7]YFYNON-H'LG9I#NBA $D_:PG38AZ96R MSF^7;?B$4;DZZCJ%0F)@JK]Z%OJ0=#0RT*!-&V4?59WETK$/%MM=T76Q@@S$ MMB&V+49FV<.>%VQN?\!",3#>/I#!:/H4 M3W:G&8QB!2@H7Q'*5W0_9,T+B3]. _.+B3^4#D_L^4:+Q92-.R:ZW*+=U=LR M&:4HITF8KPCY1=T:M5"^(I2OZ%Y,S// UMKDL@Z>$PFIV5GWN;*4\6:;&80M M)@K=X4\DQTQ8OJ(/#+$ MD\4(;2]K)(K3J:[ZS:GX@ D= E-&P(P_ >KAFT LD9NKI[O&JJO:U&1"5O[ M^8-G+5^#Y9Z:=?-$?R9BS?UZD@MRLV \%60RRI).LPP*IT2<8ZREECC.\:Y< MO"Z#5K^"E"X%EC#C^+(9".,^QN&E&:[,($A!VY$[=E:X>T[R+S >KJYX^M\I MPSZ\@NSDH0BBK1U>Z#^$BBA*Y ]V>Z".A6+=M?7X1\C; O)SP,[^@"?Y!X0! M[ZT #LMSC#_@_FN&)6M1=7^\KA:Q0<7&:Z.!VG&';9F,TJJ3')TFJ4L6OD8* MB9S,/K.36:*MRJNCV%%R=7736A$%MV+F?+\2:6D7B1:3D?9"2;\',*3C^WW_A#'8.U[.D MD8L7QEC!DYM3&2>@(WZ$JN1H$XCBL+N6JDNOM^@YA*"$PFU0]01(3MF9&8@U M-30'7K6G[IO<0C %F62B6MD4EZ89&@5X?AKV\-90@EC E[&$D)M,=MD)9NX: M*W9W(C87_6G/"F.#)3F9INNF%9#2H)]M+/S)D.;R;8@ET."BL#3&'#NUW!7+ M]X8-)H*/SV]]Q6'S%S<4?8_#(0F@17."B:7' 5M.(>N_K^8T&"]9W 1G?]!Y M5IF?+ZL"5S(SY:(RX\O;QBQ[HXWP"9C=#C.4-M^:(C;(\+KA["98I@KVM2PT MV2@&YN1X[3 %<7(Q<1V,E\Y=$'_>X_X7+V'<%(!(.=?C<=&G)WFI:S45G\YL M5$Z*SYXQWUMMC5Y3*9D#K"2M&W5N((UF$(" G4<33)HDKI+@XX96SJ]N@*] MSN%+&4N?^M'CW7,%P[C!\"T2K,5*!@FK3GC/Q0AC)H.;9!*+E0R25D8050W\ MJ6I@-UBM+!W&S2I62C,\U7*\P(W2:0&[X^!$=2)B9FK05\>+:5XGNY[*6?B*^"[46*&IQBZ MJ>.F;'!K9Q5EP+!G*2MRC[8>$F&<,V'#YU:GB^^2;WKP\7DXQ"N7^X.=:TXE M3Q>@%C:2K#2GZU%7B,0<=2\=*K8R?,42MRO=U@P_<'6O;*N!Z^I:-O ;CC_2_99BG"K24%^Y#2:H M9GHF8Q=#MK+L5W8R@-@H@3C!OG:">P=,3R*,,"2H6+)!,4><2X=U_3;BK-R^ MV]=6?,]<*IS**!5N*F4$B#B'LC G4M[=-0\&+&-8H,^/"CFK![F"RV@IWTGY M,. M<'>I\U:"^=S6"?((0;3819N5Q+I0I(DK=E 8/>4?,5ZP4 ;G )( 2.UUFY3^^,K'TF)F\ M//CCD9O*.T?QVAW!B6?6R*%775U/V8X/;@BL#R=P ? J 3#P@#D"\!0\N7=X M%07CP=+,CUG4%0L\//@@*F'U]9+=>7D4WJLLFK'Y_E_PX_%[JJ4K+M22^:.; M[J,[.KS) TY@V/_<8G]U8HS89[V(?OZ_YYWYL0G*J([EN-\>'>F?]?+ASD2D MZC,],P%FIIE1IN"^WQ0K5';>H[',?WT*:O_VY(M/1M8K]I6D_R?U[#44SY%L ME\HV\TR"#\AR\(-^^-KC9^Y!' \?.IX!U[EO+BP!;FQT>/6?KAL-E.^LOA'X M5P;T9 G>/G2, BL;?:VA^\6R9Y[&Z;]*:NY"Z^-?/4<]"1CP-8!B8%98/X'& MPT=?OO<@PD%?-E@1XI#\ZV$>*^^9RS^+_I1$E<@"D4F5U105Y^2)3G,R13*, MS$T(5<8X6N$8CJ8QGOYRN.MYI'@$D7\$OU?%US]^]%ZSE97*M7PJU^RT#E!Y M&(9N3^B)=;'1ZS8+8ELJ]T8R1] 8QL5+]+EF(R\VNB+L0*/;K)7SX+'SJ1]/ MGVH64KF2T"B*W52YD3IT)?67]+B4_'V3U>Y10E9^7-.S]1N4#-O $14\HA9U=967H_UCHGMX00[[<0KR\JO1!" M$@(]$/#7WQF!$R4FEPA:IV92\G!%*,/R^W*W,_A MF-RWE!,AXD;UFK#Q#BWZ*&R[I)TT\Z<7)DJN59V<\$/-8[O][4SJ1(T5*6I4 M<:(]H=6DPE3W@AH/ &6!I[&6F<*N M2SJRY&Q&QTK=%4'@]UAI6QE6 Z/969]:LB)&6_)<4IM57==Q025WJU M-K/:[BH&-] 8K?#\A>V(9?58IM3492IU91'/R-@!E 5!::/ZD1T/JR&^[7<( M:S)NS2@9CED0%($WRI,-'_->T%\'U3JQ$.I+.&9!4)M=A6YP0NV(]QJ!L>1" MIQ:Q(GQZ8:+K];J]<^N[D5QK:ZW-JMI0I$Y.6A 4GX1*8RR..GC+2-4IMA!G MTC"#I 5!L:,V$:I[BI9[^TEU/%2S1E-W-+8HJ+06+#*YL:KBM9FQ"7IFL!BV^491]2,M]2[FOUB7ZD_ QG&]E>FHWUEFP- M "7_+66]H7;BJL80\L'"4AV/[=VZ#"F)@O1KK,&QFUXL>H,H+N\RAY>V2FT86-FKZJ0@H"RSM MTE;$$,W&2B8[P/':>@YW8.&81$&A]'HZ3*>MD2E+LTW]Z%;5YMYW(&F!)PQO M#!UJ;>WD%C\Z*%TW;4P=1^.+/'6FC2Y7&1XM6:&XX]Z56NMF#U(69MK%YF[# MZ^Y:,JFV*R,=IS0FR !E0?B.N)4ZZ\-VK;;ZN./1]4QMNY"RR!,F4W.WOE!7 MZK9\/,Q&^GZ?50>0M,"3(<6=P33<2]YVXNT\?&.&]4JF"46>VF27Z!#83I-[ M+'W<8/N@L>D[@+*P3D)WHVWI=@O'T^6PRBG2D%=(T98GP^@2)?D^%.])M>Q5>5JD<3]G)B*'0^ M@R)CRXS9TGC<)' ;JWBXHQ"C(0-HB2)CZA+G9==H;O )Y\VEQ:&).\!4 6F! ML08]8I1MA:ZH!SG#^_%T'I75?-0"8\PA8?%%M6%XA[V5*<2F-JM]35N90:.G9,693#M5-=<*MD'->#C<54O!P#;![ I3X$O5L+: M3?= J9YNA&ZC+J\<8IE!TN*>VEB(P/*V/7F+3P?=:>33T28?M2#87J.QYCJ+ MC>;U0FO29LFQW:5%2%K8++H".V9U4U"]EIL&U:7>U'=&/FIQM]#7![[5#AJ. M?%AY.\,=DJLZ?:(M;!=FIV.Q1'NY5A5YGO9:*E=K]_(I%/<+@9D;"V?@F7+- MJYF2M6JNA180 E64UW@SDR.5Z')J+5T*W+ _'5M@&P"D!3T81Q[=J>QG6[FW M"/&F/:Z,9=&!I 4],$9.8SE<8JP7A&MY$6.[9I7+)U#0@VZE68F%69C)+M^L M2'IYWV'%? )%_8[2Q/27G=I Q6BF4JNLL=D X!9!%_F2*7_/Z70_4+%I;'4C MNMRK@;T D!;XNQ.DZ,*4 #':WN97W#YJ 6^4FE'5!.QO_-ZAA*P WOH M'@<.)"TJ;;)<\8LIVZUZ+5G>M"MBO7^LYC,H,M8>-D9!N%W$N-ML*,-CR^?0&'!1@M.K7.5C%,#R3I:6Z?94"LB)"W* M8+X(6BP]'G#>UELNNOI*)#TBGT%1!EZFU&=$JD9RS]17EDG@;:=WHBT8V6Q: MF8O;I;U1I2WE]?7!,9UVP1PN>$2[^8 [)*%-JCHP73N)CP<;;/7$!9>(G,_% M,3V8M;Q>M:RJ,Q77#WP&28O;'VT"A7)[5UX[#+1RT*H1LTE[VY M6:VK$Y]>-+D=[X^Z^;!%(624YG<$QUVHY(I@!ZMQA;%K@+$+?A%ECN7^7*J* MN+1K.DE;J=K+8 !)"XQMV;*X()O9$4]G?:*[82<\GV60M(C@5EVD0P8?JY+B MZ&Q[Y,0>ET_@@K>WU7N[S,+55KD/T-RJ;ZU>/H$+'D?$+P^".RVR MO=9:8-@+OI&XBQ1LJ,QHF=7G$VT[-4*N[D#2PJC+M+GTK&BP\,B^>NC..MLD M:^:D!<'6CX=C#/;Y4)X0VVYOX=75HS. I,58KV4.K+HPS=2 S8!CW@VW:^DT M@<)D9^7D,'9TB\73,8VUR[Y 5:D3;0'!TY3#_SVD+F&\T3WG*K_.\#XZ4SDG>8EX] MB>Z?>I\$.:4V?N[-90K_2#QZC/<@0_I@_!",N?##[#X-< M12MSBRM#?"0?K=)"*X-6!JW,MT4LPJ-5?6AED,V@E4$K\S96!J'9K:X,L!D! MK0Q:&;0ROQ)I$AQ:F5M<&60S:&70ROSBRN ?&90XN\VE04:#5@:MS*^&FH^^ M"XI6YC=7YA>[,/_P+/,5Q([ZR4%Y$!C\ZL/L39/"CE"62P9\A M@Q\E2/\$&2 ]0#) MO!S\062P9\A@Q^EFO\$&;PO/3!#'_[Q_SZ0'YXJ#^(C MSSRK0+A+\OC1&^R/O7TLFF8:I#[LL'&U.VO>DU(@&3Q7NN<-R0 E5JX-E/A' MZGF]Z:L#I10&0;B^'D;>MA7G* MJ?\]* =RY/]>Y@I[8[$OYM1RE^QL?WA*V_CO' MT\ZPYTDIJJ9A;]21W5U./"3^D_,'7%T.)L=9; M/+@F3QH)A)PP1D55_)Z>,-C.Y%7QX4U0C6[U5^[)RX\G\^BDKT>]2(%WI%AC MW4_MOAWE%T5]O@X*/UT'U=6C2*NJ(M^LAF[#JSG5QD)QN:/;R3Y\PC_BQ(6K MH'X@NM)&CTH[^-#_H!CI16.D]V2B>@+D$B=(@Y &/=6!/MUNB5SG%XW"WY,& MR7JT!A.,D0J]:)3^GE3HW^TPCO]3:JS-,$!1_ MN9O3[TB-YFP+Y?:U 3XMT M7_;>\HN"^'FVR[JOKTV[!+S!BFW:@6%')8JX^Y]_$2S^#XBAR*N9%/7B5[K_ M6#3_=;77>&^ L\=N8"4_,L]Z(_,I\"9(CWB)[L"^92*-YGWMTV1'N'+Q6_IX[FV'8]++*\P:RI:\AEI=! MB]/+G3? V2-H ?'AW[<%$/=EW[D=G]#B#!09-HE,G#=F#08)103OC]X7H>CG6[4SK[J ML!Z[Z-J3QF#H6%4('_R'3SS/W5$L]TQ.AX#0XR;$\E(A"GR+_@8X>\/H<5]0 M=)^RO'<_O+D5C7%KC$O#I-4$^W^@9\\]8ED'(@9#C]SD[-4>] =;>5KSRH.%#_H+05[5FIUSU&4 BT^KO ME(!@\!II.NV^(U";SI7]CN_&+XN#%K<%9E3W7#M()"O ^(V1WQE-?_A$$G<" MB3]7_()PY#;$\F+Q"WT3G-V4!])CR\$P=:(M7E,.,KZ4D\7(SY[7>5BLXJVG M-S8K_""-UT+88*QLF3L/''0>!%*XXW#V$>?AYLK_?JS!73LIN3GHEE#OTK?1 MN_3WC1=[_U5-J"7C>VG)B-3]5I8:R>!/4O=;+O-![^:\ER:C-Q>)5-)(A^-H MA$:DJ(4<\=SQ5P&,B D@VO)X$?72-T BJ!- M$^G[FWFA]:UMF@D=SH1NM,=ELN7.CA)9"QWG2_1&"Y;?@-F_S6KGZR5'D$(@ ML;S?@CUD)\A.D)W[./;1D!TF>%D%^^>[J6*UBJ-$SBG M>!1^Y\FYDY;[:-(#%VUH R9BH!6*'>U<$_;/<$-K:)NAL\Y'R;MJ7'!\I5IS MV,JZ!]93JN(V6E5&G,P-- X6S5)WP/-%A6_ONF#E#8CE;=;;7B\[A!0"B>7= M5)63+YY_?07/=J;*:W.QXI;X5M^Z=-M0DZ@N L\6IG1_Y-J^ MP;+,1ARG>?.)B&J^Z&9V:IUR.).FZM#8;0G,7FX5=/R JNV6Q6MT1%_KS:^ M:)XY%/_8.K]@]'R^]3*'81R<39<[:;X_4JR1:3SL$5(T352/B&2 :C+14B,9 M('5'E41(!F^Y!!FI.U)W5"R+UAK) !7+WEJR]EK1O3:K;^8L(6WDH#7;J=/. MA+!6(HCN80;VL?#^?933OOTD;#XSF*.OAM%(WT_<9 D;(@ Q@C_DGY:_3==? M3,%.&XY07X\4"V='4A8NU%JY=W ^?*+(.T:@BRG8DTA*&7R>[5NE)"QM]$,I MT??@KT"2=K#QPX,-%N8^"WO*T:)"952HC HP40'F:R=:;MM._GF&!E]7/;[X M?GOB5C 9$"MLJ'D3@6XTQ?)RK0V?WM[KP:GTT,[;BXW"7]WGOK@[8JU!,KI+ MC&4=FVW\)-WY#I9I0MZ^^(YBGJWY%S)$))9WA$^H1 R5B+VV6%#-,5(()!94 MPP$\CGLCKE=7:#GHS)PE M2R3'MN9 !_!TD=;C'N#[J!?.KS;,&^]^OMOP?,_676EM)S"3F.C[YZQQ-<+( MLB/L]/V_B^:Y7^A>?_^\-QY+LUL*\HMIO9:5&QU2^(!=G9DVK4D)TA M.T-VANP,E?;<6&D/LK,GU9(B.T-VANSL!6I1W[2AW?1!HVFF09H7VN79"^EA M\N)TX=+YT+$S7\XM<>CH:DW8-;.NO,W4X=,;T'WO:?!ZIZZ=]!8C?7\AS308 M=P;JZ.!.5+?%]_K6>HNYI*@10!8T3#-Q#(7ZW2.4&,'<:Z7 GPA' MD3_8>WZ-KJIZ6-VL$H]5*]8)CK@?P]%;+# VOGI&=J(S0M\"'Y9U/^]?K">E MCAZ9RQ)%W)7@:OWO7\9UX"9/>]^8D7PEG_^Z7IKZQMA\32P08ZVWN&(SW84^ MF:L3#VO+$WJRJ)A8Z,;6;S;3A:\GV%%\FLD%J/"GGKRV#M1&UJ59V;'9Z:9= M'6@$"5OE4L)S7=/SQU-5?@\GOM^UPNZUE?5J M.\/Q235V5IBHZH?IT[M67,0+(",PS 7@4"QUSXSQV%5;Y-*TI2VAMKLY<,"V M%()P1]#",S:F0.AQ>V:%T./&78['Z[=K==:=COS1TK/)B9%5I8$RVV;/ZWY, MRHTA/U*/![PV[E9V8EO)&-*!*,)_^,0+Q!U#/78_-JI?^_TTR8U9US/$+?DQ MR8VQ^79!9&@G.N#&DO5H#<04G]&CN:?VG<6@T9.5\6'D$G5]&[C/'+S,+:\Q MUC/^(+=2U?"BMN7TQSEZ$ 3,<_ ""0#D&:\:10!R>Y9U=0"Y/_^Y,3[?5!#S M\P2Z/I=),'-? < MA\3O")9[KJ &PX"E!5;K1K)Z2VRM#P+>6 M3Y,'UE9T0<2EU-\$-&7U&7AD0IZ:BM_A+'-'T,6>TN_M98&NG9Q?#BBAKM>H MZS6J-$9=96^PDAC9R9^I$$@LR$Y0!1P2R[4KYF_:3IZK@HU^4,'&:A1^Q63P M4< SGN8-5MX2R<99[.8=O?OTHR00E'RI>[L0O$W)>G>E<51%E;9L6SK$1KNN M@>"-.N6!6?J.QI_Q& G9&1(+:FJ-- *)Y0]J:OW:^S3F&D3'5&D65]+.6*"- MT=(UGYXD_=$6NZ'K8=V:[BMRP'.+@:GZHX&;Y5LL]S-;[!LL*L^[.V,&;.B= M=T^Y[^B-.BVC3LNH7!')X-VUGD7JCM3]#U+W6\ZK/%ZI>Y"R8:TY;@T\EMT[ M/6?<7EGNT],K#VXW&87?>7+N#!G?7FXRA->C MY,WZ+A7:;)O*-MQL8AD+J^-&// (; S<21K6_5)W'$.@HCW4N1,U9D9+C62 M&C.CM48R0(V9;R97^ K^HDG,ML*4T'OJ!!L,>SA)3MHS$?J+,/WX(X?Q?91F MPE;8>2.+JD)7O%%O:,=)Y)J);>5D8@9XJ44/$],/;]5;]NIE M.B!'@;=EZ[I#.XT1,7(^?"+X.XXMMO93<_+FE= ,D9Y_'AUG6&#ZW%)X>C,H^4=DG MJ@%#,GAW=7!(W9&Z_T'JCLH^KWB_0WWKUVN4=*F*G)>K5E6ALUP MW!4)![I_L"SSU)5)+(S9&?(SEZ@ MJO)-&]I-'S+^]%U,R[XI3]9+*O&"2F+7B;1A'+RG'S@^\39[,JYTA/+JD'D3 MCA/8G>K,97@U"Y=?RD3?D?QCM]DCG$,X=P-B^VY1+(*YUTJ /Q&.<*EI3"5L MO<$E_U@A%]5&>^QE.1QQ/X:CMUA;;'SUC.Q$9X2^!3XLZW[>DT!/2LUT;9^W'JJ=!>IV6SI'KFA^F:E.NKU]@.-X#7RPR=* M>*Y[:?_X(L1S:O'&K.GJH'%.!=X8FZ]R+>U3<6(4V7J<1H?BK;C_K^C)IR^\5+74-K]ZI[8;)9JMZ$EF="?4)1PZD(@8/Y\(D5A#N" M%I[K&EJ$'@@];A(];MSE>+QTNT$&\6P^K+->L-1L(;/WO7WGF=V/NN6'&W-8 ME_&6+ZQ[*81" _!D X\#'PO$U\HJ-F6 M^]GF,.HTY)9:-R>,KGOM),L!A?[PB6#N>)Y^KJ &PL)@.Y-7KPP!WUH^N]UU/!LOM[UM-$OY-%K(+3-/9\ 3$_*. MI/@[G&9_=&KR5Z(;OOUL]OI@E6##7SMZQ()_TF;?SDSU?*TTBR(-@;0%S286 MAD8;X"==L%C-I$AV8= \SY$X>,!?^OTWP.J.-#FBC(DW4-V*%++C8[6_I4&8 MJ1'4MZ16Y*Y'5?S85 -YG]8FFJ[+ U$C->);RGGK6*'DWG'KD3@.7-Y>AVDQ M T!)?TM9\P8",U4W)'XX$#/+"_ET%$%*[EO*PZ$7V7UVW<6EP60X/G8HU=IG M\.F%B>++CAQSS6Y%MOE]@Q-EMM7''8TJ3C1H;;2F7JRK-EU)N:$R].D6I"Q,=.W6LK3%C/?X8:0ZR^F4,)N*")]>$+ZB MD_B$Y'P,&-^Q8BBX@$ET3EK@J>F2)G[$^D-U4B_[LS$QE##6@4>MWU(2@K*E M:MR4D--=SUP3?=-?J - 6>!ILF-6M=%F-E1MRS/2;JO.8EM(6>"),GPLK,93 MW)M0K-6F9ATY6T#*(D]<.&P,]QNSJF+*%G=UK$XJ6Q&2%G@*N_4Q,XJLC=<: M[E=<>9]T,BR#I.RWI!7&$$6:96Q\4A962:LV:4AE1V.TXO/KYG+3)&)&9:=D M;:-MG*%Y$ %E05!ZVEU@;=)LJUUM7Q:;!QQR7Q34,N2[@XFKAKBDDCV1JYGE8)*! M+:3P?()O+\ILNE9DUQ$KK$U774_P2$E M4X"(( V.%:><>>E@V2-:&E9Q&4C)?TM)IT2H#H[+A6?O^\J(M#;,TAL 2J(@ M?5)N2%;H$[+<:[ ./13< !<=C2NR5'&&V$ B5V5=ISC7#H;;*E;+/9RI?5P1I;YZ0%G@Z+7:]?$\>D3*XV1Z[M M;I4MZ6A"D2=E&2T%FN"VWF0=U _+>JW?%R%E89UV!*50?:YIJZG736>[77.B M# : LL!3''2%^7' -.6MOPJ73%M1JS0RUIV &_K660 MM,!3O[62A]WC[""S0X*716VY$ I@1>9U2LJJ3G#;KF9SCKUG+3 MU=;2ZMVUV:;4PV:\QIS^?MZV-NQ%N M!]7QF)OV/!8L&T$6^2+-&$U0XG9K7%X=QCEIT:69Q=1,V(@K+PC:%$F& MTG@3#O()%"8K*U6FME3$@8I)RZ5*T2X79OFP%_R?*A:,LW09>&Y]GPD-$XLD M]L188;\8^"1C3VFLYDF;Y6&O#8&;61G FZ$+4RB/RF*Z=+2=BH5X2TUB!LI1:@T9U,\45LCW@NMU6QVGE%P06'5#2]5(2;YBRWL%:@SE'^>6> M TD+H^ZG?;U34W<$6/WMU&+*%.;Z>*BM\2U-CT0OGHTZ4DY: M5)FA+QAB?S[N@SU[4EF%=;:[4$^TA=7MEI>S03NH5G"RP70ZXZCM3U: ]H(C MHGJ-;@UL!$-'?L0-*"@CMSL=?UQM8,;UE1BHFVUIS6\U&+LYU- MFE[879!5-9#T*A\WTEDY/M$69DO[M8XFM=*.VC,BWNV(]M3/\OX^A=E:BXRL M8[V*(:?D<('WNH$03_)WP8M&SBZ4AB!/3;65:&2#3N-6L+SO&O2-#.H'WJKZ M PYWW6J6D$?%&_HY:9&Q%:M.AY-I-I5915?2OF/PL_GI;?0"8X/Q;N!GD>E[ M6&U%+_B0Z1.' :SB*Z+7<-JMJ]R&4K?#AG TT\'T@.?UQP7&NJ.8Y.A^J^(% MKFBMC/5 U ?YJ 7]PDBKKQV.;A^OK<5FPY;*ZG&07<-4AD]'!O"$KVF&)$7-F6FWD:;8"8\.Q1(DBKV->Z] [^@PU M%NO1?7W2UZ3VO*K2S>&QXDU&^$$T*U*KL1V<*Q*^)DUW^"HH6W5>/DA!2UR- M.)&RQ?.QX]>DK%'EQ8&B-;W6?K=;AL%PI63B_1G#U[29N/82KK):RH<$"^)R MRYSTX8VA%YR#S,JHJ*YFF;I=KZ4%UW$&"U^$I(51NU124YOS/>=A)DM5>F-E M9U3R48NF(!]I7QV4=57I,$<0GM8"HIJ/6H#E*M\(>I,L+LO8NA*+F>^%(C'( M)U"8K-,,#II;KENJ'CT=Q*5ZFFP!ENO=J;G+@K6GMB9<,YM(K;$XR&?[ M&9;S',E]\'].A)FA[^N;V/[[_H>'&09VD_QS3BX$^A[+XNC!^",1=^F-WG-NY_QV!. M\&\CLH'%9$ (_VS".#^=_SNR?1U>YO3-F.=<8?[@>U+=B$,_3>QO&'W%=#'Q M"^EBP-SG?Y^U:2U:F==:F1^UTD4K\WHV\W@='5H9M#)H97ZM=2Q:&60S:&70 MRKR-E4%H=JLK\Z-R(+0R:&70ROQ:JVVT,LAFT,J@E7DC*_.C3NIH:9#1H)5! M*_,V5N9'C?+1ROSFROQ\SY[O+='SM_%YDF3NGR,!+HS(!>/6;7]G0\[@,_1U MC%U\P^&%7EE!EV4^^V69;T &J"<%DL&+7"WX!F2 ] #) -D">JT7R> %KX%\ M S)X7WI@AC[\X_]](#\\51[$1YYYU MI/AR,D"9F-_+Q%P!6?&/U/.ZWU='UE-?S^N!ZBU''P7V7T-!R%?H6/X["G+? M!1:I"%*1[WEGG[M[_AG.V4TH"?T:<=VO-->YKLR0(J%8\(0VITNE$=+\L5:# MXD(4%Z*X\)E1-N]=B'Q^Y/,C_4#Z\03]@/<\8.X5$TNW[)'/5 2%>M]/3G]IUH[T!$5\*.*[:(ZVDEHJY54]R=S7UF/!#RA\\UG*?UOR&L Q: M(E_WL$9-=X3&ONN4G8E'7SH M?U",]*(QTGLR43T!])@^XOVT,J]*)1^GM2 MH7^WPSC^3^ETV1K2HY?;S&[[MJ]?AZ+\"JVO%>AID:ZAFYX3A>G:^OM?IFG; MB\6+"^+GV2[KOKXV[1+P!BNVF=]56**(N__Y%\'B_\!KRZYF4O"5XEL3S74N MXH4O"M\ 9Z]_UQU!:A3QE'LT'\35]_?N;O5]S.S,B;T;[U]4>=Y MO0UQ/)BUV12 M-\'9J]RS^V2 N*\3S^WXA!9GH%"6^(B4^+;C'0)JQ8K&+-H[+W6Q+I\VV?J\ M=\15K-VO&W.%:':3#" &\^$3*PAW%,D]U[VZ"#9N0RP(-MZ*D_'E10)8/M)8 MG]-79QSQ#U*K0M<,17:/3#UC)K5CT\V>U^'H'>FYM>]9,SE@%)Y1Y2@6,0@? M_(=/ L[>4=1S.1T"0H^;$,M+A2CP/?T;X.P-H\=]0=%]RO(,&^ND-4Y(R^5E MLJFWJ+VH3D;9,U_JW8JLQ18;34*<;!S%HR_&2SN#L &O[B+O* Z_$P@!(0=" MCM_G[-2O]098>UOQRH.6$OD;15_5FIURU6< B2VN.QJ&*H%/RH&I.*D?VR\6 MOZ1>H[FV^=X0)^L\BZ43LZWFQL3MC8Z/C;&W;6>.QN9) M48(A[RC^TJL6R("0#*XC@Q_=;'4#*((V3:3O;^:%UK>V:;J>J5;FB^8!UYMC M;!4>=&RQ>;[]CMH$F[I>GPY4UJD-)AQECJNX"/<[[F?VN_=1VIR_<8D9>FS# MJO9@8Z_C?(G>:,'R&S#[MUGM?+WD"%(());W6["'[ 39";*36_,LKUGFFDK2 MFDKD%2F[Z]7Z,)VMC8XY>+*7*EJK-$[@G.)1^)TGYTY:[J-)#URTH0V8B(%6 M*':T?")<_*RNG'L!NN&J MN^&96>KU2**.6VO#(8W!E=7EUUH#YL6WD"/; D\&@CPM>ZXB\=".D\@U$]O* MR<0,\%*+'B;V'W8+W'6U_FPY(62YIHGS1CUVQ%%5!"I W)$46]"!4O1Y]%(N MGY(.QX^!#"T[*OGAVL$2.PI*=AXVPDI8H-7NSBYM?'U]5UK;"5P!P.G"=I,4 MC(:*9/^4(ME;3F04FX+HK+'=NDK8P]V^PTW4:-\OMW[S'=VBR>;P?,EBNW;2 M6U2_F,D%"">5;H.;< -?E2K>O.,=0R9UM&BMD0Q0+>VMY7*?(= W/$R/AM%T*&]M MPFHR5HOETP$(]//RVW=?>/OVT[7YS& V'ZSS2-]/W&0)6R< ,8(_Y)^6OTWL M7TS6;FV%EYOJ",,#B[$=I]>G&'Z0=T\1+G1/.65HXU(&GV?[5BD)2QO]4$KT M/?@KD*0=;/SP8(.%N<_7GK*YJ*09E32C4DU4JOG:.9?;MI-_GJ$5V%4/-;[? MR-A?X.9^JGJ.G*IN8Z2W$JMUN$IEYM#.&Y&-PE_=Y[ZX.V%WZ*UJ!UV7>U[D MSKOK_42IBIJ0-SJ^PYEBMT'4YACA$\(G5$SVZJD%)!94G8P4 HD%52Q%G,+/Q[5F P$=#!__<.([@T6&[_] MC/5C!<;YA[T-G$XL[^W(=($*7,Q7'RHJZ9KDCL!;@A)G?;XZW/@.K"_GF&)] M^7VZVLV?6THW,$-]'A\6#UX-"D?U*69*LV):W4K)N#"=,XGH#C_0^_D2Q)(?QO'GY@.)OG_. EU(A*;(S9&?(SEZ@$/4-&=K-OYDEFF8:I'EA79ZND!YF*TY7,9U/&:V1 M)0E"C1EZY-8(.JGI;ZK^T]O0?>]I\.*G_$WTD;[_4(J!4,' %Q),K!=7QGS4 M%W ]J7?8@]8=1$U1(X!0Z ^?Z#M<()_K[2P$<@CDGKN(&&'<"R:\?Q>+*+^Y M/\S85/!LCG.L_9:OLJM!CD7<3V#16ZPK-KYZ1G:B,T+? A^6=3]O<*PGI8X> MFHLK=M8];L+6 MI#UJUU1I/9YSV=H"FNS\WKD9?"O!CN+33"Y@!;>/QB-?W(AJ[5@7G5Z]/RN/ M'8T@8;-<2BCV3D$5B-?,*MZ8-5T=-,Y9P!MC\X6]A]_#B>\WJW"&9G^FI$: MUT)SX:?1;LASO]F)^UN\^*Z381W9=;47^"U/GT:^+[!$WYP/(' P'SYQ.'-' M\<4N^=?K1X'0X_;,"J''C;LO2L[(X6&6$+< M80)GI>)NR);G(\/KS=3;"F)^_ESG MT&6K>#"QIK*>]H+QEF\N]K,K>R'?#6J\Q!J,VS'1KIJ[(_ 4 MA^ OOIY_O6,W9V;/$=30M\?F+?DCV0BKDMS,-#RIYH>3SF; D,XS!R*K M=FV[HA@*\&!6 2GJ'?_DD#73N#=A "/2ZC9-6IV MC6J,43/9&ZPA_K/%@K0%B049$2J<0V)Y_2K[F_;8GJL*CGY0!<=J%'[%-/*Q M2K96RV#M>*PYV&/28$VLMD^O@0'AS)?:N0MA7^")J_9XN^UYK<5^VE[O\*3; M=32"RC/(!(/?<>1C01^R,P0_[[4+]EN0"U(7))9WU2+[M3?QC&]08S56)KB] MG%;LJ5+KU%?/M_]NJ'6CM>FVNC++._,0%Q>=<9+E^R_W,_OO&ZQ5SWM%8P9L M#YXW8[GO#XX:-Z/&S:@*$LG@W76R1>J.U/T/4O=;3KH\7@"\7=*:2(D+VCM4 MAIO5K+.(H\/32_@>W)4R"K_SY-P9,KZ]*F4(+UV.@0HH=K1S3?O4\&]HFZ&S MSD?)>_]=<">'5BOP)GY@J1@I'CKE034XED6-H&$Y,7W'4L47'U'Q#I(!ZO., MEAK) /5Y1FN-9(#Z/+]6KO 5_,6QP%(S[#C.9+VW'C'MO=2=$ [T%T^=,AYW M&-]'Q2?LK)WWQP@7/ZL_3[F?[ZDJ=,7[^89VG$2NF=A63B9F@)=:]# Q_?". M/J'C1#,7+X'DN@?JQ67\!?&&MCQ;^)NCC[*B\/=:;@EJU > SL-W) M<[UIC*H2D5A0L2;2%B26]VM$MY2J0 J!Q/)^BYJ1G2 [^0.J;Y&AW+)&(+&@ M MN;2)I?*S&R3[OE[M:0!WB-;NS]BGUL)$0&$R-Y(>YO9<$#H'"^?4,EN$-[ MDT;F4H_?=M+;\*V_O^H.>DISB^8V=2-X0A(G'3M9GM/?7YCN1Z$3Z<'%K'>S MUQ_6JR*QD\G8LM)61,_:B0.OR"1I]H[@+V2^3X(I@='A04)22D+879LL ;GE M;;9+#\1]?O3UDMM_-N"B8N<_9JF1#&ZP^O.?Y[QKXAH',]]O'CT2P!Q6S,R6 M7;M#]3>&S\N57S^@*>Q!N>?QRUO0%T=$N\CP+D-YM__:FBX_S#W@9. M)Y;W=F2ZL6U=3+TN-:VE&WU]CM>F='/A4%0%7\+4*WY'LL)W\ZYN_N!2"L+_ MDGU^ $QKQ_#!I?#T9%1,C(J)42]?5)3WVFD59"=((9!8WI^=W/(9R(LVO7BL M'N-Q5_!+7."PH47/O<#&=3L^]C)UU^TL1! 4P"X6Y!V)TZ@C*2KU>FVW%]4. M(X5 8D&UPT@CD%A0[?!;2F1?TU=5QDL@3"Q=JS6[WL2U).L8W0SZJJ=[TQYW M5M]@^][\^LJ\<>_G^RM+?AC'GULX)/K^>MG6U[LE\ U QCGU^I9O4D35L5=- M)B%S^7%F"9D+,A=D+LA<4!'-V[F9^@W(Z)P01.:"S 69R\_G!=^.O=S\NTZB M::9!Z@-2*P_2I8G^][3X)U' M73OI+4;Z_D,I!D(% U_(H0"]<&<\;4X\S)YY-?Z@5\V%HQ&\1M#PS5N>8I_K MC2>$50BK?C8UBZ#JY5*SOPLI[FZ0*/HB$N2:QA*X,EZX%7*00PKW$Y#R3@J+ MC:^>D9WHC-"WP(=EW<^['NM)J9FN[1*%W^7="O[W+^,ZN/*=:ME;,Z.O)/9? MSUD0>VN"+UU+>FLU='6V^6RYY M:YR_L+OR>P#S_;81G&Z;A\K03'#6:PXP?-]T[-:5@>:[7DTD+9;,HH9WY2 , M*(R;5%M5UX&(P^0=B@CFCB>+;\I&[-2?&979Z>,MMC7L=54Y*D[7TKE# L=WGX#Y\$0KBC" [59K]^ M*=VMV> S!%G?*;^^-<[?+OH,[40'W%BR'JV!F.(S[)3=BGS]LR1%DX+AWUFTK:*S5;]ENP/*BU89"=H! &+[%B.OL/)XJOB"'D0\EP; M>;Y?T'YKK+^IB.OG#Z^D<36CK :[Q974,NW5*B(MZZ4BL$,LAJ%UG/756LQJ M(4_MJN5J'H'!HRH2OV.$9^O.AW (X=!/O"]P:YS?D@?D-X1ET!+YNHOR"JV[F1X\27%3JODF+;I768@ @I"5=N"P@>6 M'I]^RO4.(GIIX:[UM>GJ/IC\>3>(/^8,7H>=POG6+Z#63^+4YXE:;KSQ]0-< M*_N?JRT"_/UGD/7BXOTLU%KN[M/_@G_NAS5]6X\@TBS/S[Y'#0H^YM[?P?_[ M&7>37]$[_@$7^;__ST-FOD A9H9^&/U]#W@/N#P_FY'\ M??[:_=^BDSC.?PSC/.GS=V0#;P@X/W#TK\;-%RH)-W^3Q$<6J@WX]'/P(( SOI?&>_Y3Q\^C2#:P=>) M) CG "X^*[+^Z8K \?/Z^!-'ZJ->OZPVVI62U!OV/WX^2+_!F79[(UDIC7I@ MIMV*W%5D..>NTFLW*N((_%)M=,6NU!#;)64$_M"1NR/EN?GY;81^'-Z^ML9+ M1J;G.[98%I6&TJOVA[("V!9'C5Y7(TB6(]@/)^T[[=/=- !\F9=K9(B+-3+< M;J9UPDG#\PY.=3R)=%N3(^=;IZ*9NXO#+V@D\;'T/_\B6/R?7/RE7K7T< %>T)8N3_UW'(:7G>HHW)13U[=* M;ESRW1AZ7\"/!B%UJ3M3Y/-UW/!7$&QXX,?X$( E*$$&2"#]=N5C_B/Q3VEB MER)[$T9)[N,99[4LN>N?OC'&=J"GIXF&TFK9UE'"E;+76"YZI%PK?Z^\[-=, MY_LM"['8-J'WGH$]')C,MU8&S->PH]YBF',(-QOE--O+EZ%C#E,^1M&@*F-< MV"'GM>;V6!8_?$JR\$)CPO-(?Y<::^#O^G[.67X?C+*QH1N<'$H5%UY.9*3P MHX^E'I#P5\3G,4J;"/ 7 =4!GQ2/*@ZX<:&BPN^ 14EOH/+5 *! MK;E\$!BXZ]/BP6NO7@P*-2!&'XMT(%" M7S.L>,\X :S;L'W7WMDY&N@F?*5;7Q].R_2$>"XW9QV@ U#2DF[!A^9_OX-> MG%XZ>79@7313[R+I^ C_MEZP'*D;NC0*" M4W(E7H8IV,<-N WK%MQWP2BK='W:OXGVT:)O_\4(XGLG\^ MG,/!99)LXK__^BO+LH_@"1^=< 8!B>XH %@1\%0?C+\"T,:CX!_ML3N/=QF027(LU?7/$?QJ7B M>IWF,)8[1O=&?P"!QMG<'['2!R'L'42QA>N#+WQ>2$66X(Y9M8THA7!(\B?, M>',V]]=7$=*S!TP*F+R[<$U]G8A@%TO7T"OH U,P73LN!DGKD=_7*L1T)O?$ M;+D=9(WY>G:K0=)7SP6//3VUF._\\(F\#Z!$2>JIW5&C6ROU04 O->1G#]U_ M28D>X^LG%>RY(_!3K/V-,AU._Q85JD*6U;@RFKGJ-J32434+PNHJNQF%^D[R M#5:2N>8E3;JP=Y0>YAT^GI[&G3]P:*? ML!#Z&7?G^.#L?\3 MU_KSFDNP$V$GCZ0;P*B%[A3PKU3C^,T./5K^E@Z;;_? M)2CIBX5M)CGJGI GZ\O=] :0-G+V]8]>!+>4"6 M]Z\"_(MF1QAC4=&WM+]LJNPJ[ U,9F7'AOA2"/.;<#*T87H::-NITUKIBPA* M7\N@U 6!R S$.J(5;H#NO( ;_U;#B\8:"&N7^YGGB!0"0554RO?788B*FG^" MX=S=?7+OG.$J#3\#QK^!%0--)WG\/W>E!HB1X:#Y6@"0_9(:*]U_L_(%_ ";G!<^CPN'.@,XGEP^1DMP-_/6&K?E?+\$O@O]ZTASN7X MXP8PC^0"F(R_N'B??H3 ']_49,G.7_)2GNB<$T5$0PP V^L+0^;-O9P]^ MMO.M :8)X$@+%R8#<_\>0A]8 5@+6I", M_O+9PPSR?2QT3>O^D4F>,HB?Z\'3'O#9^73UG"-X<%CGPKTJ3DJ6 M#39=F%8)LQR[[P_43HXP< M@$.Z?WGM7DK M*-03W*7K%&-JI 5(>%/7;,*D-=HD#4WG"%NS"):U<)9:,+AU+LO4/[\MVJ]C M3E?K^;A4W?1Z3-^.>#>#SO6WE*OQ@"8IW-_BAXY77LARN79D!AI9I.PCI;E>X-)H>!S9C#BL,8Y&%0>M#IJS M#5W5.=R58U'SZQGKB@- R7Q+F67TB-IEW;TJ=9FD5>M@G-Z E/RWE%U#(6?E MI317#^XV&F_9@[PF1$ )WY3]FO1897M;S+ Y;[+GE1JYKQP:8SC1(D_MQ-JI M>(O"E7B,5HH>22HKXE)9M6S%D;>ZHJ0D#NVCJO9(FHT5IAT 7ICR;3 M[K$CZX,F/<=Y;YM4!H"R(/YCLY*.->11'$CCB:5A0,H"^+G4FO5+!.9X;$4PR2DSKJZG<&>>07QN[.*Q'6:LT1N MR11EUJKMP2J*O^O2 C'H6G5YDG&3 M*2%CXTXY9[\@J6H@S3<[8[I"30ZJ>$MKI-JRWUB) M,TA96*@D:.F-'N]Z>"J!*)AOZK*:.H"R:"=Q?9,$?6/LN4S7(KE^N2;,,T!9 M6*C6@'&(H4%&ZK8=-!I4+XSFS@!0%A?*Q'AAHPU<0\;D@50A#;%2Z<+'%Q=* M*X\,H\5Z$6[C+$LG*YD#:JBQ%Q8JJHPYITF2?;6E;#Q"KBI;+8*C%A>*=H!I M^K8D>;V)$4VU;4_?UG))?;U0<O;$:G*$WG#5VC"9/4! (W-),A&#I\O>L9/TB41U.T9UBI$2QGJ#2VA9)_T-[O/ECI( CE121XTZI_&2U9VVR/4HUG5+)EDE2/K$?''*\*@PXZ;-C;KX=- M3_(-/QGY(Y_;9Y?0DI=[NV69T&9JS=1[$\R8B(:674++PRBMJ8N5+^(M1Z2P M:,DS49I=1,L%6X\FMH_5U8#OJ,=VA5M7Y<%%M(RGG>.PE1PR3V_OXLD::W:E M@7,1+4?& M&MTZC):RM,&7/=8R5_1N< DM*V-2$2UG)ZKL*HA&XH'QCD)V"2VK6D1K*\-U M//=8W^RZ$Z.\I+-+:#FU.'Y4YI.IRII>IU9./,[L#BZA)='0LR0QDKU,)MEZ MRA[:]1I_&2UMLQ>H2=-JJ=NJS,WG@Z:Y6SL7T5)1,J4_65=PG-7]Q<2V6$6> M.1?1YZ 3->;;MF?W3,@;TH_L0>M4<5;FOBM:QF[WBJ,9MUG(MH M2;7Q^IC/QFT5$S@F6)!9OQE=1,L6X[3;RZ;(RCH7+_CAH;O0..<26D[Z:U.0 M"+.NUKQ66? ZLK=@LDMHZ2]-7N>RQ4K5_0;;:0PG\1DOJ6!_*[&SFR&[=62UZ\L[CJY=]2[FN&!6I9:BR/@8>-G"%QH>^ M>!$M]]ZTEK7T30AP[6@GDDY4A+US$2TGX:QBS42=P /A&#K+@3_E1]E%M%2; MR:PM[9E8MJ-UQ@5IS6WMLDMH&2C332T-^(IG]_FA/-T/^]O51;0,4R4Q56K0 MPB?+K-7KM>@%GJ-%0?QKGY]KLKZWO6!1)JG:D1VV<@0NB-_:SE-NQS2F\A9G M5N/5:KL#T'(1+85E?QP9EHO+KM5:,D-'K&-K\2):+A5Q*LOS$>^1*77H'RL[ M9M:Y[%M.PBK>J3#EK,Q+U:8,3"I"VBI<][(]O;]-AX<#']%#P+N /9U1F,+9LH$ M\6;'I"8^62V68X!"8PJ%R*;/4&5Q,5G(>I-H9G%7' 0[2$D40;#%IGK6 M;^UP>]#C\.-BT2M7("E9D/^PVN9$DIL,<;OE'E4*()8XRR[ANNR/S7TV2@/V8R&C1UVA<,S"M!!CIO--%9(6 MU90B0E83^.%:/30%BE8/#KZU=ZL%,9+AI>7+9L^:494^-CYXJ'ZQ@(A_W"<]=@0KS6GM!&<7-N"%G2M\9J?T5,05#,36VW7\-7,=R[M%?0,ST0&YUG5 M=>V^-V6P>KOE7-PK0F9\#&H]!NSMD_YTLUI)U,C/+NX5LTY?$ZG=#KB68XO1 M9N5@DC0N[Q6U@*<,9;5O>:ZIXZ&AKJ753+RX5_38<+R+9AM:==/10 X'TXG+ M7]XKAMADCUO*=HM/TNDZ6?C#K>)=W"LR2YK)K>/64WO[,;TL1YMCF;RX5PR6 M5#"J#$1#=L/*!!-#FK:,R[C>:8")3F)MB$]Z;;[,].N1&%[&=9-J6Z'?U!N> MS=!2>V"2=EN][ 7W*DVKW/6'2]6N>8NPU@C3^'@9UX6]MM(2?;3%[#R[B>K+V,'K+;55/ 5OV-FHGJ9QF%[U@V:_W@BCC/ 5;.JK:V_021KR$ MZ_:\XFC9G*O)^NA@+>LS8MB/+^*Z)+="B51KOB!G;19/SKV*7MP M"=47-[VD;_#*7J=H2;R(Z[87\5*[(4IX3TNKH_&1'EN">!'70=#I MR;9,!RK66"BU/3_#V2R[B.NXXU@R/<\T>9+V_?%ARNK+Z#*N'_H94>-)-Y Q(X*_KLMG&B5*[ARY4KUX!H&B8!=!]*!(.S M$H,0NB0SB([3BHXBY)%HM7R,+HML!4";,VOGF *SL=NC('SCB+C,7++;YECC MNQL/L9@Y/1IL@AW@2%ERTQJ5+U92/E+NHT5#4^KY%!^< 8[/]H6)G1?;3@MI M;=5VM4\A8C\?C#PV@A#'PGKH+"76JUDS.Y[Z? \)D.^"A1ZIC,;NE3+-[%2;VV,2^*H/PDT M]6A% W(SJ%4+V0J8U]Y:?E5 >T;PS*,5-=A93>W,I;:HCXFII.JJ6\L)KX&/ MK+?:&]L39E7#::0\24LR*?MTUQ@6/%8%15Y_([:IB^<$SCU;DME4E5R_7 M.',Z(7C*ECQJ$BKJDP(6^S"??;IU\+V/0GV^$!@4P-&9XYVRO^,PP*."-/XP MH"&\USP.=JKD'9<=V]6%N=AJLVZMR U&9&PR=((9\!\B+Z9',(%_E7&#T)=FUYIKG__A6;L)Z/0I8^>9>X#]G>!R+LRMNI M@&#RW-5_'7YX^N;!O?W^I8.[1G5WR?T\2N!)_;M]B,!QS:NEX?A=]\U2[!=7^?HFC@S MKU'PCPHWA?V5JG;8$XE_[(FT;Y"") \UY90GQ(3J]@/4[;O:A:+?U2X""??) M6]*N(&GBN>Z(8X+D%W5KIP29 MFWJ5WA"JOV\(?5?3V+!L_?4C?>[ M]_)9@Z;$OIQ6SMEUX4YX,V-73$L$/TBM?:](26QE)8];MTI5 MHIOA/5U'!WVK)&[5?6._HQ)^SJ"<<6@@RZW-EQI7W]+JN^Z M37#W-<72I"=JNQ]\>-ACF_FTYP(RN>[AH8_? M?6KM[_^X?X91+Z)>QZ.68IV<9!I$M^25!V"Y&K#LIK+E_O_9MY4LY?[OW^QCR*_5BTOD TN[)JI:VUY#78<('[@&?C=H0);2O%DENPV M!F)FM>**^8E:2SE!E4S\[H%&L22#T867JG20BB#4 :A["M0]O2(^!S* MG-&PRR@%E17K?ILK2&JM2Q:YB*%,'Z[-[*"WSB$Z47?'E7G3S%8"**/N'C"< M3E(( :'L/5!4$L?1(S#Z]Y7JW2U&N$#T^MF6V*=1J-&EY]--/]OE4SG/+S2W M7;#D4<2F4(UE$:%1:*Y,6VCZJQ+=-CQZ&*9KXY*3%%I-Q&JE'[J%JJON9DELN;&8%9 M]7AT2KA.V'6&#&PI)HG2&$0SB&80S7XDFKWMIEJ,2&R[*8AYL25D]/J KM2J74*Z"F41N+S6S#8.NCL(LA<_> 8702(\_DIX)H%A.R0#2[I*/J M\P!V)D=5"E$\AIJ7LDBF).O:@B7QRNK21\0W'57SHE!+^UNS(U)5M$4.Y?)$ M6(7]3]&[!Y)*4M3Q#2#T5$%/U;GA:UY&PC-\@ M &S,WS!P0D_>,"TNNT(ZS2%Z9CE-K\N\JVE1H[WG.;7),NVD$;U3ZBO9O-5E M*\*NURD*P!XEJ;.%:/QLO8?0"*'Q9T'CVV[!\I8P1RMQ2IN4K*_2GC MOK(=T1@U7!,SWYRR'-:Q=75<'.Z;.^,DF<2P,]UQ0&C<':$A-G[L2[P>;+S! M"+CW@;'2;[G;;E?=\EBIWVQA-K+H2W&X2W.)A^WX(I9T3T2:>1[HD;UZRM^RZ*NI.H MCZ539>HLM)'-FAB]X2MMO;X9"('M%83+$0R:)-$S!IC\;-6#\ 3AZ4J"5,[O MM)/3*%TK5 HU!,MOV^VVW]J0O:A/IH-9;CY3^TC:U*MU7M858<@61@$ZDL!X M(Y DP^ 0'2$Z0G2$Z'A6OUUCW!HQ'9L<(3J[PG5IKB#^,FK;<:+.,W*>VR[- MUDP:9C5MQ%?&H>W(W#W@!)W$\#.&\_ULS8?H>(/H>(,A@>]#XZ#:Q]J]-KD0 MZX;1MK%)9I-:73I*^4W/'8X4^@V_P9CF0NLV770@\F8UP+<@/)!-4N@QND'/ M'82W2]&(CGN7C#@:?]^"*2RS;J-;IDHCJ96>ZO*F/\[-HDZFZ+N$MQQ/JSFQ MFRV:;,'L9UPEN%<(P@<)FDF2R'MGT]NH,O=,!Y]JRMS1P_YH@90EP&S+A OH MYUYUP:(KP*2WJ/(&4Q=KLY3[)8>)X0^75C-*7R0'5SV\X+2 M:B 4/F2R#5.,\[L"4((H U$FQBASNCB64SC*TIW2:)F3ISR2(5!=&#>9G,E& M?2'2&%27VVQO6187&3)3<&OHJBV%($?>/3 (FT1($D(H+C+EP*!+1\O.$9Z7,^JL5Y)]7]QXXU%.6FWL-A.;*+L&7=BF2R/6YK%) M$L]=%@;7_;64 M =,OT9%\ I9G##>?!9)P(C!S.'&C56W_WV>Q(ES1X9E[,5=MRY+GKO[K\,/3 M-Z? J^Q?>BJO4Z%@S!ZE/F7IP^53-4B%XAE^LH<7!/EGL):EVZX12, O1P^\)2O]Q3/W M2!!.?!@J*V!3]Y;ZBX5&Z!E O[!G@,4]_GO.(CR0,9 QD#&O!&)!SL2/,U!E M(&,@8R"6W0)GH,K$EC'O9X="SD0(9CCD3!PY W4&<@9R!J+9;7 &Z@SD#.0, M1+/;X S4&<@9R!F(9K?!&:@SD#.0,Q#-;H,S4&<@9R!GOA,5"CES-LY\OG#A MF\IS]E;(7Z6,:ENV\RL,#QX.__ZCJ.\P+%3357L7=IL*WN*7-]-T)_CIZ,_A M"_P*\PLN6$$K1J3_HYAYP+?@P__>8?C==ZT?[)Z-=^]-59\M=><%"95GL_J[ M;RJVI8$_MHQUH@H^'KL)'@B>EBAY,_U__X%2R-\XDMS]\)^_E)?QTC>FTY$D M8]RB;J'H=W6+0.)>(OG+NA74&'FN.[=:9_QH\9'(#TW=G/S@/P1[8YXW=XM0 MC7U7T]A[G+PM17M:/.5D@!V%S'Q$A L@^(=B=:,RU)KK04N"Y2812M![0_^C M.'\]?#CJ:;F+JQ;*^(G@.\@6[R9$7Y;*IT4'H"D*I>A[4M2VP?;X,\0'2DL\ MK:E(A.::S*D;$Z+K,*=B#65P)X3VU&U($4K?EA2]8D_=1HNWINX:0"*61K"\ M']/V(QYMC:Z^1M>;78M^9 DN]-1-B=[IJ/E$;4]8>'I6SE6SL!M>P0K(+J(4=ZHU%88M>]%746_60_+8K8/P(RZ M>R!((HD@Q^58KU-IKP+*+E^C-N*"T#'"LK_/6>_YR_#U^7K/7P(R4LDO&HPK MED7*+FXK!=-!\\U+6U1O%H?6BEH)1YBBPLL2TE"&>$;NZMKC28:&/=(@GD$\ M^YEX]K:ORNY[$C7;^BDS-:6T3NTW/.R::P#!G: M9TS@K$*3),U"-(-H]B/0[!+>JG-T)_L2E)6$^MJ=5T5<['J=DD]J#:I2X>+B MK:H13FD]+YJ&:92KY4*CQ1/K;>"M"EJ9H0B31$@*NJN@NRH^K 0$%8[U_%F>8%YNOIXL3BAIY1Q%%$%R)Y!23: M1V3$-XPT:?D97R*#N#.,PI+$&:/.?K;>0VB$T/BSH/%MSV!E M8-I6LS5O(HL1:G>W?+M4L2Y])'\)C;-RR>:&C&$CW?:6P1EQ+%IU#D C=?= M,4220L_D&(30N#M$0VS\V)UX/=AX@Y%P[P/C5N2$3;M:%)4SN^T*\TY?)I3ZS+2PIMY@DKE<8&-.@:OXF F M>.&-@'@C=&I.:V;#HT-T)'=>.XQ&(#I"=(3H"-'QK'X[B>DT:6U1*?)=MX\6 M\GEK8$2>?9JNDTQI*)1GO#&VB.*:&HX5/KC2""+Z* 9-8LP9\RU^MN9#=+Q! M=+S!J,#WH;&3'@HB4^X-$4]-M4OYNKVID['QW&46V:Y?S]4F#]A1&"3)(@SYG/^K-U%^+;IP,%KP??XF#]?0NGYK2E]>QYGT3*I>G&]TQ< M*D^C-K]ZC:+;,FS4Y#&[ZV!^!5B&3'"Q$$00!JX[%,%.'C\8@[#4MW7PJ:;, M'3WLQQ9(60+,MDRX@'[N55HLJSU$*!RBEV9YBZ9'!U.4*/L5NZ7%" MZ-/%U9S""=G>(FI.I>($FZ2Q,]W10(2#" <1[OH0[FU'HCDM;]KUZ9 P6ZT5QJCM'E==1(UP M&#VU"E,RWT$P;CKJURNM?FT=(!P5(!R*,TD*.],]RW4@W'5FXL4.%BZ7:AR[ MI=]@O.#*6/&;(E?I(JWRW*LI1-59EF.37NQW\AM^B1O>I+5;M;-,W-*-?I.K(N\4[4T2PT75\TJ[ZZ M1?(XV\ZK?J:K"(&9%<3Z8> D221Q#-9@@2@#42:F*'.Z:)93>,M2;MTTERB> M1Q:^-$'SVH1:>%'GV>:XCI]RG?R2-Z9"KSQSNNBJ)P0@%Y;-(VDJB1*P;!X$ M.0AR$.0^X3 C>7Z3T:OI+%]N= AVG;,FHV+4#K-4!^&Y^K"MB4:GMIUK.C_I MJ<'A,HB\"SQF6)*AWKO\O7V0@\=+B(E7[3([1Z!>>>NX?:$[2IN+7)9'6JMZ M84S%)MZN;,AFTZVM1TB&JNLK:3 UJD: :F&\'48E203ZS""HQ1#4WBS9%[NE MQ]C0(R92>]C"V0*2:I>RLYK35HE\U#XSC1Q]!$X]6D+9 M@%&VYJG+Q+^,66(YMCVP46CNOW]=&PT^RG MP*OL7WHJKU,A9,T>\3AEZ>;X-G#H%0'$AR^#T,?OVE.+ILIGQ A+_GMFL$V/3+T0-GWDI_ M\]);ZBX5&Z+9"OV#-@,4]_ONGE@T-.0,Y SGSE7,^0D'. MQ)$S4&<@9R!GOHQFD#.QY QX.P9R!G(&<@:BV?5S!NH,Y SD#$2SV^ ,U!G( M&<@9B&:WP1FH,Y SD#-?13,&AYR)(V>@SD#.0,Y V^PV. -U!G(&<@:B6:PX M\_D*FV\JSTZ\H*GR;-:G) RBG1U=3U3!'\9N@I]INI8H>3/]?_^!4LC?.)+< M_?"?OY27H?90WVY>LQEXMP+/?R _Z#U^ M>_*#_Q#PC7O.Y2UB-?9=56/OL7@WLO^RICTMOW,ZQ(Y":#ZBPB5,[(_DZB!$ MY&T)46NN!ZTMEIM$*$+O#?V/XOSU\.&HI_52H!UQ,6R[,2OB:=$**$50BK[I M*K#!!ODSQ =*2TSMJ2B$YFKL*12Y1[#;DB)H4,&M,(9B"0TJ*$5G,:B^WBPP M<.7%K5D@V/N]W"CC)@FGJ6095+B( MPI/BY+O-9F;:=QO/3YA=?-15MQ0+2?' M\HN!ZHQJY0J3FD9=W7Q+$-TF/EEC2(8L<.3"'BW7H@"(C]\]4 R9I#'F3%5_ M(;;%@RP7P[9XK QBV_>Q[>VBYOU2GR,R[2Z%3-55/4W[-:]:B;K4YH1F>D-^ M8.=%61OTLIN%6G0S/B ^=?= 8F02(\Y5T?SUVJT_'MLN3A:(;4^6>KX"XU^& ML\\7&/\38)/F1*KD\)DA[_49I%QWVM6QK,X.5;O&6LF4T#,+K9PJZLA M+KEF@$YL8'DE:?+8\#I1:?+K0*>XA\E ,/O1AMIW06E.^0-4G_6[O)'*IYBT M6/=JTJ6;C+[$HK9M"&2S),@\YF6TL;UATFJ/"U:/A>U?""R)H=!8@O@"\>4L M^'*Z#E51.[FJ(V23\]!EAL\/[*&RZ>2YMA\UO.6Q-#7!"X6RF1*' Y9M;5>9 M26!J!2W\*!Q/LD'P.@0W"&XGJ4X1@Y5!<#N'EPNG1WZES.?2YF;N\%-[0@B\ M%C6XJ?:\,A[*W0&B&Z;6Y.=U;"*$X,;A5^P< M;??^! A1INFN!K-.6>4Z?)S;@1H M&;3L(^DDR1[WDX=N,8AF$,WB8=E]%Y58FLJO9S4<1?0!VJTT9J@IEZ(VK3+D ML#-NT';/3'FV2'2R-.=D@^"(H%0K7>.S#M5@=(":?"S-"9.\3.OVZX2 M1?,CLU&V^<5 =GO6)FL4VE'[![AI*T?KE%3FRW(5UTNYPG).^L#N#,)FSFIX M_GB=@C2 N'*QJ^7S':#M?=;O$0/:_" <>4WE)!D-V5F0'V\6N&" M)+M!?8Q3W,'KMGN_66X,_*K@(5T9K,,J:\TMYD=L=\]1,9NFM4W?--I^WV#& MFVJE'-C=0;C!AW;W;534R7O+I>[ \CDW56+B"L@":^]$%ZW0E(W97N]/Z%K) MIU;93(_@&;ZN9*KY=5/-M_-10_QBJLV]B>*Z",;[TPR-"4XNS04TOGO D21. MG\NS G4>D@6&NMXT%+Z=MV3;VUR-EIJ\:3"5?'_6D3.5?-1!6[-4/S^?=YNJ MB6DF*TL>TZ:[(T!CZNZ!8),(^;.SEFX_[[@N@E.4QIK&QE0HO$\Q0J"O+K3B.VK#*:VENRB'U M$I]GV=FVCDR'ZBPPK(*H)!I-$J^D4$*M@V $P2AJ,+I0.--Y_&U56UO5M4V# M-5.UU%1+BU(G+T>-A49ZTIUN17**8$ACW=A.9WT"#?QM02@3QB8)Y(RA3%#I M(5E@U:#;Q<*W'6ZNRU+#7'LT$Z?#M=:5V45Y4H_Z[B%;J:X-;EVU^$RS6#,V M,D9:6(B%S-T#0201YERE_J]#Z6,=] &I^%.LSDOX\RY>D^@89LO<>&Y*/7XE M&F0F.^P8LW9)B(T_;ZZ8E3EISS=\?>4J:'=#S0A4 "0+RA#12?*5>]H?Y="+ MM99#*OX4K(R#5?H%S,NSB*I62*^'E'&-JH#75%PF:K-P*8T%?4JW9&2A$LZ( ME8UYJA"8A6'4(9EDT??,PBNL<,195L)>CG4'UK\X91A-=/TJKX!&^_#"^/;T MC!Q9+Q1@ Y2_'NC^?L I':!-G*PS+J.5D3+E#,;3:KJ/LE$[0/5>7U=718LV M%]7.JE@H=^DESDET$'!(8TGR;+6!(2Q"6/RLC0EA\>IA\6U?Z$HKCMOE*C+A MZQTAE2;KRU[#C]KHG:FJNI%XI<,#&M1MK[J0W-P(P")U]X R21*'A3O.>SB' ML'A+L'B3,8AO8*+?3U$+UQRDD7(A5R#8G)BCF[%Q7.+S1:61+3:V8E=/-Q:C M6KU6$0-@8X.*Q21*GM%O^;.5%@+;#0);'.R]KP)4>FQZG8;2*//U.;M5%#9; M1L91]YEW7*4_33>V'7Y#5C/E/CW1R&UP#@V"$ADV2=)G#$K\V4H'@0D"T]7$ MXYS1/V>*J6&5\?VVF1+&BVUVMK4JI:C]8QI9JM8F!38IX8*\% M 8HTE608B(L0%Z,.382X>/6X^+:#CO6T5,;/K31Q*OCL8$&5_!P;M8,N,T0- M3Y20#6_8E+DEVZO%=A/B(@,.LG02P\\8K!@WG8]UG,AUPFBL27IUUNA-QBR^ M ;FYM=T7' 3A?8";0> B MFD31)W@^7;3/*1RF'5SV M\X+2:B 4/F2R#5.R!9+,E@[]FR,&LN#J?Z*T %"(BW%,F8'N2*7%K.51"C MFZXK6;VA-?.QB4K49**)+61[@V0\B=>7:4M>4", :4%Y1":)LC1,IX:0!B'M M)FT\GRGB'=%M=1%]W,OJO5:^6IA$?8QTB6D9:>BK!N*1!74D%S+]32] I" > M$4WB%)FD4%B!&J(,1)F8HLSI F].X2M+=TJC94Z>\DB&0'5AW&1R9N1!-*U: MIM_WN(XHMHIYIX_*^% 8A2!'WCTP2%!D_S@?!$(4YD??(E9VK5ERU-@DN ((8/HI*8@RL/@@Q#6+:;5IY*4-!JZI(4$C+JW98 M0FF/#37J]-WU1F6**=JL(!2N8.,5LQ@)6G"2#.+KT"0>9&2\6THJ#+'[:RD# MII\--9XP=0*69PPWGP62<"(P&9>S%7;GP*OL7WHJKU.A8,P>I3YEZ(9?K*'%P3Y9["6I7.8]4""W1I/ M5(=1,U:O/-\&SQQ:MG\@R>'W,+SPE^+HLIGR 1'^GMNN$4C +T6^HN%1N@90+^P9X#%/?Y[UMIID#.0,Y SKT6;0L[$CS-0 M9R!G(&>^FJ[:NV#:5/#87]Y,TYW@IZ,_AT_\ M%68-7+(R5HR(^4>A\( 3P8?_O6L4Y4P<=C-\$#R=,2)6^F_^\_4 KY&T>2NQ_^\Y?R,@SZQK0TFAR+ M6U0N%/VN!03>V?3]-Y(=" X7F4T+3ML&^!:4%2DN$9DX40G,U9@Z*W"/8;4G1 M;SLGE*'WAOY'?K-_\)+E+XII+>K 7?U(VZ4&]V6[@FQ*93FJ"NAGIGN-J:95S+C?F)5,\X M' W%H ;1B4QZH>W2KM];(NX5G.,X"D.EMMW88:ETQ;#]M4%,M48;]0>%_A^ M->I3Y7#;GY3U3C?-ES=\>=XG/$_T ],IZ'J&)3&432+8<7'Y*U4DB"\07^*% M+Z=KZ!.UTZS)(5:AHI(D[['EV<#TA\MIY/W.;#I=5U<-*L6WS&%6<@=>I]L* MG&9!OS,TB>%$DF(AO$%X.V-#,PAOUP-O;SN^"C@QL9D,VD*KC.0;RBCOMI=6A0FM-^;1\T41$-X@O/T(Z^T2SJMS-!_[$VS+ M=S)UMKZ=,&+&%CRN9B.3OA(;YY4TY65"RN1-,]_,82MT-G252F!_!8W+4(1- MDO1QCR#HO8+X=)/X% ?SZ[LXTYI5R!2VG3,F^$E/Y5U;I+G(CW>2W-IH"R+/ M+XJ4,!LYF.\5 OLG:$*&)5$"V$ ,_E$3LB\'MT6J+'E+=MTPB,TW9IKMGRZ M[<=#XX^GP4==DVX?,2\4J1$J,<#9[DZ%3^B&:VN54OULDFMB>RPM>Z[6DN0R#!V#4.2!'[&R+6?K=*0!A^7&HL!K*5@ M>L8)#S@_FP90W'\,JR$-KD+<8Q2D\KKER6G$R*\VEVFQK&>8BCZT:[01=8OQ M6G=,$]4*R?%ZN^O-:CC1J+=]8#4&L2GG-1M_O%)!&D!@N=CU[?E.PW@YPZSX M7$,2RT6**$U57FRT+GT[\A+7"DRUL!U5K]N>JY[VU(+7FM;5 >PT1DQW1AV7O+=(!1&#H4PTO(*H?#MW):% M5_4"=AV2Y%2B\R8HNQSC8WC979X?BR.,GEAT)YR9]FD-+^56=7L6]3%SBDX%C,$-12QSCC;* M.ZU>I\\%8$C>/9!TDJ+/Y7*#2@_) FO+W#06ONURHQ4R-=_(?,?4O5JX#E@EQS+DX@>5UTBK,AKK6EJ",[M*[4 M=MIR74)T'[&%::6D,GS@= NC]S JR=#O%>J[PD(UG&4E[.58=V 5@U.&HT37 M;? *:+0/TXMO1\;(H?5"@2I ^>N![N\'G-*-F&\6YRK!L2MQ(74%O92CJP(1 MM1NQOB57N)A;5_E6L3EP1ZD"46B.)#JL<$.@29(^U]$9XB+$Q<]:F1 7KQX7 MWW8I.JU^(\NI788O-P4;]1N3K8Q&C8N5I3C".UBI@"Q4HHJ7NUQ%XGV B]3= M XXG<>(X\ 7F@9WRO UA\99@\2:#^=[ 1,G(N0/%%Z=F?I%%=4799AMZ;+R+ M1;)073%&N<0;';.CL:NELM("8&.#RK,D>AR=?#K?XL]66@AL-PAL<;#WO@I0 MO?1,R_=55^'KHWIOBV-SW-E&733+LU<>6\K2';.5<01&]I@!D@YP*0SNH[$D MSIXQN.]G:QU$)HA,5Q/790VO<68'&&2NA*Z45_ I&NY=5GN MS>=\IK'2J\BZ9:I](0#&H.H6B28)%IY%(3!&'>,'@?'J@?%M%]V&XPAWN^[- MD.D(X[=-UV],)E%;C/RDMM6Y?O&[TFSZZ7+>8X=KU,2H:?$?( M;/Q,OXUP -F""$ LB;+'J1W020>1#2);C"V^KR(4.AP1\F1=KXE36Y_8UK(Z MIKVH$RU,O>S/\TJS+7;EBD%Z"ZNQF@=.NC 8D,&2&(7TJ9DBU-YPT:L6KVW,/9F@ PC@HP#L69)(6]9\_"G+(+I=K%3M$A MQMU2E-_*6/&;(E?I(JWRW*LI1-59EF,3L8=YM:'&=VF"3VE"NKI5[)IFC !* M!37X""*)H,?W'# ?&((4!*E8&F+TJB]5[6[1-#>C7*?KR+K$.U&G.Z1<9)NU M>;F*R-6I*?FIS+K>""RA(/H. \<](HECL* 41!F(,C%%F=,%F9S"I95RZZ:Y M1/$\LO"E"9K7)M3"BSI@I#N8"6FJ14@\U14\12N44^MUX-(*(^F2)$TE40)6 M$(4@=Q&0>Z,R7NR6_M-![FV?%LGSFXQ>36?Y,SI6HY."T&47&!4PM+,M09 X8AR$&0NRE+[EK#XLI;Q^T+W5': M7.2R/-):U0MC*C8A;I0JC-9K'UN+K2'O\Z*O9G AL,7"(G<8E201Z-6"* 51 MZDI,,6(BM8Q&"#)$ MF.S.@/^0#P/6_EK*@.D/AV$U#[R H9X-%IXP>0*6:PPW[R#%)['AV9N?PEGY MG%NOL2C@S!+L3A5#WKU@.Z!B&\R;MFS5W/-(DM/UE95Q"KY#DM22[+< MX^X2.N#F',RQ=#S]?!C\$;';8QT(K679/A"V1"@("4>?.[H;G!$2MN>$U P6 MGY"#%;L)H%>_/[/VJS? :_J .@EU3QXWF3!FB>78]ESP!?=7R*8KDJ@=*?;? MV0.E"@@ESUW]U^&'IV]&@:GV+S65UZE0!F>/N)FR].'R*9"F0H +/]EO4 CR MS^!=E\YAUL,2=VOX-OSCQ#V-O1?VKAFK5Z:TP31#(!<'*AU^#R- ?RF.+ILI M']#E[[GM&H&&_7+TP%.VTE\\<[^]A!,?ALH*L/V\I?YB[1$:(N@7#!&PN,=_ M_VAGAJR)+6O0>Q(R!C(&,N;SC,'N,0JR)I:L@3H#&0,9\T4P>S=7%++F#UGS M^5RY;UO/$5*&/;5?\T(K9C\X7ZO@3*L[+TB@/)O5WWU3L2T-_+$X"SQ9NA9X M RK@P8G A9^P9__Y2_GR\C] R^MBMVI;P8?_O2/OOBG_&'N/D)'F*9]<6C@W M80^?BP;$B3CBQ(>.N%=9_S8-CF3A]$2Y3?3 OHL>*'Y/OWM8-!7!>9DF\M5 M%E0YZ^9S2V9)QIX!RKC BOT=M0)^26\/I>;(=/%E.J*PK:_2I=K<.)^8*(<0H\3*!9.V-15 MW5@%48)N,N'- "4L73N=T1(S*_79:F?Z\N:/,Y?#PDBM[E/D%WP8^'-VB3U* M%L#/FBK N5)]^"2(_)!KN?<'A>Z@BJV&<>>/24U/-*BF'S(L%X/UR+-PMV7J MVVH#$011WA+?SV%Z,TX=S)CQ' @I1Q]KAEWA7(/E3_"ZI_M'<#D:@_BDGX/E'H^_H_;30HH>4Z&X3*(].! MG5*GY>WW"W-]3_^=0MM)GL;Y$@,8RYB+T7 ZQKP.XH:EMH+&D&229="S79)! (F> M*A>]2HO!TJ(&D*_4;6+LR4[]I#$,]>=D/-!(H^M@*?NZLXF?-E-_,^9-T>K MR(ZG98XIF*EB7AZQQ75ME'Y>5)+\>E')YF&IC=]+JS^N[%$RJ9UDUF3'D7(U M8YA:I-P&(LO..I/>XLO%E+M[P!GR_CCZ(P$8:07DD(-T[420EIG D60B6--] MHJLG]/5<5Y>)I9UPP9SN<)-8 IZ\1>F@H*"CJ_9H!GA^.'P$;'(]Q04D7AJR M96T2X)]@-O D5W_&P4,Q0C=Q[CJ0GR(P'RY>U]I!$>-1?=@*2; C'?@; +$] M'QZIOW3\TH#S-0GIHLRZ)@UGG:4!J!]4#PDI-P.K2*!,8@H6-'9?ZO_].97M MCT$@>-F $<;,D_>@%A8!>5+L1+5TV0DVQ_'?FN$""FU^A4BWG_RQ0&WP$H"F MA_=#[G%R_K)\XI/'/GM62M4MZ^]W<_'.6T_ES0-H4\]%@$#OZ6,9.+LJA*S"?_/K/W)B[ 0H\X^VK;YJ'P<_ YT%6&$]B[O? M?P0VK;#>*,"WP+H(:J\^ZI!\JQ+8,*KM+A/&KKCQ6+>TT%J9V>"SV5F'NQ7P/P)7@"L1DYL M -?N$^TQ>*F];0M^<@Z^6_ V)YN/7G=]1BPG9 5^P9- M)@D$-MR^@O0^?5Y]FCZO[-/GW3!]/GQ37P=SG-OJ/FNX]E?L]^9'-KQJL]LKENT/ALNIF*E/)^*JX@K3.; ::?K^N.3[;Y,=4/D\!+Y40.SE M*+P8-$DLW=!+HIS+-IMCJB(2=>'N@4'OCUM%OGCFDDX;K*$932 I%6(PB):E5H7 4(PEL_\G=SH+9C99D M!B$Q0FSFRB)HKC*(;>;$EJHC7 MJ K.IA:,9%Z.)/M2,3^=EVI(N8[ABVQ=W!"8#T:BZ,NA\Y&+#;VM/T4R.KUL M6>-Z?YH2@J%';RK;*L:FT"S)3SM<;Y@1)[B2#8?2+X?6^=9@9F5*+;$U5>9% M?-@W1863\.-%C=;5@=K32P-S.FP+&M;LY4G9!R/)ER-SM4:SNBJ36Q'#S>F4 M&&\ZWCH8>;3\-#'.=4>&4!3!.VXS]E#(=VHC,/)X^3-O9'/9C;7EIUZWD9\C MLW8A$[SH\?+KTBC-S)K+'M+M]ONTW"_[LUDX]&CY*#XI33@7H\Q%+25DG>H2 M2;&<1$C(RY&%-L<+J7%E;GJH/.^U&T65305Y+$412>T(*F>XBC9D&PDTV3(=L]\@1&'E$TFQJKCJ*Y*[Y?$G*30!4.!6/ M R./2.I-Y:([7[9=44[I+DE6!*/L!R/9(RFM%*6AZ1H%L>ZU$(ZBRK:7"T8> M$]]IE-9I:CU/F2EDDQU5FG-A40R6=$Q\)U-=E\!Q&..G-4R6\G9W6FV'0X^( MW_'*B%:VV#*_* Q7E>EP32W7(["7'I%T.A6V*WM #L0\F]&V9J/3EC .C$2/ M*(7WYLNJ(AD3?C/@>-<6,_($"!]]_-".,$?6 VV913(=$Q\ZTTI[:H[ R",^ M55Q4\;!ZIVNF:F6?+6Z:XRHK@)%'LT]QEREERT)=7+16-#E6F[6^&CSSB$\E M>Q]0W2LVL66D4>R;6GLS]B2JPXI8+AAY3OXQU M._-)IV<::;0^<=:YA2B%0Y]3'PB^QF(*@TLRIM$2@0X126$(5:+0(:L-<52A MF&-^I;!6N<34*CQ5K&2F@D;D4V4N\'@=C=0KS;KGMDF^M6:RRTS7S%2UT6M0 MB@W31-VHH55A MTT#DNMCN"F6%&'5?!8J-B:8ZLU7-1(SIIMM=E5?YD<6]!A1,0ZF6BN;,XPV9 MZJ)JDVUIU.@UH. GU6'&%"S&S&.I,>8-V?Y*YHZ 0E(P1B:'!"M1"DY*A#*4 M)66(*!*ATP2ET0R*DD5!N?(J_XNE<8M>L'T#\0:YCB04 M!UXVS;W&?TS>(A23G97-3,96LG9)8]NYT6N;JF_E9938J!Y2;C/9=!_G&K/Q MZ-5-M=KJ#_#UJM9#ZJ,5ZV[-JF[5A=>$JJ_V#$8OD!:?&=C%H9!#]6WEU8U2 MR6?';".%IQ!@.ZXEKSR@[(WPFE#IO#_7E&E6%W6_.=0F@W65%U[=*#.8EQ9M M?,6)&\V94RRV&/@S_^E&>6;G=-ZV-1_8H-Q,*X(#[6QD -W5TPG:[BJ9;N> M\TI_H@Z?4K \CRO(QO4YN98KUC)$;/H3O>O5(>X3NZ)^^7H]VRU6*@FNEDW4 MVP6^F2C6VEPM7TQ7^-8%G3VGT\XB%/CG@9>NW/,WI!$KNC\CA51^OC?@4<\9:^?7S"SD^FC@@;>#:&NU5?C^6VS?H4A>>$?B"@H<_;= ENRX 'VWWQF[0 MN_*W^TJ>SRU#/?3_>C);0I$#SPUX5W^L@Y&[&ZG?<_QN"O9TJM!QJ!\>OJ=* M<-D'CL:N!Z@6/CKXEJ8'3KE]N\_@S\$"A[+A)%:RY>G[I1W [>B]7[RLX8:? MZFM5=]V#>^WWTPZ?/+Z^LN^*O)OE\<+M^!O&3#-6AN;)UN.2/R(S$-A77C'> MMW41X4YQYXX< A4"XK[P9 <(14#ZG9_$?[P\#LD-_F]V8(3K3D/OX\[3>%"( MP+/B62'-@9JF]$YDZD)[5K^O:H.'^#90?B+ MTSF0RV"]%=MU7X:8A'C6$0:E =*I@L68::1MU1%TL@1X-GL%SHS'QX4B'.BV MOO/ SNQ0WE5Y:3NA%CT9>I!JUUCO[Z,3^BPH\/\\# !NN)]ZU.\\^(/VC2'^.\,F$LCEL-LD=-V5WW^+QU9Z,9[9*6^I8USQ+KP\/ M4GQL@@J*W\V1"Z^$8.6IELM)EC%/^6WFPGR4,U5=C. MZT/!.&MSHGVP*X-#-D3)AK?#D''8(BJ>G,'N*=A8#6(79,/;V 4W]WARAKFG M8$MH"%V0#0>N'LP':75?'&6!W0",G S"_4 M%?Y]&/]C"C ?$T!Y=0[.,60+/+&@6RL]>/_@Z?+,33V=XGE ["Z*[?C?DS6@ M??_",V)IN519R_>O%F^)"#]80_Z\'3%[S[SK8XA+*0&(MO&7)8 Z1!2H$W-A M>M_S'0T2?TF@+D2N[YZ4;FDO^[8O^):( $'X3T 8/;>DO$JX/ZE[=$P73E6] MJ1.:]1>_(])N_8A_S) M0XK/R> RUM)R-N& [@,('W'U$YP(FKY\#RK^O'M;W$]NT-**ZJ"V MS^??1Y:@\W4BK&^<.-3BOR8U.A2HW>D2CB9W/P0E32#2GD&$=B>\6Y(@#KQ? M6.8)RLOY#G>W)3!!59SOVW+PX/>9@]\M24Q0[&B_02&_-R@" L[Y#H>W)#Y! MX30=;D]G/#C>DK1\"FR^=PMXV1Z?']^A'X[.3^O'_?J>CEQ+O]HHXZ[PB[=Y MO4HZ[8*MXT"H*[@7BP.9XD&4]ZL>03I]K@91'.@$U>Z*Q.E)C!LDRB?KY\2! M4#%7LL#)$P60CI],MX_#H2*N=[!S>WSE5(@G3Y9MR0.A()Z=POR M!/>[+^1;Q(%.$:E=[+(T/G#&)@[_H5@XX=-^45=R:?&E!BUG#&6*K)#%Q_[V M_[F*6A0?W:B$K4>>RBYV3_Z68/ *I^Z]]&:K6XC(=N.(J64]_JV?0X'&H"VME:3U!$$6W6ZA3$]Z]'+LG\V$;1=S*WU> MWH[-E"")-%Y'Y0DR CL5BH4V+$$F:?R/=JN?D1/^)R[GZU?]CRI97USU V7_ MU\_5]EUFI:X]J1'T?LMA@ 234K[+.-G%6BROY$;)X\>T*P6'692\>Z I+(E@ MZ!$._!N:K= &N&!)(&@"?!\47M%YNHYKVI0LKI&\8Z4RFI\REWZH\TRP^Z,, MGJ11[)W=_P9"IE]ZZ5MS0$;96FX26<-=.H;B?=]?'[/+FIA"WQLAU''+/WA& MM4,UN3-&1L=M_='#[+=N"YYJ\7.VH1=7[ M@UZG:O7$ELYA]'B571?W]%6'8.A]7UPE?.=@#99AG/ZRQ[LWDA3BMO[HCW>GA:;\G$LWU$JQ;F9(VQ9D3^RCQI]# MTUNG.Z'L+]JE9;UN+F8;O^KS&UF<^V!-P44:B] =ZCS7:/% 8EB!CMO)'/$ M3>W.!#MOYFC$;?WG#CF)BW; ?3K>"O-6]>=JV)IM>CEE*>U\E\ M:JOF)T/2#'=HYC,[]+5EGX YVO92MA*CQUJZ5W%5__;-W#L0N?M2RM*'R_#U M+GES]0P@< 0FNTIEAX/@#QA=DKL%AH]%#ZYD,+[*X_G>ZV%6)ZZ[4G;QCC9 M/U_J">YB_*3>'65-2C%'3;M6%*LY3J*#RR0LR2!$DF1.=9T$(>"C6Z2X:<:9 MLE1BM\X87P[1J[Y4M;M%T]R,GT&H MY->YP3P B.!B!TEB[+$7%*+#>(WR!A%=GQM,PQ!3-5 MS,LCMKBNC=+GBTEK=I$9->UX&[,L-]PA/1?8?B.P$H);"W".((.S!#Q'7.JZ M(FZ:<:Y,H=@M-.)4HC-I_7?2@%#?[+)#N;GBL4V-U"RTGQ\/ H/@%M* K@D0 M?HY-$,-U_@"3X!7=K_B%'I?IBZA8YA8=76\V:"= M4?3OQ.'"+9&QIXHQD_<]NXR'0!X>;WX2CJ[:HQEX,2T!Y%-6%QZ@0S@VL1S+ MRX0--@AP?-02FN< W0(?ZN#,N$Y,P2N,W80^T\#?@AX:"1Q))@*IO _I](S# MIS@+[T15L;1?+76L:YZEUX=<\+K@Y7(&4">]8JS AC;3BN"=AK\_*#[%E*M:=S'0BS/'+T\.X8? Z ,K%T9$T')-A#*H6U9 MMA^*:,#A1#!I(.K+<<+VG(3]UFL9,R#3MN>"&=Q?YQ3= \KFWA1-EYN"]S6V MX1S\>J[/7/T-<1V90G&;GXX*(N4)C=5ZAC?9WNA2XOJ9\!3J\_;0GF&[)^PW M?!6P4YZ[^J_##T]?*GCV_GVF\CH5LFCVN/__ML<.'X0;=?C)X:R!_#-X\Z5S MF/6PNMV*/F>IDO0]_6YM \U8O?)\&SQS"$3U0)+#[ZG ]OFE.+ILIGQ A+_G M]@Z)?^UT9*6_>.;>)@HG/@R5%=>VO*7^8J$1R@'Z!;L8+.[QWS^R';%[!(6< M@9R!G/G">8N^1]ZMF I9 Y4&<@9RYCHX ^'LW*SY?-CK6SSZT(*.D#+LI?RY M'T%(K"KU!U0)?SM%&UKRNVUH">0>.PHZNV@ /OL=DK[;)=U-V,/O-IV%^@7U MZQ7]^GZ;9_8>O2WU.DU+>2AB4,3>%+&LKH9Y2PD<#2]"\#]J(;Z'[LOF)[Y* MDV<4"*.%$H?[E905>+&/O>HG4ZD8+/]/1&('-,?_GA1VXD^CDT0#[(YS\5KL M40 ?LW7_^]<3+T5)*BO7,W34O3"E"LR4F[TE>%,$20\R#5B2"+)_%D[BS@) M_M58NO%2$8@'Y\:#\V4:?@,0I$9]BH]]JRB6*:JKH[GVH*2. "!0 ! P.DFS M[P'"]VRD2 VB)P&4"?G)]?TUG"JNU-Z)<16\+Q[#+A,OND?*^!ZU;B"N^KV@ MGM\(\32^YQ7P3 _FQ,9:Y,M\EU4WHV8QAVTVG$2$F=LTFJ3QXX+K7XFOCIG[ M(E9: K$%8LL5VF&?!Y?Z?"H:_0HS-3UL*PN<2INK;@ NP#+#< J "_D>N-R M^^HQL8.:?Q2H>J6'L;BYB4],N2AS0>)WSHTS-7Z,8ZRF+U_!VN)8GICR/&4@ M!N>;,V%J6]1BW_V99/ D2OQ1\?3X0TZLC!2()Q!/KL:@>QU04MF%9,YE7#$I MME6O2,:F/"\(NZ[1)(LF$?+;N7<7RL6[UG2F3Z06/77[)?1=VLYK>45QR!W[ M2?DY!'+_;G49& :66SN/0,3IV+*&>S=Z@N0,Y%Q!OV@B3ID#80SR)DC.,,@ M9V+)&: TD#7Q9 V$L]AR!L)93#D#E 9R)I:<@6@66\Y -(LI9Z!Q%OO;IY>6H9ZR]*TQLO%BE-X YN%%>'V4F8G]0EJJ M!D# WCW@9)+"SU*+"P+!#P2">"PM/DCPPB0@)E)[V,+9 I)JE[*SFM-6B?P% MD6"Q$;9UJ3 LF-BPO!3*8J6*#0(D"'KWXD021=X['3Q+%XQ7TMI70BZN)*]Q M%Q3R)/A%M739";1P_+=FN'-+WOP*>;&?ZC%!-YAR"G[?OPURCY/SEPET3Q[[ M[%DI5;>LO]]MPWK>^)HWG7=!T]7'0AT[J@8&[,L8FN#?__FH7D20/P?2_9,N7-^Y^\31[_^@K__7HV0PHGD #.O\S M\>3G@$I'3 S2'I\0\EGFX_YKSY,?#Q]^$!FUEX&E/?^%H??4QZE["'B8P=IHZZ MCQHC7RH;^.N1*O5&6BQ6LHE,O=FX?_0NQ_!-:_4VWTJTZ^!-:UF^UN*#=ZZU MZI5BEFN#7W+%&E?+%+E*HM4&'U3Y6KN5^%? "F/FZ=J_HU[;D4!]IT3-.[#[ M4GF/=/*)SK'WV$'H@\U7(F44&V*H*JD4(4L$)E,22VJ$)-,J,F1(@B55[6XG MQ_)ANY[4""2'SOBV6&;'(V4FKS'#]@/+XN5(?< R,T^*?>4/BO9G;Y9GZCLR4MI6QANM%,=^0M%S5D.9*,QAY-#M?1L6T*7LBKZ\7?L/+#HH9-J@+ M?#1[?4+4$7%1X\WZ1F?'J.,4^F10ENIH]JDDV.G*8HKR&5:;*.YL4UBL.(D\ M'FEY35,@THTA /?T;&XWE45C/@+VV='(5LOMV*TU/3#SXJS(M,?CYJ+I2_3Q MR $[G^C&>(+R*;K0ZM(U$9G..(DY'KEH>T/%R?;[XF)>VE#:(%0TK55*E$6^8'=^1RN7!D;+]?N]$1B)HD?\0:Q:A6(7"]'@\OU)OUE;4/E@>I1X.53A"-I>BD@!6?@3 ML]"9$L,9&C[U:/G:>%37!SV!YXU47QDWZD5BW@J7?\3+=%O$ISU-%,P-H3-9 MD7/M0O%5A=/S&]JK*[4>TE4)(6WB&"F:_FL*5\>X>J=10#/B-#=KI^5^8:-- MN=UUP/.1= ?3NN 4,Q6INC$K]WB-6Y#<:ZII3JCVN-,ME!&C:>5Z74'G74?8 M.19?\*E6'&OR:HH!=>^3N45JM$(;P<@C/KGC#I&A!&N&Y =N4Z;KO0G=&.U\ M%,]'KM(NOS"9JLU/M;1%Y8!/,?,W\EJ-D\-Z-R2&8 ED544RLV&QZBCBA5 MG0]60K[)C)!Z'LO7R+2YR@_"%SB2$ZDOC-+](5WA4V-?GV5H*RMA ?F/Y:2_ MZ:\+J+$Q1,-VNT8!YQL%2G@-&D>+/E/MIML;I&4[ Y_1,VY:]7>%0Y^/[&U' M*&&K:\GLYH=5$LT*6B.[KP+X?&1CPV>[_&Q:,UL+:T7:O%&5I\$SCSBUW5;\ MK8QUMXA7J)9H9BE,JZO@/5\AOYC*"YFM.1'+T\4LDS&7?6$<3'],4[4O53>3 M5&-C&G*]LF:,8D'AA-?@?LAD)*>7L])(=VR[F#J9U/J:#T8>ST\5\$;-'Y4J MXL;O\0V:;=4V3O#0X_F%"N$9:+F_0N1F;8(9125K\,%V@QX)]4!JIRQ2GF@\ M5AP6&R-3L(GNJ_O-IKF<^-V8BU(=%46?..Q&HN+3[@DM_,1!* M11"41=2__JT"M+6UU]&6[JE[[IG3(D)5+K_*RLS*/)U^I37JU4;;3D404W&' M!??+6<[R;CV9/E]M!(3Q$ET\_-,MU"*L?/<\4![S#C MFCGUGGHRJ^@ZR6P36W$LU!.E9:FN,66CX=UZ@B@#E5XV68;J"7-K/1YT5IGN MB/.(>DS_83).BNEX,CD$5((=QN'R/DP!$<#E/T4R23DIC5/2R6K1-Z?3DCJ\ M5^FR7*3Z$@G8 30F3GEKC:8.71QN6V2[W%=T5>%FQ=P$.Y/[O^<J]>PXKU4*YVN=RW1S9LZEJVZG=FZ7F!$'0XSOM3+Z3G:OKN,JFRBLI MGN);%?$L C4'Y60M,4GE2-'4U9XM%F:;JH= )\9'U;&E>W<\40NI46>0)-5N M(=,\IRN5SK0MIVIRGJ2+#I\I].Z-51+)U0FF%W,+NS6O]9/DO-CIIDJFP#82 MAZ;IE1O:5PQ]T@'F/ =&]FFG^FH^H0U&@V*4!ZXX&HXE"E2].];:3G/W, M?4-T&_4A?>WIU&.?!OO@TGAZ.WWH)U^8P#OK!G^1B!%$I5XK1#M\JTKD^$QG MOVN^,CO:TA3(C@;J8X\AR)-RRA4W(PYUU346O.)F%WRW66UV"\T/H?,[BZZ9 M %)*4C3X9AM^O3 5^&DA:L1(U$1= JA_HE>.S7!L"_GST4]E2 '"-KSK\.\K?JY:/#G MQ1P8*L8FO]8Q/@YM^O_H'!_6E*^K*>\_\!KW,UR_D*:"R= M_EK2E ,2F(^ 23!4A/CCL]0!!H<@H?R8 J]+&5\X)A@.6F6E;S5(754R=,J5 M2L*D.'RA257@KQ^B\(F]"Y]L%H!;*]9PI,G#-M 5PZP9-K!R#H"_25<]JJ/< M7'=B$<+J>;=IG*47IYX0W8Y>F])MVS3F4,Y*"%1 );=$FT YV@# MN0%,)"#B!.PSS:.T'TBHB:8Y[#):.MG-E1R^7KMSVTL (.W=:]'OH"G/^PF8 MIEK=6CV5E/GY2%N7,S9C9/F;$=#6.9EOMD86WVOJ0H%J0F%='+A'\*?)^%-E) =@%0R?3&[ !_M.>MJ#1M<7>1HC^^J#,'4;MW[ZV-@^DVG M@(YA)@N18P/9P,TAG\ZU#.-2(B4*AFNI;%FZWZP<(:V (",P3I(1:'/@XX ? MB!F)$-:+N1!FQ,,QM5MCQ@>9)M<$#6,.!HU655WQ/J&1S]"!(-S)=6A2N\T\N2Q3%!45LL64V[R5C;K(KON"/)K?DW2J/-7O MRPFW>=\,HY&_)^!FTNJUN6*RP+-C;IN_I];S.]:]%0')NSRE,)ULE 3;5+91 M,XI.BH&[I'B,>K>1S]#8^7=!B_XOI\%+:0I?<]'^&*B^YII-*@V^5S#&494V MU=)\G%TV6_7@\$?BVH;^7ZXS+V0I_!4T>"D?X&OBQ@>9*-<$#JV:8!>&CB2^FJ^67SK* I&&T)$IC7U?V/>% M?5\?Y/O:ZYZWBPWPKSW.U(9+4(^3K" 6W&0GE15GW$?A'VMSU:I.D$SZRWN[!$@_KY0PD/W2"(IE M.5[U \FP[,M95'C7]5K7UPVSPC\#V9YTC84XF_XQ-",X_GYE^TTKI:?S,I3@M5EMJ MIBQQ?I4BBH&@>MI\Y ?V>7VXSPO#S/M\8AAFCLT^9K!R>+[?7@KEN=69=0R: M$]T_V?&]%F4=1OA#&IR%(_$D_1S./,)G5T=PQ8U MSTB+$#JP47$KYX.LM[\<#+ _#/O#+FQ/'59(/ -N@U6"THI6C^/K]_E6J3;, MN7T>%7!$1E2$22+3C1++BN9=KS?'_67 MD@L5'EDSD3A-1DCVQ0Y-G]L;M>_Q0_G],RK LGX2D@/-0=TF%LC.@6R&5H\& M21E%+D;/YL$N*NRB"A?9OH*+ZNM85UD?0,Y@KEBO5A(F7;OGY[/NIE+EG/A@ MX0[3WGG81.2J$4,,-MA1A1U57\^T>QIM&*?3N=^0P%*CQ6FSM^CWZE2U"=$& M':1-7B78& )WU95LM;]$\Q%14=?/W3Q68@;E,3GW7:^C<^^SX_HM?I!%4T)AO3J3\;/ MM>WYI-UO:!H75W]AZ;U11P(FC3F#.8,Y\WK.I'"KB)!R!NL,Y@SF#$:SK\$9 MK#/AY0Q6F5 R)H4[>8:4,UAE,&,P8S"6?07.8)7!C,&,>0MCDC$68UDH.8-5 M!C,&,P;;95^!,UAE,&,P8]Z&91C*KLF8-^:\/Y\E\W>DA3*W[2K\8GK8V;;" M3U/-^W389QB3\?.0,74F=Q>3$4LC)N,G)B-6:BR-82(C%L:+Z'0"DQ$+(Z;B MEZ$B5FDLC)B*7XJ*?A08DQ$+(Z;B%Z$B7J6Q,&(J?BDJ>C%!3$4

;[]1I4I_OOO" L+%I97 M"4L""\L?"MLM*W&J2N*ADZY4HE85(<_FE;]C;0%7'=B$<+J>;=IG)4*CCQ[D;+)<1[8-DMT09PCC:0&\!$$B%.P+YX:)3V MZU761-,>:I,0XMK!T4_*42SH6-"QH(=%T,,A#=>0\P]OHQ0..?]PAF(Q MQV*.Q1R+^17%/,ANO/W,L)AC,<=H_H$=K*[IT'I5ZQOXCJ.V-P^M5UI@UX*D M/F[LVI)PR.<] **9-QSS3&,<:M.P0%U3.'4S)]UM:B;D1OIDR RIU+??<9*, MD"1YG;Y8&$E"096/0A(,)"$#DO.N\:QHFAO(!FX.^72NDY81+6DMH3M<")LT M;2R:E7XB(7(0,&CJ-8 1KB3+3Q@@8>A #.[D>LGAW6:>7)8IBHH*V6+*;=XJ M0-)I+H6>Z7 ;LDU6-KWD7;0Z4EPH$3'JXP(D?_OB@6GP4H>+FZ\JE_,=_]V, MQC3 PO[7,#K/CPR\OZ7\]G3 (LZG\)GS$)7NP5@$7]:_ 9DR#\J!XV M?^<;'%VW")R,S68EYTC:D%S.*M-M'#!3]\X=QKW 2>+*@9._6Y4P"5XJYH[! MY,I@\L[@B6[2.=.L9;)";Z+(_3C?+8_:"#10\.1ET/@"!TX0^A*:(>HXA_8K M)8M_ K)\QDSS6\+H[LLVD!P3R)[)Y&.H*2TV4M25:CS8CLM2JRZ"?-%]-X:^ MP2AK@;FHZ#(PZ^.\@M 5&6AG<-9>,KDNE[;; EW<%.++;2DWWDZ&B2'S[3=- M1Q+7,LVPXF&R8#SZ>_"HI-?@7#HNT%:@"B5E6XZAT'(2@-(8BY(@9A9<-4^;H0A(_48!WY^' IUA$L#9@J>!W!TH"I M@D]C?:7=WANCB7TN2EG\Y)X3EOG$O91M#35KB;S<7C21^FI'L?BEHRP080@= MGQKZZKT]0T6CF[>1_9VK#):C'2580"VZRD\J*,RY, M842+FPE":VMGA,U([^F)C3E+JRZ:^+??+'MZK!%#$H8D#$GX;-C'[W"PKH2Y M<5TX=.6O3YK%JH)5!:L*5I4OTN$8JTHHY "K"EY5L*I@5?D:'7FQI_'B89I9 MF2W?R>463VYZ*R%K)Y5%&-E@KB)%U:UR:9]Q<2 MO4( QI&$L3FN=K)"CY9ZK4J&KD[ZDV'2.\?%1*AKQF PNF!TP>CR&='E5:>R M]%2OG%X ,2MLK$6' O9RF&2:$%KPJ:SPI.F%3KVN@2SG<_%"-W6,+,^?L:HG M"M(JM4[*/"T6F_1T$G=:;62KX#-6&% PH(3#_XH5!2O*2X>I0C=UK"A84?"* M\C>:J!>N66GD6G.NE]ZF!(>:]LOQ.2>8 PZ:J*AF91HW^\*(&,.=-OEBL\VZ1KU?5O!(UE$$MZD+@0"%,*A*GR,@K IG_VB)DYN_=;37X M;E.1;J#LKU3O*XWK0*AFCF4KX\V1+HR]_WL<1&7WDO9?Y1BST-\_%1L^4(+? M9DT@*S;!34P $&LAL3]Z,D=TK^O$G:-M")J-$%"0F0CA @)X[<5D0M%M@^#@ M,&7O6%_-B!%Q EZ"JQ?Q>"+PAU-%FA(+TU@I,OPQE'5")'0X]/^]BNY!X6:1 M[C'[I(-CI=FG'.PG ,TO2M KE9'_L#WKVL*JZ5N3// M&*9IN! 3LB+$;WA]CPKL0= ]0Y26#M1N3PS@8]J-$KI7TART6/AO\>TF]*T):6XC M40)0":"0$&"] +H%K!@!Y99;F(I&T+0GN'%/<$7$56\@(C%W;$?4",1,^/[= M"Y'H+DRP4@S'\F_W7H9^@48&IP.'%"-*.I(X'?CRZBKVU!O;HX>A2_#VPTGY ME,H: [T.L5> WB"Q2O,_3?D5NT'O1K MX9B6(_IC?Z2C,8+3-,* KS2](5B[P0;C0EA*)7]99Y08OD&<>^R,P-&A*#!B MY=B!SX-B"YGHL6$\AJ..71.W_GAQ.%K#CN CYY@>!X<4_(^W>'>,@Y4\N1H, MJT:OI*J;2;[;,T4PY,W)H<7?=N9P>)OZN PVB%763D?W=.R@A;0#7YC1#$D- MENG14,^L\RP]+-V1=-H6%VM3$09I" \ JNX"/APB%[B>C"LK\.B9 =V]%^]N M%4>6H3DV>#31&VXWJ3=L-^'D]O_^X=8S36'.A)(S#.9+*/D22SU[U!ASY@\Y M\\94YV!Q"56V,WQ'T-;:\BL%>=:,U^V"& ?6]D7\A@B\PS;S2_@%$?B%8%[A M\?I=W?/P=&DKAJW+$[5FKM1ZN\,W"1^L+I>N^#W"\Q]:M9SG\%#9ZU4:_O77@,RF$@ MR0OFX2<2BZ]AB+7 RM!6R-&TL[R([^(/;'UAZRN$UM=>6!_91_XC%AIGYZME M:R4HO1;- 6:NT,P?M)3X,TO,CF\%X;Z:30EUC>2J=TKOKC2:#!EDB5VU[2FV MQ#[0$GO%3M<9: S84=,^'+_G^>P>=]"/,$T3^#.;8 MQT$OQMFO@;->SMX9C-TI#+<2%0U%=/*&6?%U97?K&;C5ML5)K:ESEE!6&^M\ M;M5?5RM-U#'VVV_JVG#[%V-K" RAI^'60FLTNM_S+5K7!]BP40.;NQB&+PC# M[9T^H:RK%&:;88"?)4HF?W\\G*_:>&=RI7J7];[^9!+9YOX3-^QD\;]C[ MB+V/V%H+O;56\A*<+9LP11N@G$>X&;YS=/!__Z%8\A=#1OP_T++[26VT3P(4 M(1",RQMX"\<$PT&KK/2M!JFK2H9.N5))F!2''V#A]==-P1Z4>A4^RI<3X_&T MP2R;1^99_-WG4'9JTX):PWLYP,H*-( IP>_$"=@;9E%Z;YFQU>*<(FUG33H< M*Q6MK%ES-^A(&PH,Q^+QKV*7O8PY_X38M'K%_E:: MG1@$S,_3..&T*&4H!M MIB]I,ST"OOCY=F/>C^LKLCVIS^SA?399C7/'((9D<0Z'-97%S<:K M5?<$\3LP\3.?9?<7W2!Y>^_18LL#M/8P6^ M+\OS(J,KSP?NT%FLQ[YF^(TC!0=V1-^'YJ=7^$YH=/G4$1W;J^F)BH;U?-<' M'5)^Z7C1?B<9'$TDX+9@M O36P=$/SDKI5C$2+2@005_ 6L# -$;\BL1D?,4PY=_&?AG:*&>C#80 MN<90V[RSQ(:G55/X2Z1]$!-]I2"^*S^\;\8 \D/4B#%40>M!EXB=Z'WTI"[M M.WBEX7T<7-D;WAE(8+2+WV<468\"1)<(,G5%4T%ZA%ZT?T+>YTL>L05]$?PF MEQGUUE2CLQ2 V]#*D\V,W#*3R[@MX&05J[TP@2C7]<-!42<>"^_4/)\9J=/D MW)J3[1*#$0Y'/&&-N?ZP;_4&3OQ8F M?)$G^A'O"O7+LQC@_8&.M.OYEJ\:R-X08NT8X1_@A63WS-O@F+KH'Y2!2K:; M[1]O"$,EEX].6=0AM.J(VGFO< $LP"^F'4\W@*K1VD>0-LAKL8PMMH/[79_>@!13"L?[#ZO*=$2ET'EU;"?*,JTG?] M9IL$O8*Q&D[L3%_E;K-B)#L53=WD-AR_ 2EHI+3N9'LX^?:;BIW-/+CMBD%\ M/ZXO GGSXQ=AF$_O ;&)CDWTQR;Z@^WP@HDN&9;M.2U\2QQ9&GOK NYR#ZR. M [?';E>]\!9"5 @(K():-Y8C30^VV!'D-9D%171$8JP9\!D'ELK?O2 @O+S: M@M!S29U-C*IY$M1D3C*Z6FO4/K+97YL(]G28\2&ZF$>3^^G MCS"2>>3V)F,,*F+SI)/[Z%E1"6C:8\ ZBD)>N7[! 79+7OVYG:,)E?W9]RGS MX8ZB3VL4H'__YU4^_ -R!@.@/=2=@*A?\4%$95I_BIHK;JQ=,>ITC'E8079# M0Q0G*$3G?XB#OQ^<^@?#085^#@AY5.LG^-EQN9_=Q1F1H,AISO9$12I4X=M$IPY'6LOQM3:/ MQEQKURNE'->!'_*E&E?+EK@*T>[ "U6^UFD3WQ$K%-T!\H];S^U$H ZG]Z:* M)^=A]['RGM-)T5N/ALGXB$K&$W!Y'J6H87PL2D-Q'!>'8RHMIMCD*$[*XC=? M;,5=Z'D1O4]/Y)'.""*=H]?#QC!1B$[\Z@G'=[:Y]*0H3=D!S[I;HW>_ ODA MWQS2IW=2BUQNV<^L#;*NV@;#9:CDH.G".Q,G=Q;U?JU9;-NDTC.9]L8R*F*S M.62&Y.,[[;+3GC5*7)7,;M2N:U-YH*^:_MG"XSO5B=.;K[FDS2^+:RW!SA-F M+H/N/'F[FBG,\_K*W/+U+9G*UZ,;>W[O#N.G;U\P;6D:U:-#?JZDNC/Q?NWJ M67>8.+VSEFDJ6J4S2O/1^V2_K[8:TW0^2 <_OG,CWE7<::G?XQU2[M^M"KR[ M5="=NW'"M5GRQ=RO^AA4\JOF$]I@-"A&>>"*H^%8HD#%F0S1K91OOWF*P=DO MW4W?(GH?NOJZ)W4(GXB&*=;1;F,7/D.QL+D3T MPZP/D87#+83]]"M-49_ ^8Y-8W[Q_+\7;'O+M(?JHJ.S@$_LN$_ MKS-((>^Y1:O"D"3+3A:->X?<9G)O]OH'.PCE<#)[9E8]7B):R'7=ZV^[DQ!/ M0,YO*,;YKM%HJK4JV2ZEYNN18FKE*H0:H]:6^Q0F)/1D36WAV6]4-%E=? U&=%J*MZ)RXC?U62$O7V?6_,LT6^ZS1%A5KW M0R!_9=#(UOA7D*I$,GIK7C#Y^CI;7J3MU7 T@FL8_7:$BA&95Z4TB28J$H\ZWWCX M)-IGBX[[64Q>9-EP;/2#N>+,"?CB!=!%S=[$B,Y!#74%Y;1YI=F]PNYS4=V] MY*"0.GJ/#FR$G].C.O42,&U4Q%RT+/BU!.;2'@1<3S_AAMSF1[ MVE.H4'[E4F_'X[=54$2-,$;P71X*6_N>"4&;#M803 MH'LY4HIN0137)1#Q=,-+3M:47>(H5*>)*X!+M TKXL G-OA MO$2O=TU@SL#Q^3""AGB:CAH)LEC?F,1ZV7S(ZTC<-=L2!$=TZF/N@&0"HMA> M-_+ 3[3\F3IU<(2.6I1 M<*D.!9\@AS8D'0B>BH"S;"R5Q(6\PUEB'?69Q)P))6=8S)E0-Y_#1PR?!Z;\G!+F(M*2O6Z[EXM3) M 3JVV8M:M'6:G*KQBH3*JDE>HGL4H@.*B87K5/1^ZP[9(;, MM1NK8#!YRD<4 HV[!IC$PS&U6X,)10\9+Q3.7 )-F.(\S9=5-DD65BNMIK!: M6YO>K$W3G=5W$LUHQU7G]\MZ=Z;)4G7 031A7X,FGV&;^X*V[(_TH?-]\(45 M8%D_G\XMP9O:2]I@MW,"?08:!=9<>#UE9TK<$]__/GONN#E3_2'9C/-RSC7IEDL^@5;[!AI'G M%:8?1IZP&W]OAQZ02N>D-6F9/.UD4YE&UVIVR F$'O8UT/-E'7#<:<+FE?JD M89_<6WQRQQC$0 R2#0ZN=]Z(QYJ*_#,/CSKF":JXO:*?;A2 MRO+M.-T8JV*EDG(8/1L7;&P'HFZT6FB'O#.JQZ> M+5V(&W1";J[8WG'6,4!]%/PJAA6 ;%.O8J$)K 6J-VB,O4-NCN[8<));(!_\ MUHKYV04=KP#B\1.]\_JA/J[_!]J4J*H-V30=7F5=2>W8,[>\LMY=Q_N<,@FZ M8P%YIT+9/7'SX+E69-Z1Z/N,RYG-;I92P9;<;.^3?+ME>X6]J<1G/#3_!WP: MWJOY:;[7G0DT*(G)G#/MB/.C4^N)V_&)9[K%]& UNB<5\WY)C^K#:BKKE5^A MD\\P"OXOU$@XT BJ, K\WP%?/!F /&H@=&Y7')\=OW%:Q#73%,&N&#:R< ^ OTH&.6-IX MR=UKJ0%/ZYE$(JN!X?V8>Z^./%WC%,[0!O)+2M&5\DNU9Y=F0E97$JGD?!N/ MTU IF!A+GRK%/][9^V?)3O@3)[R9H]NO6O3@-8=[L2"\1A#6177DE*51GI\7 M9W39ZMRGHMSD24$X8K-G\OSO;1O5_P&9H^^G,UR6P"/G+'M U&C/ZBQG=GNI M;NA979:YE%MI0:+&23)VIEP*5 H-4<[R:>OH5K"^')9B0+441D T'\I9BS:6 M\5?).+=A%N/N<+L5>F(V=T]9]&0)Q>Y)&4=+/^K[&"%VQ60,2!JV@99 M[?"I )48AR2OBJ8T):B$QZ V6-A^ZBN5B$!V0432 [OA^"M(*\JO3(-9^!H6 MUEIDBV7:39?,\@J7D(I.2>%?"U->DUEPR"R/ >D()+8&+*_-'2HZ)!.0J9#! M!@H;0()+4U0D*4:4QH0+_'C"!)6%A]?1I@O* 2*\:6@1]+UG]'D%A:!198S' MJ%J$Y'MCP1;6"U#H)E_+=$CF8T,;PJ5X MR(Z%J4B @!MV4;O1KLRC B)-&Y)!-!5CSZ"L)V$E/>O+U^[[UY4K>Y*[9%SO MI:SE75[H25JKDUWFR$;\R#E%OYN[+:A"W5UW*F!BK4CPP>NQZ;M-;!$ M[+#AGL';34.Y0$7VC]$]OJL89^XETU=YBT >-V6L@'VA3!V][*_<=[^A)%O( MQ)VA W%ODDZ]8O86DM &=Y*>J,FMNC:YE;C7R7A+;9ATCES>N>QZLLG5:07: MFO$8=:&-]87$@7YO_,X3I.-F(8G%44.EQ.LC?-@_$')YSJ:J44$ H,>+=(II MS69K:9K@GI3GT/L'WD#FZ_D'T@7#4*W,HB[0TSDSK757<[,T\7+UO[1_(*0R M/DFU4ZO[SJ)'HDAX=GYGU.5U\VD9?Y-_( ]&IH.<_X&+@',F:*-XXA\XN Y) M2X?2.1!2_J66C7+.S/: 4."H5:ICY.YM_1G^/>$<.. 4X@%#8_] N/E>F;44 MM95T:3*K)UQVIG6%67GR2KYC_\ )=^ERLA'/;S2OZ)YZ0NV<9!:()]J^_D9>6"NK5?167']&HNPU]3M-\ ?->; M%:4W :]!,QK?P[!V"^/&,ZM0]7W(AI_^6+URY-2OCT;H]PK9^=\=X*-'B:/L MF^=O[;@[X'=G-4OH%7A.R(JJDA6FZ<+L4O+[1@#/K-UEEQI)"Z$]G.N;3C'* MLP9J8DW2,9)E3L77$[PD9N;4!/MV1=6&LEX,%8$LC 4=)"=:>YN]D"/WC>SL MD&1M;C0&-C\74PTE)]9K=ZSKK<X&;: W:(PG!O MZZT:?SUSE=5.53=#)S_/6^J=,"\L:NXP5T'>K)LPEYY0O7%BY:SX[')37_(. M:(]XUV?NN4(0_YP&N;S4Q$[T]:]2W)0[L ;Q3?8,I-Q\,TJEB-N&22SN; M69>'2F_0>^U.]=!H@U:8X?D-GK+8;*B1!_C4_3M"CR86AH). A"<+'NEBI&K,7+8 M$NMPD^4L;N"R" ?CP0KHP8/;U4*;(N7\'1FM,G?ULI*IJO)1OD.IEK\\+-?' MC9WSP8\!M(*-SQ/;O&'.7LOYZD2M=ZL+89@?R\NMERSXI*?C&3\'QN6WX+)Y M7V;X0:^T59>BT9,-<)]9%%_K.7X*B^.O["+G]X^#%Q3;@G.ZF&P*XRE? ML'+M63]:*XW0RL'^TN( ]T=TF7BRE#/* =I7SO/I3#&GG230O_]SU#AC?ZP<]84SS)^[ ML^,'Y P&0'O'R"<@ZO?E\$#JIZBYXL8*)I],QYA=E:*?^^/GC%?,#]'Y'^+@ M;T2E$R:BGG,'A#QJ.Q?\[+CSW.[B"_U!#C*::"K&'HM G(HE3V7@ZJK@L8IY MX-=_10(B#<3C_W0,Z6S*EI=-IB-8TWX=UNH.+GW[[75O1,J/@HGHM/%>A\2/ MBA^]N<)XI][("*5*CLC66XW8OKQX"$=:JW?X-M&IPY'6"'?*G&U;(EKD*T._!"E:]UVL3WK ];0/YQZ[F="-3A]-[4E^8\[#Y6WG,Z M^0C'=_U%J_F$-A@-BE$>N.)H.)8H4'$F0W0K?;N^HL]G<_)+1UEXI_BC)T4(=ZI(4\*%-OW.ED*-T;T-@F-"B?=^%31@ MAJ]< 7C_KK7X_F'P,:)%[.CZ[-P^*N7RR5;W>RGWA'QG@8\SM>$2U.,D*X@% M-]E)9<79^P]DHI=W@I>?3;*<&/T&-&OOLGPAR?,]K;0M4]8$G?M/GBEZ\@JR M[O,P16_7?D8('C>G?RQ30(1R,!57T S?<_+=/9S?QX7QIL+TISU]I;;+@(YS MO2Q+K]TCND*XG9Q3F;K2R49<44 8EN\X6\I.7 ME'$,@3Z*0OM[V'A4;>9YOJ#9^WE\2'T4/3C^<2XA=JRLT59&1-P8 =L%0'^= M3EW;G_9'U52>Y+;;Z7:[H)4=/#[=CD58!<-_J_+Z4MRU*5I7VG!I8JF*/ MFE$CSU.9#A0..G8FY/@ZE41,#BO_7E]EY4G^3>,TO\I;O;; 5KF169I7!QS; MO!7_[NI=08N/&%F=,TNAU)WRHZ[I>4OC[^1?C/CP,TXW2: [&1:=>KRI2^WW M=+N<0N4)LIVS*[/&"D#[P?:6($U!IHAW5NAY[0E)EJ "C2H=96%;Q 1U\_13 MXATS;$&,D)ZP;+K\V*DT%FF!;=16_"K%U8?IYFM+>$ #2&I0QHO6E,S%LP2 M<4Y8JJV1OBZO\K.[UYZ&^FX;$X#29R(>Q1'0T.2OPUN\2]2O'QXE1;\ZG T- M(+01AM=\%4>IZR+*Y81;$J@FZ('P"E09N-.8 !V8GM-64^:*GQ&PJX<ME"2-/%=^8%J5B%G MLJ8 ';[_NP(OH9I7<+.O0*66X351\FKB$=94-/UXUZ-8%QR(=RP"_LZK=H%7/.>C1ZNB1+P9Q<L M?@3[/4AS"VB:1Y/C 1V&Z(Y_#7_L_4:T+&![%^"(/*\),C(-PC9%W?*9;_E! M0'$\AM07O6T@FBC\!?K)>(PH"XW;"3 M?^]P ((+TT#4\W:)#\7#4###]N@G M@['H:':PK_0SU,$#P]"YDV#\DFCY50K?7C2)ZLGW## MH@?\0&]\B!48#_;T+P(Y=>$($,'VP@EO\&52G)@ ^ P-4H7W4_RUFX+WU5A4 M-#247##H&(1@9L)K3]^^?"C84>"#!M(2^ )$/J(@CQ!_;9;!=N> M/RO"HRG7QSE_PD\<%7FV^-\!. <_R\Q7U40UH]34:-6UE_.2N.%KW/NB:<$^ MYS!0YL'T? YDI#G:!JX(G"XW_+-VYX%9&E9*"\LAIVJVT(F#Z79;!V-4*N1< M* P=T'LV#+:3:K_6WW.'AE#.#9R3ADZZ'D=\C7$$?@)S!540W,5QD9CM K[[ M;:GA:\?1BP[ UW+@8/QW!.[/!\H0LN/K2DP7>NVMGT0!Y MO]Y[-QVLHG!F7HL2?WV/[);)R$/"# 052%GQ82'VK%AOCF,HOR)Z+/S6/X?I M/W^W-#]>EA^__VAM?@1OX@&1'EM*>9AYAT-R/+*!?A)\E=$0&" ((;-"C M@U'&#OL(O\#Q_6*.YH$@]M@^]/S&CZT%K%JO5JT T0)%0D=W(=E]ML&QV(_* MOOH&K+^($;LM!8$VY ?WV%/3<"93N'3X-@3R6.XS,H+W^N ]-C3-J^M-V'Y@ MUK'1K+RUAU#!9AI5AZJCS9(^RVB"8$7OARN'"VP M,$S[IT?\=_N@DZO!L&KT2JJZF>2[/5,$0]Z<'*[N;6D*9$>#BWH9;/*[H>_< M%987?.[ MV4T:'I_VX7V,IMA2BO(N0FY,3KY2KS6X3+]YC<"P+5_ 9\,;3!P MD1!?:(-F/O-W"1=^T7X)BH:XL,#/W1^',T'Y"<$D4$Q5\H/YQ]D0!T7]@U0( M\B2%P39W;]V1Q)_SNWL1)!.Q%/5D;SPC/&[IB'";G_&&'C&0<SBT2X!/+0)M!="TT!O@1B!ZMC?-AQ L MT.P0MV5\6+Z-+M9>$E]?E8A_!3V[*W%?(Y=]3!W[9!(=_)N"?B>Y\L>>"291VE>B=O MBT6A,)TONL-\EF2+P\1M,>%YI\"777UO@P)8Y:^I\H$L M[T1Y)\E/JW]KU2?+=\7H0FTGK#7E5.^YMNAE)9RI07 M]0_!RG D% _9.4$2 M:>"F [J,S01L)I3TH_RMLXT8_YQCI]EH?^#S? ,/'^7TGA[/"VMLXDKN\5U2 M4EY4S*ZH.2"G6))F6"@'Y-0E?C?C.BU*V)3)WK+/.K/&1)(ZS6^[E 4@<_8S M]WFG8J@K.-!/*?Y<:N.SVT@6;15CS]QRJ. +$WA.+93&2.2Y4HOH49A4D4$0>1]YM2FAY*#0IQ<)VA?% M#%J,>M$A*&J[@:#4@>!5WB$JCQH(9D@(.V=(!(7<'WP>8[24S1#G_B<0T%Z L7T MQH:F&+&G )L^2OWM 2@Y\'DK$"3"'0KK+@7&>SR*YQ^?2 H.M< !F<9:03'Y M0. \*8.S4X$=/&AAPN]-)4A8":1NC,+Q7HC5/W:N1Z$UY)FHR#XR%-D*GI+YX5WO>7"D8T4#$6(* M?X:25W:9!'!D?AP>VA@*>CU*<+$L!Y6K//?>@S29Q^'C() /U_)=#D7D:-:0 MD+87@$,$>U"W(T+[.1I')%3\ 1\D!JT@17QLG:9@2UZU>G%W7^.4H6J(Z M\5)UL&JB_=HW7W[W=S)FO%@#%O&3&Q[7TMM*<#..G;Q_E[LC%K)ZAA7*Y==^+ZF*R.$-WGKQ=:V_U;99E M9H+2K+4+K,D6A'$3WKE[^Q/E&I[=F(;#\,Z@?AXH'SNPO&Q3E/TM6PB/2.U/ MH^U^M_Y$?S]N*'56)(+Y[M"2H T?,X1;_A](]<5-6@EVG@HX#>6.7ZWIKQTM.EP]9Z]7% M?2++MU5:=WO%03/-9X?-K20YI_NL.?379?"RB1B# M,WC1U&-D8K<5WO_Y?'#D_7Z)"V;Y)C#S,/,P\SZ>>7 *F'V?EWU8]S#S,/-N MP;QD+($MSENS[\_3\%[<.82*>ND_HMXUT>KKD0EN@-%%SZ7S/I(Q3(Q*?::# M-$]1.31':["V8FW%9/IX,KVT2_P,0.7EK'GNX6-4PL*#=2P,9'II0_$9=*Q@ M&I9%9'T[?4VP.&"'X*#$2^1)5P!5AQZOTCH/9E;:"F**:GT4NTGV6Q& M&BY>&7J_%'*&Z;#4YP'3CZ?<2^CJQ4)?HN3_7LY8"__LF<>S?VV6RI]V!?GK M,33Z_IK\^T'L$9/YMLN[JQ;8%+=,S45A6:6J;;E+S^IQE/7'0,ADJ4C\3,/8 MSZGL&"8_/TSZ]G;X9_]I8/+EG@-_@#N[/87?C_0,^(Q$,E^;;?H4Z1B-83&5 MU"R[V(3@PZ)&U62$/'.H_T^W)7@/@I,\K[T'*?;[PRX]X05!X65IVX ,Y(U7 M-G3 WINOXN0*S[)Y42.L(# MMQ+Q.-Q*G*G0]0G4&*/=)T.[FSOE/S7:O=P:ZYH[@JQ!I^@9/RJ0[5JO0S77 M\-X!!S$$[@@2K]L1[$H:/3Z"'[*R[B=(\&5:(>.9X9E]R9F=UA;SCR\/20B@ M+)66ALDXD(=Q.9T:IBA:'$I4HL#[)C3ETF\J NNTJRT6S".U./[S16=_?I)6TX?*'GU(6I$D\5 M=?1,BGI\ZYA*SHIFDG'YGKLV]$$N3KM#[MQ9?U:4>OK="(O\7-!F'3+3#=KDF?/FHO3CK;=EDJT*K;Y?%EIU.?E%C=, MG-XYT%HISIVEF_S.U>M-N,B?3,F2:_%5\ZZ_$,3T="6K(KB_'[C#Y.F= M+CD2Q'E"K9+M/HBO-Q4C,[":P]3IG;V12U?OK:C)%_)SHZ6RO56=YN"=IV0: M1#O*8N@::G3-E9.#>\8=-5UXYPF9$JR2 8(@E'6K<,'WZ]IFA M-5.E6:VL]OHS99[N]3LN)#U%GJDR,.47.8J[+_!SF[EGQ%5Z4.6;D)ZGMYJE M:7LNT=Q6=1+"]FXBW4_8HCNDZ--;YV9W,3.YCJFR\V*BV>(GU9'%H5M/6&K2 MF=%X.$SFR6S=ZBZMZ3#K&-Y3'_%T&*='LD@!=IA*)1+#> (PPS0S2L/[1J,Q M(./,2)0>/SUM&'G0;-^E>)&A+#[7+!DC]RQ25*/DMDUV!P6A '^26L^S!*0EHJ"G6^L*Q5C6@V7^'.(4414 OF;K6425:.UA/Q8KS@=MUS2)%? MJHS;G$UFJC@QZKF:T&X76NY9I"CE2Y.6NUID2218I !V52;;(MDG;I+ MYR1M+#ML\QQ23/CU2E!5,!;H=&K>$K@"L\I-SB%%KE08J--$6A%$?3.=R9FZ M7/%PZI2@YAA4LTPQ1PL%=I$O)APIIW4FYY!B*TRT^\0JHZGE@M[O=*B$.EB? M18JUD)BK>:NS4N=M(6/3]6E[?<>=0PK)*JKS5Z\XK0(CO10HAG2BYKC5.J076S=3I M9/FN/CM&BBL?N&^#"=J)^8VZX%;LH3SHZ5%Z.E/0*JRR Z55*1 5,O5[!HPW\@3?3B%\$PW L>*?U,]0B\OGJ0'A/ MB2=C:=P<+)3-PZFRKRA%4>\M*96@8O%/55+JY>A:9VH"0%3A%U.+X'49R.>J M2?U1%0FL77^3=M'O52Z*CL637TNY3HNP7TG$P>BP\& MFW"##?/%[+Y3L FLND<;3_()>A];U,R>LD<3_Q?;BMA6O$9M7SKAU4[Y0OI8 M S;11KEM?P>$7\P"^!,1BE-?2X;J^XS(!NIC;1/?I1^7V+F'H$K/$1&">:(V MVP\IG\1W\7'TP6K$58B[ 682W"6H2U M*&1D"5WAUG!0Y6LK4>C<<2_L]HC=?UGO?:C^D*AIWN;O\SK:PB7P+R2]?L!^ M_B*UPE[*J?K@6F&[0F%7JQ*V/S\6=U_)!G/KJ SAWET4 M' ^V'I4T]"JDHB\RC@7G;5F[^_:EQP[5,?@R>$:7$=U"<]1ND"PS3N4:JK!8 M*.^O/=8"*Z [(&\:0G*)F;XB<8MFF,G(NZGCZJDY&'-CY C[ID,/U+6R^0Q XANOXUBQ3 M]6G')1TPT=;LNLLD1^]OOG69G>7VOBRV2LG4O9I5VPEQ,9YGASE438B5&&,;QK;/8XH^C6T==ZKR:OJNPX-Q7Y,FV77BOG5K5_XR+2QZ MK5F6)=N\F"RDA:(T=CE(--1=)!F/Q%-7W.]B)<;8AK$-VVWOW&:3\5ZIK,B" MI69SH^YZP,VX'(GLLO2WWZETA$E>,0J)=11G06'DPE;9^Y"K HS"8#"_ZZGL MMC!J;*/;9GKH0J(@!V$J$4FG+MCE.7RY9S8P(7&@BFT(H"ES10\.(7T?_<#) M:)7'P,U B2$SXGG-)(ZH[=NB"G"7G0[UF=.:]6K/-#9/(M9=,1:AT M\@2'+P11.-R+(0I#U <9D,]#%*=F-IS3*"HJB*[Y7*H+XJ-R,RP097;,5J)$ M=DL"6"[[RAJ.(VM/($2QWWZS;(1.41BB,$1AB H51(79N M*Q[M;]M=KL>05#6V-=.0JS5A:<^L(@"=:4YJ0DAB M/4BBDA&:_;LA*208\Y>3!:=Q7#$!;4QWLF:U:2;4K,-%W;ME<;K97GIK^1AY MC&FST$JU5EE^(R>70E-.5-LF!Y$G_>TW'8>XDSCUJV/PD MTN8TVIB7"V2/OG.+S=*D7YU=.V=U58H7Q5:VIJL;9C!>==O,.@%<"#O(D85P MAV2_4NH7?$0/W^1G=V9>[?%)BYP$9*[6*+-D=,LD4W:TP)N= M"VSS>=^!.=8OM-_&GNB?.]>TR9Z48A*FXR\N%<*3?T"9:!>@SUJ155:)8%2^+H]+'>2 MR;M$1V]"[$%;_G0DG7CVC,$73%UY:*^U\-IK10C1(DP 66<#&:>TX-C.UW>R M?@*ZX$@%UB*L15B+L!9]<2T*><#ONIF5KRSH:MNI^MS8S,CE-I-OZ.U"85UO M#BG2RQ:@R B3QEE*.%L @T?8P..Z.9"O P]VVLT7IU'-4A4P*4APX(N^.4'@ MX<7\F62$(I^K5/4)8_YU>PK,XS@_#O+CN":.:^*X)E8&K Q8&?Z>(/^!+3AS M+%L9;T)&-AQ[^_!-=\W0C6/3.8BC/1=&*X^[Y9I[G\F2FXUHYS9\W9TPT(RF MT!X\&:'/-&;"(?RO',+'R/(9D>6Z._)W(8N3;XQ1Q8LN62\,MQ6@E+;3?A,A MBU==@HFD$Z?[\S>%Z.=0R#3PB4+T/NV($8"4!X3B?[+%-;!P?!['1+Z^6_,3 MT 7'!K 682W"6H1KC>!:(S>/LUW77_ 07MN5&U%T!U(WB+\9NI7Q#%7_O@XR M4_FU;8J07XHNFALO4QAN#= ,3$/3O,V!#4Q@V6>V YR877+1=;^H1A4]D995 M8ZX[$[@7\(+])!.ADG$<[+]YL#]TVHB1* Q(=%W_PLK!?QKBU RPN:%2[T>/KSQ[YX02+X$:2E=V>D?^@T9NF[NW[B;LS^CU M>1C/.8YE977F\09\Y%@SW!U%=I^C"!=^CDP@JE$7TN#7PK 4Q.Z?)D!]SU?@ MT3,#;/!>O+M5'%F&YMC@T3QON(I0;UA%X.3V_UXUCP1SYE:%DS$M9 M!I@U-T2S9P.4F#.W0[/GTY,P9S"<8=9@./LDG,%P%EK.8#@+*VLPG(65,QC. M0LL9"&<49LT56?/Z(V5/\>@E[^;?$)GZ6N?1)$-#%__?-XKZ]DZ")""FTJ'. M>)4 BK8\(N'HZ*VN_\N1H%T&,G'GZ.#__D.QY"^&C/A_ M_/??T;N.:V+=^NMTBWZO:E%T+)[Z6JJ%,D6.50_E@P]E!UN>&6'B>_2C_=NW0^P-U3G.!^F M:>@6,=H003]WXKOXXR<^NGF]''5,%7SF#!_TP"#Y?;O>#&[JL<)/X+#P53[VUC^%33 M\-WW<$CP-_"+C&/!>5O6[C[O*2--'AZJXW$SLLZ6E/)209NW3>7_O@,CB3G7%Z-\]&-7597*4;?#,QV#@( M9UB$,XDD&Z'B"8PS&&#.((Z M.M/)2#R)402CR!\=,_GJ*/*EK977H4AQF-NT!HO^1"T8(MG7[^F5VG,ABJ " M2PR5CE#)YS8]GS]AX)$/J;V U!0U>T/D%,LVE9 HP3!W#BP)<3<\UO5Q.!GW*0:*R/;G0DQ>(FQ!C=;DT6C&Y_E^WVNHVV M7F_/:D(K7Q26S"V'5[[/KP]*:08]>7MLQ> MAUU#K/*B-EX-#>!1/':PR72$8:ZQ+#TU#DX%,@_:', KXU"OKC5 MR/1 .JQ"?=IA%JCE,>OZ]>#Q" M4DG< OCOZBX>+AIAC+J( ?D\1FEYX*Z2\VI?S3]U,G.YQR$XA!J'\A$V')TR HAB ,01_M9<,0](G,I#="4#'+ M#1/L78LBL\UU=I:TZF7'11#D-2ZD(A2;?@Z#OE!>'97R7M@Q;%'#>70?G4<7 MND:IUSH+\1GF'IZ@QN4"LKG-4FLF ,B0FV&CO<[>SW(%\]:I(G>%7&$Y&ZV6 MJL+TU/Q]4MGD"LUA"CG*Z @;CT<8^A1_<;CUP\.MH5-1#$]A@*?+Q5QS3N5> MX%E)$1R9G93Z[K1-56\-3PVNM8+_7YBK[3LSMS9K79'KN!">6 1/B13\[YDM M*H8GG V",]FPX?0GF1P9*NY25$-A^/E@5@%T"T0('=C$=QFGCGV. F6?@017KP;R"8B M@V\?4)?B,] *P-6!AR)QLDP'[G'S^ZLO-KC\QH\QRP49E!I\$N&7:O+.KFY M3US VN9]:_+9&'2G)"5JRG8X4:.#E-NSAG MP7RN-)BGP2<-1'96U\MU00&C[EJFNHN[NP\"'S*?IM- +J[)K-JN,=66PJS& M' 0?+P&&C"13SZ+/UTN >>B^M?"Z;T4(T2), %EG QDGQN "4U\^M/,)Z((# M%3A0@;4(:Q'6HB^N12$/]SUR0217@V'5Z)54=3/)=WNF"(:\.;ERS$Z*-[?4 M;-L _#+?E&;&QC2Y.C>D2,]_0,'*%Y_X;WVNX"$ M5$B7DEH@H]9+*2[.4_G*?7^"@,1KZD1&R+^M^(1/.F($(.$!H?B?;'$-+!QX MQX'W+Q_L^ 1TP4Y_[/3'6H2U")5';AX_NZYSX"%LMBLCHN@.I&X05S-T M*^/9J?Y]'62E\FO;%"&_%%TT-UX&,-P8H!F8AJ9Y6P,;F,"RSVP&'#>1!<.% M*9*%PHP%*<6^6SM-N!/PHO@4>;82'88B#$57@:+SD?K0S3T\4'1=]\+'0A&? M+DCWMIQDA#ECQ4%",2HMTX,B+R6 9"-Q]KF>]9Y?XE];A))Q-; XX/S,L6QE MO'D5?J1>CQ^RLOK3H:=B:##^N'9:XUV!'P\F ^:_%H:E("K^- %J.;X">UTD M_T&S.1C,@UY&)4,SS)\[Y=L]$2G?R>-L8P&AG@4[9Q"=B)$['R%B(]B3CQ = MVR!(@D3O_1>^>/>OQ]#]*'PH@"/0Q(4%?N[^^'6-->&(=OX5;S[PHS>HJ"9N M#,?^.5;60#XG&@?$#*8<2,FQ]^Q/L.D1R'J#@(-\!F93)RCY7?SQ&+L?P>B) M5+]SM/XG]!PX* A"FG_%]4D?7/KVF],TPA@3AF,2QAYJ"-$$A&9(H@UD8F%" MO#+A$ A%)^PI((18.T9 ,"6@$(F$AJJKH60;&^@VD15U419C>RT[ 0LL8E<7 ML5'(1.RH;1?*Q;+@:F1Y$F0\.HE%P/7*T9#4C>$J&-PX%V5 C#9$>P&73E&S M-\1A4S8DA27=LD5-\X27@+22IIX$[UJ$P<=!T94.S^YA";VEA$HAD]#@K.:I M."HZJB+I"2L!!0PA(A(Q")B3IZH*P7MM7S@].8+2B3#SX ^&XY2*(MI \0B>$KX .7CQ?:,8& /1( M(W@(1&O+6: 3C=[K@Y?^P&)_2[&70R;V+U3&V@O_7K)U X(W0N$QH@64L<>B MCLR(O8##[0HQ=G3)-REV,OSPLJD#IX(0'_Y* E:$&$.PUB7X=K0T:& B:I%@ M$)[B!,(?V2F(Y=]H>,F^GAD,U4@R+-N*$?_W'XHE?Y7T8$00^V5BZ8@F7(F0 M\B!G4H1PO0"D8YKP=TC!I:6C^%8U >_;-3$@Q@"@W^Q4YX.9]+^A\[ E7K&M M'6GRSUU/U:PQ'P6T[#R0-0_ ?F/*^AO3FFB:PVUE:C/'=@K*Q&X1RX1$HT*91I/,CJ!E0@2@Z1NR(#$>A M?#@=#CAK/;>VW,)#\#CQX!EW8[#H:&!L>TC\2O?!UYQ5H&(U9PZ'*YU^/OIX M"60YYP?KB&MHXTN:83DFZ, 79*#MI0;NJ]&PJ:[)"J5%!_RFY)8627.5:*XE.92OB$.W!V>?_^SZO\;@?D# 9 >];=!$1')A#5J#B&K_\I:JZX ML8+))],QYL$>W0V-\707T?D?XN#O!T?.(:_/;HN7L;FZ9B[+$(Q*E8\E0&KAX/\EC%//#KOR(Q-1&H_*=C2&=A[L7% MJ>,9I=!P0\YT9)#N-4C\*/P^%LM@9J.CUP:C'AF:C,9<;V2$4B5'9.NM!EQ0 M1Z$=::W>X=M$IPY'6LOQM3:/QEQKURNE'->!'_*E&E?+EK@*T>[ "U6^UFD3 MW[,[@/YQZ[F="-3A]%X+P\_ [F/E/:>3HK>>#8N:2I%L.D$FX\EOOGA"? _6 M,G\+\NRZ%ZQGMUO!GI.3U'XO5LO6JSS1X?I0;OQ+N__Y0%EX923I'<)PH['7 MX?X6C,= 0D*%$FD)M+>VX-[6!*^-B"Z@D34)&S!F9V+C.[WD5'Z M8".9:=2+[2HC.CS=IJ1&REZ.AW.TD4S$4B<;20(^#.&$YU&X&MG>N^7^2+(- M2;O%QIEBGE=&=4M>D&R)G+F0;&SL]-#+GFS(UX,AP6QS: 670D_*](#^2X^?TP@N4(8]D$#EX MX1=(XD7K($B[C4:@RBCQ<-SR\8NM%I1%\S9H$+N=4%Q?(%2>A]--IS[:_\_>FRXGSBSK MPO_/52AZG_7%VA&&I1GH=YV.$"#F&<3T1R&D H0$ @T(N/JO2@(;&SRVP<*N M'7OU:^-"JLKAJ:S,K,Q5UR3=[;IB2ADGI4^79 -L!+2UGM.4@Z\4 JUF0!Q3L(=:.@!PIYH+EH1X%OH(68$,9G4-K'4GA@M:][!^@[.4-/F!WB$^/$3(RAOX[?&W'9['#L:TH"JU:L99O-\16NR"T M1)FAJ"3'[$]PRB'5SB:G):;EM*:D5VZNMGEZNJU1/A+7IR-C!8G5-I+KBPKO MIT1:S?I>6H CDT]'UBU5 ,RPQ4ITBA^;DE2J.V93ID^?J;752Y,5FWE54O72F."Q/TS).W%YK&:,"V:WTC,Z_5 MO%RJI>EM]$R*>CJT3.JYQ+!?ZTF>/S0V:G.L=1A!9F3RZ;.J!X2ELK$SEU.G*UH49>U:ZY))THTW4ZZ^CC M15 S[F2H-C"ZYB"9V9'S.3T>=ENC=*,LH%NJ)T,9=E8>&GYU:93E*KVMU].# M1G$B4VG/ME.;9N.7YFLJ)F/AIX*@-W,%FJBIW6-C#>+;4%Y-')X2*TS M?%VWMWYA,9:Z(I X;ZWE"H6B'@P]E>I<;5;E%B0K>O).I'-PLZ):P="3=>4' MU&3JS:D;R\#H:>K&NZW:J,-F@!(Y9H@E&6BMEMW4=#3]>5S2V7 MZ[;%\:(NY6)J?J>4=#2#T[F.>F('3)N]MCB/B?)B+;+I+#DY!U1DC!R,.Y/2B-OT)<6A]:5;S3$% M&HT\V2,23M8J%)-.BQ#8+2-E98+$M5D>ZQ\[[1J:=3PR8<>3)/ MDT[0 [ K-,2MT?*:ZK*<'D/5XT_GF?'I<=>O],<2F#");58R04>8('/OZ9E#J0BB9"?C0,P !F+35 MM VQ(=+DKC?QZ_*)3;['%1(=],R3B0XHQJUK M%%,EZW)Z/97;3KTS.;N9+#HR6Q]FJJHT'ZS,5893,K'UOC?[$W1*I5(U2G+2 M)%B.UTJA9/H)OADV*STXK"\9%185>P&/\$X#V($A?AH25I>SY4XJ%YZK1%IYYUGJ08'8T M''Z,CCCP-#@*$\9"NJ,\L34\,4U ^#!XAO)I (2; RM/7\,"(W#-$5C<]]*:WS3[T[!S> M^[X)'TYR&GHC\KN&'M@PN_3\],Y^_[!:#81I<_"M*"LIG))K \7Q[.W^6= . MG%K:9SFAOJ'0HG.S]I((! YNY (ABC(1VZ:EN_\#N9^82!NJU.@>2:HCY]" M(OI_"]+I7FN4RRH*1YOV^FZX[*N-5K@;3E_ /O"-O.IP92KC8 M3PH%B=4P.^%Q>L?1]W'ET+^_764D%,,DZ_6&OL**Q]]'P+ M/G,,I>U DL/OP4[V.TR&\2$17DU".<$R_(V_N.+7H M;\OUL)@S$>4,@SD32<[0<0K#6319@Y4&^L>_ZJ,_-GU#-\V6UX6S10+1-]^/]^<;_>(@%T*D[3D>Z( M\/Z[@$'B=S7,L!3O,RS#.U,,>1?^'$]F]!@A32 LO1J1RU]/SZ8J$ MPN2W K=86B(@+B)<*:% MP6HMDCUJNV EVK6D7=.O;99)=&6/0=6^R+L$?5KLX))*@K'C-O0'8T<4L./= M!50^%3NZFFDPOF)UI;R[Y*OS[K1(4NBR,0^Q@V?O6/),?P4[:)WC9AEKY(OY6J]"35I-X&20W9%"#9V9.XID,79@[,#8$4GLN'"/ M^%>PHU7PF9I7TU9DG9PSE*3Y"2DY065&@F[PY!V=>,GPP'&YGQZ7PV[@B^5L M7?[*Z5/HBP)5L&1@&F#MP)*!:8"U TL&I@'6CL=4^1[!]-[38D /=8(.A7Y. MJP/%4&-*7<7Q]JO[KGXX69[U:]V^VRI4,UFW9K5EDAMX1IVF"J2V&$WH4?.3 MH^WD.QQ7!X 00GRH!?!0'P>%G9SZ R@$19[N'5ODO6.+&YGVG"S269'O*JN8 MZK:ML=P,2T@RU!U#LW=)!L?C,;9\-5DPMGQ*-/Z:V-(=3EG-S Q%LN>3M1PU MS33,7C,L.@NQA4NE[A(LCKEA;/EJLF!L^91H_36Q9=&5J 1;H7FI-Q[/%,57 M4SW@AV6J(;:P2>:.PMB"L>7+R8*QY5.B^=?$%MU;)ENQEAPCE4FV5.L[@F^T M40'^(-@/#9<$=\/[V)?U_7U9M[OA1H%.F"PW0!:L5EA^,%FP6F'YP62)/EE^ MF%I%+I3WRB'R$,,#N+=JB?58#2%>1N3-AN M4FG'$;V17EW%['E_HSQ*Y2S6M)\"%=G#/9$FYQD$J)_5A?]*3*?.JO M1UJ6$<)>] Q[ETI<,'O\AVL;I@%&G--DJH\B3FOB,DYS;.4EP.Y,/T/:?64Q MB2#BJ,ZH8BWQSI7=34F:4'*WDP2I5V$31QJD/Q-ZXPU>61I[5U5RYT2>=I \1!V6;)^_( M)+9Q,.)@Q+E>POA'$4=*^+FF7_$JXKS5,"N@0J7&5A1MG(WK662FYFP,;U/= M]DUZQ+0VZ%2%=MMES95Z M0'2KNY$XR U\.84<83QUE^1X?!T18Q;&K ABUH>MRV7W@2*!3: M3'/M0%3T(XA9Z4K:E%-LGA3S%7;6*R:;XV4"819RI9%W))/"F(4Q"V-6E##K M;WUPSV!6RT^8R[:SJQOM1:;;CC&6D%6%"&)6 ^*IL*O(6;%==;6D6&AD!ET! M8E8JL+/8%(4Q"V,6QJP(8M9GVUGSJB$.?5TX\^H[E;JI]Q(=]=TM@!\Q8X#PT'#'!$9-(^N$: M#SJZAUF;3Z7\D2\ J9=,F.ZD\KV2)P.0*5LV@("'52$'42=RR&'0P[ M&'8BZ<\ZA9UEDARF,TZM0_*.E%:,BJ%HO2BZLO)-1+V7#?L/4M(!>A+7$:6A1Z!A-+3>$8YFZ=HVFR;= MC=VF[XJ MW2(,[1_MVG-A> Y IAYBS!E4+E5JK8;6&=4DWIHUI5(O M76W 4(6A*@IDPU!UE9Y"7PM5=-5=2KD1*)/UA33D95-CJYS<^:FWJ7GUGUP*I";KDD=\?1 M+V%5Y%+,;D&Q<+89CH1\][KZ6#(P#;!V8,G -,#:@24#TP!K!^Y8=$R,0[-= M0@F[[1*+H-WN<>>BX'!+6 ^-=XD8H:'3+=!PM@2^F!D19]C/='9]--OA$_IQ M9T,(.&G+?:[^8C&MU(3T8"[.Z5TUD5LX \GQ98H)BDQ3=QS-WI'\!8LP8CW" M9,'PO"B[:.M:HL$!:2,BE)$D%\,*G&&3!8'C!\(+A)8+P M\NY,@.O"BZ0:4W,I]WBQMRO'9*XTV0(R@!<4^4?F"TW?\?Q-%9BY!67!T7_L MH_Y"'W6TB( % =, *P,6!$P#K Q8$# -OK4R?(_(_7]'C][AA^-&EJG!/Z85 M1U>)!7 )?:%:$9GDC$WS9)8Y' M=/R_5[R_$H&U?YK;*JNO=0W(4CM[<%Q-,K-,68KI.2.CK_/2SDVV&/.SH_KT M.QQ7HF(O($&=!K #+U6 &.?*5#4*F2*HEP0C9M82IC2?35G6ERD.Q>[9>!)7 M:X^ WSMRFH11)#(H\N[@_250A.LT-EZJ0A>,6-Z>MM9NN4OV)@A%^%]_N#C] MDG?[!Z$(-DXPK$0=5CX:M+\$K##\NF$;'8>38L)((WW.G:QS300KZ()_'*<4 M8N,$HTB44>3=L?E+H$@^5Z:+4JR4$I7L=KQ:..YT @(401'X5)Q[Z8R#8^\X M]HZ=RMBIC 4!TP K Q8$3 .L#%@0, VP,OS4V/L^]QM'W[&#&[NF;M U]171 M]SUFG'%.+7J)A-1A_";)@[146B]7M<5(D*E$&']/X&+;V,6-<23".'+5^/OS M.)*:,F4PRY8DJ;U:&)HR]IR*%^!($(&G,(Y@ P4#RTT RU=$X)\'%F,\*X!- M7:J0]4RLY&;7=G4Z]Q&P!#%X#C2*/7_&&/EI MIB45R@FOD)\@' FC\.Q+!7P"M])_@M+[?P[#:MX(]BHIJL^=)S@W?6 MQT_%N .GE38MU=B+[T@>-U.II;1+:J(^UY>3!%_K"W,X 0 %?0FGX-H>N$K% MT[,\_XAX[B4C_,X>1%4H-\K2 ;\//QS/C(>OVD]JKFQB ?<6]Y@:,\'8/0;9 M6 !^P2=[""?)?Z&YNO;AK8?IE[SEFKX^\WP+/G,,=>) DL/O M,;3'_![90#%B/B3"/TO+T9%0_+8!4H8U>/+,_3X3O/@P5!DY%M*6)PO]0I.$ M>H=) A=W_^_?FB>8,U'E#(4Y$TG.4/'4B\ERF#58:3!G,&=NA#,0SGC,FDBR M!BL-Y@SF#+;.O@EKL-)@SF#.8.OLF[ &*\UE.?/VS.3G6/2JY_F'A*"_$0U4 MRT0?_K]?W*^WQ![H9#R!@M#1;F-@!$%?YAZA#B D4$2]X" M_'__0_'D/PQY%_[P>0GM+X+<%7(1#NO!0G D!&U]\VU$X-4 ZEGJ7"AC\+W7 M8? .\VUW&/HU<'F6'DR<^V9X@U(Z;@5/_FY+^2NN)[X=UQG,=:SKF.M8UZ/$ M]6]@,4;M K5PG/IY?S7:M52# "M/7RLF)*GS^].L17Q3X*S28+*M=17$1HH#D"]IH07)%PX.I'RB&OQP&KR6Q/KEU^!CF--8VC_7(,#2 M_OTYC6F L?WG6"/FU766B*K1W*^>C6K+9,<@//J--4@=06HPD] M>E\YGY&IR5W@N) (&1N2S=858:,[QY^GT=&BOFB')XTJF(^ +>]+ILA_62@E MO3W_@& .AW>TX#QL776!UD8AP/T,_.*<[UI\.D%ZO)CGC6)S.Z>$XT)$Q5KN M':6(_G(EPAP>D]TSA8O*EK]R:=%L&G-;UI1^(9_9"CXJ_TC_^L/=<4GZ0A70 MOHNZ?X.0]O/G=SC& .[ECN_?U8.#'5O?()H0'=L0RP,F2V3#!5A-HBL/F"QX M-\'R@,GRQG1\]7T75 M=X!KMM)K,J.YV;6V2=CIDB"'G8[9.Y9_J<@R1H=OGFNP!'8@H0N<;X"]]#@F MA3F-:? 38E)8VK&T8VS'G,8TP-C^S3G]#4/-@1N"L)8XK/PU'LXOK,IP"V1[ M-E 0X6H6.)" U>S&R/9LH.&&U>R"@8CSO9FO&4<0YTO3V@(0;-_U8/?>QQ(J M=ZIM!L]HQ;!6$*'$_UU?31KD&6Z8\OIS-!+YYMRT%":8N^2 M)(5C"1@W(TXV;)Y@-<-JALV3:)DGY_,DHF&>Q#1K+%J"7!?K.V:WT=1V7ZA. MHF>>9'M5=RK.BZZAKY)]=[":9/+=B1RVDZ:2=QR+[9-OG^L W]&Q7,5\W&OZ MV8*#.,GA,W7@$;0S$-HURT,MI?&>>&QZ?B&5HF-H_G!1P/KR=AORAO7EZ@ZM MF#ZBJJK$\F3;JW93[*@SU=5F]&PUB9K9-; L6)+G%)I56FDMR:D@)Z_A2OKA M6H6A!V_56%^PON"M^FN=.^Q,[HS;3*I QCJE[*)F=U0V'T&W"JFM)=9(6STI M4VCU![7$',U)/?X_"PM[5"O2HV:EJ L5&(CG]1].=I:EL?P?LVK_J'M'0*^?P M]_T$R3C#P4\>=T,]>NRC9\548)K_O.0\NW _U6?[EZ"\LOLDLY"J%'_:,Q7] M^W\>M8B]]WG&5,NT[-\'F#\BYWX"=*# $Q +.] J8_CZWXKI*UMGO_A$*LX< M=I#?]SL%$^2](3K_BSCZ&5'IA(ES91,[(N0>+V(F&$,"A%\[?&:'5-E_^$HG MW+T,N-;R-PU1Z;$(L%0\<2H#%P>G@%7, [_^JQ!3&VTZ_].QU+/:CGZ&^@HW M$_-1/YK]1[_^=)"0$M:8R* ]+/"-[C5&";7FB]KJO-BKM-Y(2\5*ELC46XWX M?7NA",ZT5N^(;:)3AS.M9<5:6T1SKK7KE6)6Z,!?]7K^U$H#[2SN@%V'VJO":1SJ3A]$'IDH\B (0%/*2.9 M4EA:9CE&D5- 8V5N1$++AT^I"4#]"N58.5@U[8Y!]4M4IRSR7MGK)5*S_I1K M(D/MZFI:TS* MP9/+IR(28H-6^DI,,Q6MXL8F0I!(E M7Z9/G\F5DU6E.&F-I=5ZT+=UU>7S7MF$3.FVE29')2(L-- M9$8FGX[,*YRE]\I^4S3IL2/$\LB]6Y/TP/F7(' MC3Q9TK(XR"L"IZ](D,F.5\M1=SU;H;>?+,FI=3>K!+-.B-L&&+=;ZM+MLFCD MZ9)8V74*:U?EH2@X3K8XV4YW;A-^?+(DL&34I%9S9,3K65 $>>+(DJ,)O6N-IF18]O-)RL9XY2+!IYLJ0^ MFS%V%&WX1ILIK$9SQULFJQ/DS7N\))GBQV,MI2CRB*6@4"=3\&$)-B638Y5G M1@K/B,[H44E.6_L8O,Y5\J?%6I;I_I]V=CD2+Y4=.?,)*GL."34[-.1 MVI#=48 ;CHUZGVX42YK>6Y604)^\W;1\J=+GOJZ4B) M+&D)4,R*)+"U3'*K9^JBBIY)G2X^D>SE[14S%/E4+SG5[6U*K02:EUZ!@QOTM1KM4XGDRCZYS1%78^2E7:_WC>VXI*5](+!2(P 1YZL?I,@B\/. M6"V0>F4R6*M,/K\+-.5D3=Y [/F4Y+:D7A]R2UE9^6(%C3Q=4\TD=^MF>=4A M8ZF:T:CIE)72T>M/UR1+1945+, >G7%P5AWD$C3SBZ)19HSYH+HR MA[+54\=HY,GJ8RFK"F+^JD^NUAMKSG1S=(X/5.5DHDD^1U$SODV2&; !I9E; M9XO]R;XBXQ,I%9C:LDE-$](*U+KL?-HTQ2QZ/\4\'5I258G/@L72F'>+7::F M=#(M+AC*/QUJ]$8;#UJSJI%7':Y:Y-+YA.3+W"E-Q[5<7M[L,EVR7*L*\VJ] M7-?S33CRA*9M>9!P&_:F)]9WYFPC%RM=L8%*-YQ0"IY"N&3*[33%6%HD"Z!: M[O#4H?RHGK0+O%H5:R17+LI '.MBP M&;CQ\:=K*K/SKF,J/ MT#-/Y*23=.MPR"H-]7G)Y-5)WAEI$SCR9/5R>E=MZ:7NC,QOVY)$-_+4>4(I M=J<6JYS05\7RME7A1'+5ZPN'#)DG#Z7+3*SDUUVCMYKDQZ-DQDH!]-!3.1EP MOI&G=HN)V*M4B_)P7AW0T/!(G:X)P,7JS9XZAWB6L0;Y=J'M0$*E3F=J:]7M M>-)?<@;?Y'*[9&K@QBH3./)TIN7B6/>V\IB5R@EQ,Y\NTL46%PQ]/%.95U0F M19*4##0 85FE6%G1H*VH<@R32(&1RJ>T$WXM]?Q<@E:GI,C-=&U,KK?#M'!N M1YTNY#0OMKRVL?*!F+!S-KV6S^Z3BU@A5II,3$_T\EJS+VY[L61S]%I@JL]-V;B>UGFC5 MO$%OF%R]TC=$?2><0_]=K30L^P,V(]&Q64:4&IU>88/VB1,%,'>3E3,6!$U2 M9M"NZ35F8MM%(T_DWQ^J+J!JM0W97K9$EDELQXE%\QQ.DDXSG[2'G"'F&PDC M/S>V9#6&$/6PHD?NIQ<=K^RQXQ5N2>N!7+5Z1KU%*ORX+&X+B28G]Y?,J.6'GN+@:">X+XR3T3#J%P$<55G"V;FV!Z[E_'S^ M.'OLM%W:<(]&;MM??R@R3A#M@M""VY 0GG"K#7C6%3K%>NW2!]B_=@I^D?]2 MA'_2D><%[!,P'6*I(!^AOH1R1N@+PIT"@B8ICJATBHT[ A)?G1**YTXM&[[6 M"?Z>MA1;(UR+F-C*PMWGN>VOB-[M?U66D%>J'D@Q$7C X)_L^^I61!C:./TH M"(7 SX^*!1&*#]\'/U,6&@$/]#JDJG:<5Q(SAR?7R$ X[MRBUE,0%!'BSZK:IL M]+DW?U)DK&$JBQK$AOL2915K,>D >UY<(%>)O@9HQ/Y+"5?51*'9R9"]6KLC MSQ2K[]./[O+$N'<$=1X0YAB#!-M&\T:(D]Z>@)" > -Q$4ZG/@[^Z@@':='N M SQ\B% UQ;9EKIFHS(0DSTB 2;*@08'D;./_^L/&3T,[!-0+$S%DSSAK_#BY MNE1R MVI[6-?(TGTG.1I.6TA*^G+=K13>1[S9GV7FD:V=9S&R].3??FI8!>+(>FX]K M(K>90,R.GQ: >\IB&\P5'04+">7P+K3*@,R*2#>OV[K4Z!YIE@KS4G:B>&M2O9JH20Q3=_V1?P&S#$O[DUS^*8(:T[1\!#]!')6 5HR#;(P7)##(94# MI5J3!=KVD 1:GAV4-T1\#@H=!A>/ H%V7/B?P(!'FY(%+1UE;SH%]I?E.5!I MG-^?A6E7"W2'!#N$:\/L'!624UDZX/?AA^.9H>CF?E(H(J.&H<#'L=2C9(Q] M()4\"8"Z]N&MAR6&:_AP.@A+QKG$2_D@1V&EHU=:\#5C*#T'*AU^#XXLO\-@ MM _I\FH0>*] P8L/0Y41E"#/!=<._GY..L=Q:/]O,W52F#.8,Y@S[TJ89#G, MFDBR!BL-Y@SF#(:S;\(:K#28,Y@S&,Z^"6NPTF#.8,Y@.(L4:]Y>)>?#_LVH MY/U?_?;MBZ!R0[< 711S,-&'_^\7]^N#]*"3KJ9E6,+.2%A;W[Q3OFX7SS%Z7QZ]Z8_J M%L7$*>Y[Z19*O\#8C.7G+^2'P?*#Y0?C#Y:?:.#/I]E^D6HB]8;,T4]3H>]: M"_FFR/*Z//S?SRG\A5R+$5C:YY?ZDMI9V1,V[5*5[65$#P!J.#!+TD[U7R[) M^20WV4\6F:[DM'LDF/:SH-_.5PNS1W6^8LQ[RGR9IJ6BI-47\YCO[P P]W6\ M^I7N,BN1M3D9VWJ-N=2KK1D3W1!G4"-XGJ$O5,4+ T(TR((!X:L X=TU>J\# M")-B,DMJ1U#%]MY>N M#0B#<:61-M5BFO1RO+;-&]6$;>T+TZ0@(*0P(&! P(!P 4!X=VG@ZP!"K23L MZ'I3%HUYM2 ,R[%^38U-]O6G^+MDDG\!$=[9.>CR ;/7Q;MXX M4C.L4)1*GF#3_]Z")&-MQMI\>\Z(S]!F95E+#_)"*2MZ+)UOCNKLKCN:A%7$ MJ.1I)1JLSEB=?ZXZ7]25\!GJS/M<=L(/AJP$-KNLT5%!K*LWPT*O]!U%GM8= MP@J-%?K'*_1E7 &?H="EC+]%)4DOS76)7=RK>JA?U7+22$< M;PZ';X,"3)[]0G&G/0V"$G2HYIRC;XAYF-X-[M.[CXH*'I=PNB/ 1@5+%Q6S MW%>WW!>+^HUK.WU5;2>:"JXP#1!9UF"EB2YGL T034,]C='DS$0S7"0)MI%!%\-I'UQ]LM)_84K MI<.\',.Z<:+*8U)L)>I.^$W.O@Z^O9 MJD\6>GB'8.N*"9]8 .8:H/FCIRL+)W;\BL=4.6YI^4SAVK>7X0K)0\?YQ/<2 MG5[P&] ( 2YQ+L0:]:XFLXNY_SRGZ7KRZBND!HG&0MD#4L*2]+FD8F# P M86#"P'3SDD;%D]_L?/%4T@AQ VQ5=_8BUK!U%0O6-00K\>V=153M)KME,8=4=]H_*X2 #]CGI$S]QM>[B-F-Z>WE5$TQ57'A2: MX@+.T4,?.G5W"NS.5%GL/74U:[&&*P!:> @XDM?(9L0F#BT.5J)LY>J/HB1B9L/'R2\2#.EZ:U!2#0W5 G M]AHL[))NM[_,RI+77>K3OLV;5NX+#(B]HM8]UT'D@-Q[UE P!J946*3FJI@7 MY.::7NIBM8'T,0$-!3H9/RU?@M41&PK84+B.H? W4/-NI!F]CC2C9Y#FKTR" MI$ZRV^UBRXHK5EBPS5%7F_>"\JODKS\,'^?Q8>6:&(3R[".@J)^/0>2W*\C\ M_3#HM^TC28W/GX<0E=G:S6"W?;DF>MMVLC1P8 MY8W W$$-:;@[EJ?C+P'.+>3/OZ)1!PDC*#IX86 F NT[),$_7=H+_P[[Q2L_ COMK:@.^H.7TTD>J;;%\L=7/"EHUBJ"A0+:>X:$ V M6=JY$3V1 M_YYIV4_=4!D4H+6AH?Z?0S#D\[QMT0IAW(@#+@+2\DD=8+Z%(^YQXYC//C/? M:]^]\KW@D&M)0R6IK13!:)-\4Y!SR2YK^S*'''(<'3_M1?LY_:1P,!)G9$4- MAGZT*^_:D/015UY]Q2ZW5;HLD>UA6>D.&H:8DYL0JX)L[A0T!G'F!,[FCKIE M\7R:02%5+2G_=X#NB)["_-)9. *ECN8KY:L[W.M\KFF)Q5C3*:U4>S5S=&W4$A$,H MY_N.H7YE#3JCB9,S/@+DU]&:/S:](HSB+(<1"X:@D%6?Q;19L6>!<2+R' MX3T,B_T%'>\1$X>+>>$CMDXL]E_JV/TZ:;@%$NU=Q-](9;YGYOP_#P7-2]YB MWZB (1^*F;/?-'$^&DKR3 ;;8[UAH-YHECR0J$%X:OR(&7Q]Q:/KY;KO%^(FZY#D[<=#7JYEY90*1 M#3DT^60\@=-7L'5RV];)"ZD?U0$8YG5U(]85M[PH]L"IEA=L26"+9$;L43^!JMNIAR[P8LS?D)Y M*[&W*VXSV6Q&JJ\1A@7EV,DX=<$@*@:QMV;R1TZ1KYCJ'[FU8Q"+5#WW52\_ MFI6&G82A5ZKMC.*O/3<6(!CSZT^2B:>P&?;U2?^14^(KW@J(W-J_NB+\=SXL MOGHYH)RMNPM$P!D=EZ\<>PLTN'C9V5L@ E:&""0WWP*1L*!\?=;S+=#HRU.F;X%( M6)F^/I?Z%FCTY8G8MT DK$PX0_L6,K2O1Z1CEY%JF>BO@4?J8Y1CZ'@B@O6F M]F$"!3E6GTGE)OZM_*CJB(?W9."Z1K8.GUL YAJ@M:)W* LG=I;0W[:8XC>D MXE<4;OR&9+P5E<8YD#@'\MKEK]"6^FP.I _<3'TE"A.QK)"9K%.TV&6C*:=P M#F2$MM3(:2O.@;S-DC.W4.'X"+4^DA!92-0Z]J!3\0P/T$F;':;U;D& @(83 M(G%")$Z(C""B?<^$R.=A[+6$2-)+.=76U"N)&2736JF>8F[8 ,%P0B1.B,0) MD3@A\N)74H[ ZW%")'7F"#E?IC,Q:R$-C14EEO,S6LMT172$?$]&Y']<]+(_ M_]7T]=^*2#*.>!V*P$%(@T_@KT=2 ^;_+"U'1Y/Y;0,34F@-[D6?_!>2UJ/) M/*A!3+5,R_Y]D/7#$Y&LGSS.M9:_R3@/7[5/W>3BY"%H@:@![B654#S7(DB" M1._]#WSQX=^ +O>S"#4/SL!4E@[X??CAGTL@\"/:A9\$ZX&_!I.*FW5_G'N:Y_H_=/ "S0>CBC%R L>8) 00CA,2X^@:AG/9_OG&WX M&WH.G!346S/\Q _IO/_HUY_.%!#^WD @E-!"(&PP5_0%G%0 -DAEH!% N,"> M(PP@PNMB<)(01@@K5%E"=PAEN;2M#00$%YA;XK )AHI7\^9PENI[SI*)]4"N M6KVB86PGN6[/5H LVI-',!1S@/I;\^PM4.S/!J%NL$IAH8F;)4 %!3H6^NAY MPZIUH%KF@6@=2#,JA*J:8MOR>*UW=\HRW9;X?E7=,&O@]V7A^FQGD6=M;Z0\ M8M#59T(@WCGQ^]F<0/+3^5W=['NCH??I55RW-N,DRH\$0&XKR[AZUS; M Y>SK8\LI9GGN/IX^YCN/4!,(0A!L^AAF41PEHL%:@K)^K!2 H1+)8+]#OX1 M[F#>?M6$$BR;4!SX=&.9?D(V0+INH.F(]S";"?\N^4YT !S M?@?\?,?.%ZZ8ATO8+W:N;&*!!"SN-X"'ZOV'#P);,?CD\;;OVH>W'FWNO_[" ME.92\<1+.2U'=L;1&RWXEC$DUD'H#[_'T)-_CVR@&#$?DN6,W?'$=GG8Q^^' M*B/',CWWJ<7SA4I<&<^4+.O)C.CSGS99Q)Q+'.1),S M6&V]^G*>_O<8>.QB)8[\BL72T4/I$2@,_* PH.R!%8V:UD^7RX@P?SC@R?^U0B8*]U%9P/13Z) M00;=SX__GK$1K4#+_TM$+^F00@-KGRIKGZ2!?S9A&P^3J3;&Z: M,B,SO_[0B3L^P5TH83$B-^=>[HC]$Y'I%@#["V#M8X;KA_,:/K/]\!MS?BX& M2Z'9EK/L_4=H''6/0%Q6X25QOO"D;8;K&?5D-RO*"('X%P4-[A20 \_EX=R2 M9^2=MF#[.'/LV[HQO@1G?T)!BK\%W>@>A:_:B?2+O221M56PCEQ_KWC%"/F; M?J)1=9"@Y&MD>CQ.=GQG@B/VJ%S]W!*YZT?7<[E$;NG1\L)LE(842V33;+Y;LXRU('/8?Q)I'/KA\!Q% M_\GEQ.I'BZ+&/GA53@6D^O<[W.&AZV9RW9ZU=Y!^Y=Y:$5*82IWEM MZ-__\Z;KH4?DW$^ #A1C F)AEJ RAJ__K9B^LG7VBT^D'NI__K[?TYG ?X/H M_"_BZ.=_?IUA(KK^#B M6!BPBGG@UW\58FHC"^%_.I9Z5O_1SR_?R0QN'EEC(A->(7+N-4@)M>B+/,$O M!;L[]49:*E:R1*;>:L3OX]L1G&FMWA';1*<.9UK+BK6VB.9<:]$#[WZ]>VXE '2_O75FRYV'WJ?*>TTGE M8#MV4WZOM1+(@9BWW%X[FTCX0]"4*=1S.A#7^Y'"6B'I?@-LR'IZ6.!%LNRU M:X),R^33D;&VF]HNLF.3;*^2777KY5FYBD;23T=.ZMM5C2[5UV2[FZ@LAKFF MG. F,G/ZS!T8K7RJFLF1VTVUUUM.Q@MG@D:>/#/?:LFKVG;!B^64W*L):S"5 ME\B7?[*B9C\OY"JE>L?@A]R84Q;*F)T=O/Z/1O9]FU0DLSTAR[Z2SRQRO>&V MB48FGXXL%KE$ME$C):E;EI3@?UJM;MX!6 M=$JG867 +_KI#&W$!+^MKOHB4UM-T- 3.NV4"E0@1:^*WI(C/;M1&'?S/CP) MG=!)S_17*5T?T<:\JQ1DQ22:EJ@WX<@3 M.A6%W2BY6,^W8MNP>BM:5G?='GK["9U&J:ZUJI#F@"QWNQ57;.[T:@*]_81. ME=*L9"N+8E;RQM-B5:ZGO Z'GGE*ISJIYJ5)MLB*?+VOK&J5P:8F3-#0$SIE M>D:L3[4LT=AZE8%4'N:D?'J34OJK&9F*=#0$SHUU55EH/B) MJEBO3<5DIC-6$Y)_3D/'L[G!I==2@]QR;'_656*Y:A&)\\E$Y;67C"7%A&?0 M9,D>TR,F[^_.:I/7KDR9=,QNBGQOULV4=FIV'3SS=*);>ZZO[$U_1RJY5D,C MO1);ZTW.J0BWY/GNL$K7R5BZR$V8=#=;T\^JB%H>JQEQ6)Q*]9A'Z9N=78%; MVCG!-QD>Y$U3KD@K*9582R.A: X*J>S:!\N((7W>GQ!+8@7]HH3[<=E]H>EA>0[$! M =:*Z06.8+@PA5AYB@W- W-+P-'Z_B&*AMZ$:EDXR%U\UITO2D:D/GM,!!4/W "=@:U#U! M/%X&\X4BM=#"/^RC"P?Q0"5>+ _][[XMY1NE].YI&84S*0WG%/259=Z4A^/[ ME(V !VKJQ;Y^^&[BU]WG95YL/XHY@SF#.?.8,\EXBL>Q[< ;K#.8,Y@Q&L^_!&:PS4>4,'2>QSD22,\EX,HDY$^D* MA:]&:GY$1O@KV(YI\#-H\)KU]1-H\+WDX+[B&45]M-PFR\63?*2O?K\[CSE, M.R&"O),PF6.?>G*H-?;91<;VNTS4:/AVBCTDL1SE$\6")!^4:K]/8OFT,H3? M4@7?6'20?+A"$AU)^1MM"YK_$JC[+X':_Q)!.SHL*EA43D7EC3>-EYX-Y$&K MK/>=!KDP]#2=]-6B-"G(9Z\:TS+%H;1).DB/_'![V.-DQ4.NY6<\K+XX9&9> M.ZN3B0DUH=K:"0;-,#8UKB0;_=KDJJW#C^@ UX0$1ID\M-9%K3,/Z?",WLM@L7DL-F#L5ZM,=R5(]14'^N-8>>8M M;TYL@NS8BPH.BP7GL>"P5=!7:OPX)@$V5^?(*KOVUL+-"0[SZP]YIJ[#:Q_\ M"]L\V.;!-D_PL(YO?1$&Z>K,Z]6$E2G5Q3;@K%U]YZ@1Q:#N+C7A4NF23?98 M6I ,D".5[ 3R-OE#;9ZO$QM_+AD5FJEUG"6C9L3FQ]K\WR=X PG MI055C51:M?KF4K8!C1,WM><&VYG1][9+[;UG+M7MON@R;B+O53[9XOE)R& M:&TX0;-LL9QNN4FG7N\:RNU)SL\U?;Y0=E@JD:2W9+T@];8=A1I:!;ZQ:-Z> M[$#KAR*QS^?KS)]4!*/GV/YYY\-REF=_$1#EY>XJS?IN7P+ZJ-!JMPM\=QK1 MXSNWTZ:)$B46I'QKYUJ+0J^6(U&-IJ":U$\T?[Y0%(MT1S,Z-F@!\1N>(,/G_CS[]"\*=-/(-D2J>X M"+OJ!7TK@H]0>B7*K@R2*\]TJN"J(#LU17)B; ?6/%>@75GR)OM.GW>I1/(R MC2HPB$6$+!C$G@.QV(UR% LZ%O2O;^,4<9=3E/.,+F\\'!'B<6W=<[W UY,B M;9=M;B3J*36Q4/)2SMN@^OFI7W\2[(4:66'8C A9,&QBV(Q&S/#U3(6( 6R,:L3A M]2AGQ*!3$&K>G+*TA>2ILTG3!/XZPP;0R?WZP]VE./X%Z+R%XB_O"![05! \ M8'"VR&W4\;BFQ?QS(/XH!G!(20AB ,?Y"=>$U+2=S8FFTTX;@,YFE_/4D@3) MYFW& ,32UAG7FU)?]$H%M=I,)VFMC7I5,;_^L';VYO?,FZ(\D4WJ\Q M_F'\NS'\B_15KH@AX(:3!+^ZC_+VWG3WVME^_S7RWVI0'17^S(SVGM&*4"M\%K2O#\V=Y MV]>5W3A=RJ9%R>NLQZ,R6S&DLA"6#V3ODO1+P'U3VHI!#(,8SKC'@HX%_:J' MNXA>N(YRI;V(G>UZY7$9B!(]$%>Q5&:8!+DRM6E""R'P[]/D2\E/-X40&#@Q M<&+@C'!@X/4Z71JNH%$HMRYD8^DJ_Q$##HSK?98-TB_(.D;+J>7R5EB5$)6)XHHI.YX]J7K2D%$X3^N,C)! M6.\'B8J^\)1PW(70[DCZ9QYDX7C[ @"^$?*^:*I9SX822+A30(QUVW&)E:?8 M4$H):QP$,NZ(AU9[RZ-6>R/$2/A'Z&N/U0BXH.X M"$6LH=#"OX5?AR-4;^Z%S8(/0%'SYG!IZGF_,"4_N(49F;F86QA]\XE^!0-" M[RO0#@M#:SHD,W2DF+S.9B;B/+'N=+J%G. ^EOS;-0MV0&+"[J' M,_=D#=W$];&@3G6P#AX5JEY-L6UYNBZ4UO61I!LK*MG-#R=3DDT(O_ZXR/B+ M;8%B'Y1OSY8_A/+P("0DGUW%[999?<5*:A]@^PL5UP)9J+#4L#"PEPUIJ\PF MN<2H7?0E_WRQM7_%B2#R %GW,&T"A"A/V$"U)@L(2E#%H843H O6[NMKMSUK M"@W='<;(.5EM#4L%/TV;+VOW$<:CG^'#[X@%"#0=?CX&N@L5V;DC?,4A_N^E MHG\W* ='YA7W-;H?Z./QD_8V5^M>&>M0%X]($\K./1;P1X*SSC4:S7&#<42/ M=.KH+GOCVFTB3%$95.L1&HHP:@3LSA=. 0!QEU"E%%VD5D%-NT M"$Z\#_! \__JZR4,RMHSM(L DE4)'[ MZ<#AH:&($KSN@N[5Z#+T[X#&[P1]7F;(\)?$>B!7K5[1,+:37+=G*T 6[BG+FV2RF!(< M7LK4MV6YWTQIW SB%8#:LH0S<&T/7,Z=<@EQ#PY)A^_L:Y>K4 :4I0-^'WXX MGAD/7[6?U%S9Q +F+>[]"S$3C-UCAT,L< 0$GQS*I)/_0G-U[<-;#TL,U_!A M+PC/QA.)E[(H-7U]YI7(%!E#D3]0Z?![##WZ]\@&BA%#>_<_2\L)-.ZW#<)= M]LDS]Q7?@QZVZAWN-O@XN[__4N/))G"G,&8S!G,))AQF#&X"WF MF[$%;S$7YLS?WVM]U:7Y$_+V7CO4W18-WMY4]#EZI.)D\GNU&0VO1H\^1UA> M!K4O%I:3Q6,-^A(-HKZ= C%8@2ZI0"\>+;#^W+[^T%A_7A6>3S-H(W!5X1'! MJD!Q/#M,7@W3VXA_HSPXYW\_;??%UW$P6=X>]HT"6=Y^F>?C^5P?N/)E)]D^V+I6Y.V++-LSFW2(<_);?ROH+*4998"\P5?0'Y<(0>A^3)_246 MTY!&A7)WG",5+KEV>L6IP$PF,HV*J[P@:+_^$'0\R=\+U>-DW$_;I*(@9)'2 M/0Q)SUN_F"JG7NTHT.0B*,T6Z/AU-E"[- MG4ZQS!0X,383U*Q7)KNNVX0HG< H'4'%PW"$J8)!&C66.P)I^D,@S=BQO.H) MC1W),TQAPN5,OEOQ(PG22F&FJ.1FV)7T@K_AS(ZFUP1D2E/4&U Z@5'Z8YIW M"S',U_T[+=TQB+$- *$CSR#4!0+J$L"A%1Q>^E2WS>W76_F["_F7<>P\7*)E MWW"'=O^.3]Z@((#D('X4]_#1@NAQ[E)^D=2+V69/D.K"=&'S>6/=J4_0 M;65T2Y:Y4*F\"T<<7L?7?V$4P7'&3[/8?S"*7M#Q3YF%DT0 M-*VG?OVAXHD?8(M^VWR5K+[6(71HQ%8'IH8CGS@@_.US5**^Z7QO_PP">YS:=5=>L=G;Y'##H^M N^.M4.H'(_+WR#,1'1?*&2I_^[B4[Z/2O4%- M7\4-*^42&LY#N9D\E.MT\[GQ5)(0_X+J[@X"3T>>9&:9LA33EG9ML M,68S NZ4B[=C.+M/'##B_H_U\:/R\O>;!GF_9]1L9;U<#,N"45;Y^M!*6JF1 MMF_2S)%,G'^I&4YTG?D84VZ$!I<-J%ZI2=J/Q]2K.$1N!E.IS(9B%MD18ZS& MM?E8[ X7A>X$8FKBUQ\Z0<;Y"_5FQ)B*$S0PI'X32+V*2^-F('75R['C@;YI MDW-&]VNJW]IY(V2F(M<&G4K&Z0LZ-[X%H#QJ7!F%+C)'#WO'4IY>LKI6!\[G MU_'&F2N!*,L%T^!8GF1X'A5J^(]RV8Y%2"=;8.G9ZA1J9L.V)K8R?])^J#.2 MU=%<*)=R]:S1*]VB H* J_05%Q@F@7A)9(M,2&U,H4A+9(-%KU?$NHWA=M^B)=J2^( MDF=N"9H+&EW1=T'7KK0%<9)0/'=JV3IJ=QAVY:)IXH'-Q)[/=P3\Q/&0*]"U M"$@#=1H,1Q"N++;$7-D2]]_QEFC09S?8"WLG)V2:"W[FL4DRA6W[?7)5:Q"5X9 E)H\:XO%OV-;@5'X'F^7I5.ZI*\PM+Q#M M,QWKY.QDI+#39$[D.7M04M>^,0'-\\TK#QWK#KW75&L^MQ" P-?'B:..N Y MW==.6^(>L\US(=@<6&\?KK<22C#78]%X:-NV#!>&GG>Q%HKL68SZ#(;/K5$O M9IIYA\S/4_6,,QW75M6_Z(!X\J[[.\)/.2_M27U6 /(4[9122G9FT&NRJ6]% MRIW* D05[L6FA40/<>TP ZC+4.]07].W=[;=&Y6Z-:LMD]S ,^HT52"UQ6A" MCYXS*A]4\-/98RU6?3-?G]&D5UMT[$(V:V\WCP[NQ5KN':&SCAW:;4]YTI7*6'.JI>JI;J/F__O")Q!W/)4XY$=+OG"X^ MZG1X%E-1= 5N_0JT(Y4)4BQ=!6]0J[\\$GPI]]YR1CC+NP/7A)!8&6]-5VL,V6ZPZK($1-<7&*.>'C1=M__K6Y%P4+^S@H.P[^ M+[0KJG#C9^[V6\M+5@7[.5;%@2ZOSNTRY@7\;2P&WR[BQ#TL4! M.:I.IWI:?G2FCJ4N9'VDCG0%U(URU1KY9:F\IAN;[:+;*X )NGUQ[AS\1O(3 MHY?,E( T1UN7$[!Z! BP :KG!E(#GSB9$FO%UBT/_ATH"]3=534]=&@FK"58 M[ /6]R+BW"$072LN@+;N DPL5P^BW*X-OQLN Y15!68P [^XCR9QY.A%C2; M4"-6B-&*;@8M2(-YQ(G_[W\HGORG\[QH$YH%5[6P7,(:016#;WLDV5"2[[^! M?M_O(ZC_+/P,?@^U(]=#R Z"[X=7'E@:_@5UM'U!OPY4#5OKHA7?(1(B8$4_ MPB]#40I_(T;;X$E[]74)W74(37?@GX,W!7L5' (AY@4K\[%U.0(3*"7WU$5? M>5@G9$2P;Y:\!2 8\NZ,=8HH\<7Z_CD;Y$'A!ZLDJW>+.5)4ZFU]J*:RYJ;N MO]OZO$\,.JOT9RS0AS$OG4+ZICZH2CK-B7.Q1U(YVW 2.6B$\FPJ?NXRZUN1 MX'!@>3A?/#*-V#T:G(IO/&J;X.E^?7;%M[2%B^,Q4%'?$Z*D+%"[>((Z-,-& M_"DNQF';;<@>S0L52U#=_6F2A@"ST (D50CJ7Q"S5!V!J+(A$&28Y@G 0N@4 MCP:%T(C %KX-0@S$!L]TB;%MS8-=X^3K0;OOC2:K0&D0S662*FYJD_3DXPAR M%K%"#G6434/9HDWO+%IL\FHS4ZC4YJ0W*;:MUM#+BQ-X5.(^!2O0QA8>HXZ9 MKSWL.] ^ ' WAJ2:.@18(&EXPNC0G-2=1^*"5).&NZBJVA[\Y,!D'3C!7ZA_ MT" D>1FXJX$%VACA3T')^$! THJI+. QK3T%P+T&/OWUX>'$RQUT_CGJ<*2: M0+%1]&+Z#]SOEZ:R_1UX]O>O/I3.9] 4H!5QF!T99[CETV[I1X]]]*P8-+G, M?YX)F%RCB=*S9?'#U]I?[67 ==:_J:I./]8!%@JGCB5@8LK0L JYH%? M_U4(" 80+/^G8ZEG T/H9Z@$$!3-1ZT%]A_]^M,);'L(]!F$O0O7N=<@Y5K[ M][N[073JC;14K&2)3+W5B%\QQ/#NF=;J';%-=.IPIK6L6&N+:,ZU=KU2S H= M^$NN6!-JF:)0(=H=^$%5K'7:Q+\SAX#1_W[UVDX$ZB.=*5Z W:?*>TXG]R$_ MG@$IP)*<# #\AQVK0!YQ9!+^Q"22*4U1%8W?QP*50[R[._1TMYIJ9,B53TON M:I"T_=H$N=B?CNS)Y?2H"))%(Y-*K951>BC.65^F3T>RYIR<#;=)5]!%;DVQI9I6GY@<07XZ #709:9.WW& M.'\XUYW^;1\W0N988*#%+QFB.$XEI&B9V?^VG19BD_F4K!A;-M_LK$K96.VQ M]?PTO!#4E84F-.H5Z8#%7\<7JDF6-PK9E;0E4QMEG9-J.RA2?VK6LZ$%']B/ M@SQ[(Q@M*'1;[YFSMTO"?D?0)C&5I0-^'WXX%@ZTC>_E D&/&NYYCXV&HP25 MO<5 GNSTKGUXZU'GS5]_R;P$CFP4 M^&WK&Z(:.K1%Y-#^M%:?7R)5;Y6A#SM4,,I$5!X^HB)A]?1D=?HTV0"UT\Z>_S&9#E_]HV CGQ^::F_ M\$B_,<1PA7SWCBIS[J(O!=X:2 M3]M@OG0W>9JB&V99_3M(N;(\!ZJ"\[_$OY7/:3T?:6OCBMO(S=^U?]7E>2L8 M_^X[:Q\%^!CS47P/[\+OX1W=B*D"J)H/0,_< WVO-N65DN4,CVN M3^WK77,4><>RIU=B;D&O7Y?IU\^57WN7G3X)O#\#1%"*GR3DD6^'IF<2NL+W MA4[;=P21/QF C]=S-#OT:Y@[:"I;RW-_C_4-T,Z1\LA??DBAV\>A'^W!?R-D M3P0_F 2TM>XV)BUZO?GH'3G35V#*\?7RAVQX\) 0>8*9;P"7 MF\F-/JD =E=4^C1]K K6Q1 M[W"ZP#4K6I]KGM;6.#_NBK4U7K>N/^"]N\I$WU_X@XX31%IJ%VMBNTUDZM5T ML29TBO5:^])IJS=#X==N*84V+$IJ&^WU ;Y/=PB%,,"66"JV>[A%:BTF5G"- MT$7W-R?!/W# < M ;! ET+1Q3A4$MFRTNS$#S=* MA*,7!OD 0 L.T_OT>":;]+.BW\]7"[./;X!D$.UIO*UPN M.IPX9W=$P'AI(39T!B+M.EJQ6/2G'COY]8?FXZ='DON]";'VMJV'OR2;QW-N MS>DV#4/)2]E5LUYF!F,_(-MIC=U[LNVOR[GW$6='W[QXACW];*39<3,4-T,J&3!]C8"9!=SYHK]/;N6BGY_Q?%),1_X*?Q] 4+"^[H; MUDV8>ZZGF/?7O8^NW\,-:QW;+M5;LI=M2!TM?\*@;F6]7_G[TO?4X;:1[^_OLK5'DV3^U6"44'I_/L MOD4OS2,IAI=0CJ!5_=MK]EE;[*!?:G][;%V[;*'XX MF)12.O+-?5DI]AN_*C]N"_^,3+=SB<)]F9"*2AJL*:6T62FUC(P?7QWV",QH M#T1A0&SBZI9(9]-[P#LF-3#P5C08$G@--+H6:L370HWDM5#/AW^0JU@IH#%Q M0QL@TU=##U>-[HQT77;9O!1?UR61.&(E8W2/7C?!:]VT-IF'[4I\$\0;8LG" MZ6A1$>(:^*%I>T%X4STVW-ZY>A=<5$D V8'W3@!+5OA,T@@D]A#O]/8B0>D1 MO.$+"+^@5UU.=1?P;.LX#)E6[5BW7-/V+*YVE%*L"*>_K*,(PYV'RK"KM8;R M5^$<:\,,6WL8:*F!S R87%YKX\*L!Z_I:=6_U MX:?[=S?*^>W8I&&0IVN="?=@E/<#RO_=B6#HWE"@!CRR+/RY1QHQG(%-:PZ] M.)Q\<)S>/4 J.@Y@%5JN@&&=Q17G'.WCE\\?W]U]D5M=XU^]&5ST_FF";%YJ MD0"U#\*)%IL@Z+1-M\ZEWV+I=ZZ## GK;&PD^18)N7/'=0'L[RP=2UYL*>FN MB&U[$^M.M\W]RSDM8>_'/Z_#46SK=.75EJ.?*2+MI_1KYU?/VYP_?_ZDCE\WW-<^8I,LN5C:6=9]OB$,J MWV\^RT'[2JYWST::-4;W:YGUGB59]\PB17D6?P8,XHPHJ2>DW]AUL!H1*YB& M!=T\SW%-6'DL%J].FZ$T1.< A*<_P7)FOFMV@SFY.*0!/\;@(&;9G.!F8R,F=/!*>AX1TA@7W:6RW-V.<1L]? M&5$,YU:MF7\;/PKW-T3_!JZCA.[4V@V?MQB MG41MF3^;Q8*:O=M*^(-R M[0_?_@XLE."P_LMC:,STW0+$!]=%8;@=!U7'8"I?M8 MS6ZQK:R/04,]T*)RUN1PU>.2,=9JS/_37]81 !2*%(@AK[<;5G#9_.>JTI@\ M=/6'Z_N?_]R='E L__WPO7LVKC4L^5??)^_4LY_M+_;75W\5%YP@;5Z(;B/Q MS1&=IE#_6OGW2UT^_5"X-;\UJ^^=R:?N:1]K>"]PGC9'[.;V??9K_659X&.A M<*6\0W$_M4^$[XY[ZVTM\^ON+1:!]L)$ I\=.N!3>!C@^C0GRF'+'H#$#RP? MV,^*5Y(7I5#J*.585DQ_64=63&%-0=VTC5!F6$&U\NV7];'@"UF7+H5OX!B]0KG]X4OGG_>IJFU+[]Q(/R=,J4YDP[Y #C&VL)T_$_ M7WT[^_O7C?GID_K3NVAWQB,\FDU'_V_A)' ]\>R&$EO$QM?6$VWRH">UQ=9Z M@@Z4'V&O*0G6US8( =!]3N$568?VV5W0*/TR;[_[5NO=]YO2M]+?!Y3T7W[^ MZ_\8?'K_L:&>7@VOK"_G=O4&)+U6DFHO4=)G&]V;.P-G%\WQ^3_7/QMD_/V= MUFC?C:I== ;4!2$>+N8/*>91($8E]:DHC 1X'%=G5;& O8?FV(NS=,"F1A%+ M6T(D8.U1WMMU8?UU."/QF9?HZA&]>F;"2L@7\X[TFC:L9V!V+>Q5"PKKW>1< M_^FXIQ;HKYEFNZ1M=R7_[01D-:%29$=[W'MV6R?.*9^[8L=6R(8KJ] MY^F&"G)A/K N'I MY)UN!6'/%,QH[ ,OT\:2HF 0U]!4)W\+T87(?O1 F4<(+/=P?2WP,>TV-]%X<'NGKIDO7 MR_0 L]TC=<"FPSQ,F XM*H Y:U\Y:TV+<2\P')+@K8Z^0/ FQXA>AF;9S&-J M.L2YG&!S.S:AA)LL8XT>Q'ALF0:][9JT\I,]MGC[C&>USZCQ]AF++D3R]AG[ M(\MUZB[R]ADOJ'W&$ZTCEEZ4S89YD&U?+]D)(;,VM= M*W/-CT"K>(2)/RDIE_#U0^-^\.JO8FG1-G5Z5+S/:3]WUI?!:46N>T75,:?JG[_J9E7>I^J7!G M5&^>GQNU.U"6C;];UT:_]^YV4M5+]4_O^E>__EDIK)+1*]T?NBIFU@# 'C'F!0@ %(PIN7\P5=PCYJ MAJ*0KE$AG7ZQJV$?-:6C]TJDHW1)62Y7^EVM.->?[/+[AYIR>EKX>O/!_JKW MS'*M5/JYL(\:^3F\?DE>N+^JX]OGLU^E U_[^=&M^ M*%YT]=+U><>X7]1Q#2SEKY=W[SZ?WJ@U_!K'G%MGW9C8KO7UWROYLW([KGS^XK8UO=XIS<]>^?NKI;GZ MU:=&\,/ZM]#]^)-J]4QS_>UZY5?_VG')GT-!__OVU4UG0;>Y. MLWZV;H:^?"K?C@;JP]F0/'SM5.>?_/=TY'WZ>3?Z*;=NW!^G%>O#Y8]O]YW: M_)-C\NMR7#S_9,B7Q9'L5V53^]2\[RCR_*-5^>YK\4?7DV\_M/O$)LUA^>93 MO:,H\X^._E9NOW_M-LLWE\K]NW&W7KJX.+_'1^> _]#^W+SYJ/_XV)A\_5IP MO>#!*I(!/AI!?X<][L)6N8DS@&45BCX[M^_N:_X5N='/OAGOM75V?79AB.ZYC-6V$.$\N3[1" MK)MMU?C[JG5]J_\3=&Z:XV*KU:\?GE*F9YA+VA^RKN.CL6-'=_[U^8[2HI L MEGN2TUY]K"!Q65)Y)ROV/33Z-NVQM\I5R!2H:L\"U4XU2^;@ M-!3;@XH9^I:T;^H6MA'+3T.\IL"^+1M4QPC#;V>_HF3)]8LLHE^Z!?IYN M@M)]@A^W;K )*KMT[.R(AU8,@)HLLA_2;;W)"6X#<)6.G^#>$X.FMD3W(K4T M=$$&.C.N@$E]/J1^(J3&85GJ/IAG]8BQ20[+5&#)(H59 .:3_?1RYEUE 99' M0)@TBL9AF0HL64PK"\#,#)-GSIG=S%I16*^SEF[I+CWVO]<'^ ^FLW4=._#> M8$4*T_,P*2X/'L+1!-B6GYL>Q*A-H\GNRB/%/3?99?O3'F\U[5:[6^0M;]); MMS$:6\Z$D+"M22*#Z31P79)(H)TVUNU^K'[]6C8-Y_;#S<]FNU2XONW>#%AC MW;(J5LN[:I_.!4 *IW_Y%0"K#L:.60 H:EC.1NMH/^Z"1N/OUJ^;SR.O_;/M MJ'7]OKY7"6!\NY(_V6[_\PV( 5*H50N=TPM,C"Z#!*B(QW>&M(0ZZO 1F,BR!=V:"A1'?6'H\+7:OJ\6*WFD%G1O3&5W8 MI7J[^FTXP$IGK_[2%+&H+"H*QL7/H6TQ#KJ\A(PR+'YV9P"N+W^L'U];WUW9 M5VX_=R[/U&[CU'YW]17D3QF+G(DU=;Z+VA'&NS#*-7:QW:4_$<-RV08MCZT_ MI&CO<1%Q\%#7L<")1\Y2--L2UT.I,+@*14'=[C6H'&BC&%CB.]?'[WKD1^_S M[:\OEZ30=-U6J33 =8(054157M3G@'0N<># N35OLN4*E3GXH[RY: M/QX:A?;/SY>=NSHYU^L@5, R4RJB+"\+R1]M0.X]8>6CL) GL0/"G>'#FVL< M=#P6ESVC+O*%L7XDKO2[Z0^C^M71B?<]#^W:N\;NJ,VE-[Y>\/[ M=-^IH$VGE,1:==EY")=%/#"7)]#QP-R> G-;"J-:K^NZ]L^Z=O-Y<'G;T.H? MAVZO#L((;<&JJ)5+1Q^E.YWVW.ABQU+N0/.@7-;@Q(-RNPG*3=N.4-9??7VG7+=J*$@8<$W35TF2(XV^-;$&Z#$\X6Q/F&=,FS! 5JZ/G>!#V^H<=#Q<%SVS+G( XYDR!43(4O./_Q1K=3_\>WFIN4/?NK5 MFO?5'M0[M="64[0J#\!EBX5X (X'X+)J!&XL?BX+5S^EQ7S5 M_*/>I;Y';2Z7SY>Q#]>+^QQGMCH-7(8IBK59\B3&_-NUD MO: K"'>V,V KSH-N5LYH(&=Z3H"QVD,)FOW5$94/]5_E.3P1-P/4IREOA MFET#@7]I/V1*DP#DO[";:L_TC(!6J\/&=DX GSRZ/2)T=0OO1WO2TKK%PK1. M<7[1M^/.B:=8&M"G?:*!S3#/%807L8T5?39OSVKCZJ#O/-P4"K=50V^82N#= M9Z5[XO+>FL6HM^9E^V/C6CB]/#]OML\;%^V64+]X#[]?M)L7'QH7IWOHM?DT M>G[/K$LPCZ= M5B. ?SS'AH],^V?@P@?$OC-=QT962[X.;V OZ=A%GTP_<@FH- MW[=@>GN'V\ MJ,>*^XCW S_ "6P#*.EGT!M0^8DHAG>0(!QLUNI;9!2U9XWHE]+3'9:H0")D M7<5UUJW<)0/=#>GP:7B( MBOQC!<3P00:R*8([!H?3JL9?X*S!Z0$D-P@'-Z M &FZ$J1/-J-T&,%V;'*,1BR%2)0Q!0,\DR")2'K$.&2\!K1%TQM11IEV MCXQL:M>0 M?3&6]XZ!DXC'Y"$E4X<^?.^XMX * M;VB.J90 ZP'6@21)'MC^F"2%1V,( _ZPP731(N>S,P2R4,0-E9$U?>Z"UP- MOT2DZSX\C/Q"\8Y(=T'SPR.@ M=I%2HQ&1,,@H%B5)F@BE&6J^+KZN>\R]@Q=,; VN^S 4\!QL^@[F0G:>K@$^ MCY8@HE0A8Q\? $H8 N"15&!,H">0T#2_V=+O.75LK>^B%H[K1B ?^=8Z]1$[ M'ZU;I5PL*FI-*<(T;W3N0^5CH6HUL5 :::TNB6 G%_W$AK>(:L?[0K?%TB=( M8.1M:IN4Q_XF>Z2#X)<[W#%K>)IH_FI81'8@OR],];3"V:[P^+?__?3,O< M.'A?,!S+<4^B"'T"G.$"5!JL'Y "Z\BK]V'Z$]VZUR=>N/E*38HS0$[B(#]" M7% 0SJ^%Q,\(I3DDCO2'0@*0X=E P2)] ![+?K,95 )/US1&3BD =\9GZB* M5)XE@:(B5>9I8..9@#7#6N%'K_YJL]M* M?0'CDFB@Q!RCK^::Q[!?!-)05U6[:E\E/O[RH]5L79Z=[5#Q M+1733\<_DZ=?8Y?0GM1X10Q\#$&5!&&Z*1JJK[QM"=/-T?AHM#WA\DPX:\*& M3YOU+Q@U?=]L1\]<-UHW7]KTD6WQO6W9N,[#WK, M&X%M9_P.?7%1&!*]!VZVB]GV--SU7I_XX+D*[XAN#$7A#&2JV=-%#*[IX%CJ M-& 5^LS@]*&WX(V)8>H6N&VQ TT->!JPM$*?(_:6:1 @C+BQX%[LC8ZK;>TR4A,U9UMG'_/0X<49#>8^B2Q3-/A";# MZQ1EK1BU[R/4PE>2< DNX\S#X1@197@KZ]!H?==R[NV"B7=L\3RAC^'FZ?.B,':L M2> 2\(AA9][8!7>Z[^BCL&'7@I?12@LL^!5@ L:"'X:2Q)EPU1, G2Z9K9;& MSH")G'M8B8OA@$$0!I8'.IXA"#W'<6E8T,&(D#A:4-HA!VM%(&5WI0,WOZDN1_ ^!#Z<<+$ ',P8^D MS4P(CYZ6T-,B#Q#>"RQ\ I=J.0,@4=. )T9XRE 8#W6/1K'ZQ&/1N)DEL0W. M+#*.-T9'"#RHL-Y241PL%A6Q8)C&5KTIU2(&1L0 &D)_),&'X@Q/&D@Z#NMU M-TO"3XN6F+R\.(SN$@_DC.V;87 4N^01%Q?])HJPPS<$UZ2[M\3W-A%)"HBD M7G+CS+]9+9'H4I3JXI=AKY%Z6P+C*)X.HLECZA.^#8/=(-]@ N^1.HX"\PZ+ MB:- 0?1[+!R'F!%0)E,)25B >3WH38\JQ!!+R;D0=CJBR_QW;AUBB,B9CWI$ MMRBB1P0#V#&221@I9!0P HQ;NBL,\0 M/&38[6G7$?%NXIR7QFR'.B4 =*G6 MM0>B,PX/P\,TI.RA/@"$(5&#Q/>16L;$-]$/P\-FBZ?3S/8; M=6$'(/^#">5FYYZXT1D^&BO1.7YLM0 )8&V+:2B;YH6) $R7V ,8T_;8RS0J M'1T*_73<^:.A#>W5(N%J M=#R83ASE4!TXB8[;4'Y84P,'7UXD*B2AC:?(%.Q6=$X."^NY)L4GP7BZR1)] M8%;7"08AN-AL((1-.]Q1BP 3@G/0)4P4H"*FAYJ,*LS'5+' :!?66#;>.&1 M@8O^!(S5=1TZ&-H:L->(6T.1,I5*(\>-COLIU,3PO-Q"W$_/$8#N\;1@0)P! M.+9#TV#REGD.3-A*+2GA)S")81&60"&@?(PTT6*)-N.-#%SG'B!PC_D&=]0. MPL.^P$W0@@N ZP4N#AH-'OLP8(790&YH6HXP"^$)B7P_1#J?3,\RZ8'J++F& M4\1#CXE^B\>).#P]0PU<0*G'T@L8MA?Z:='*Z^C?L;0!Y,0D28-G&!AQ @-- M$*/),1/#HFK;NX_R;Y*)-ES^KK?4,R!?/;;R0>/Y( T\3.S!P[O$N7N8R $? M1-D=8".'4A#$W7H9F94X([,5&F9-FV7ITKPL\Z]HML#6P4Q',P5E 6;[T)_H M93AJS_1-&T02<@@>YH7GB4C%.I7?0 U7N@O#BP*--2F,:8&NOK)P Y#U-1D[ MKB\)3X!@FB!#Y92//NM@(DX%,4KXWASA,9%$#QSU,+\*!)B']E\?CZF=<&'1 MRBHBA8DJOST'"3&@.PEC81ZJN2@W%8>MPY 3L*YP,V7 M<>X-G0&@'J[U?WJ$J8)'C *0"/+^"7F@YYLS!Q___14X_MN5=,@>>_LJC,$. M?7_LG;QYV,^_+^>8_SYI@Z2 3,9WI > /@-H%-_HY0UK:8I M;V195DJEJE8!2Q=^K-5J;[I6KX YWPK\_Z#(M]+0'RT*[V[(,2N#P77;Q@P[ M1B2Q$3\A8.@!VH'$WA.#C,#-%C2%FN9:(EI,\T/ F28]9AC@JZW&*6:.G9&N M&V""@EIE%CV75&M$3SD&ECCS9F^4,/>*,4 10M^L>^+=@.;LJ\-+\I3 M<),KR1DG\%'+F%%(MSI]"*OP4DI]"IGL*F<5;$J < M+R_>"U]OZM?MQC75B\*WQG7KIB7,?Z7M^IK$T6I-*@#1^:7Z,8Q8V!AW9]T- M!S1(B$%K$XSZJ9*@N#A"<4 M3N$20\G&;D*"5+/TL4=.HA^28$%!$$($J=]@7#,K=A(W)4.9(\_)"M^-9HW@ MRW"]]07/BB95U&4U9!(LG)@2@RA]P%=$3='O].S\A,GM>X#+2GF9R J*']6[ M@)7 )_N6D^FD_B6UX+/NWH+"65HZF6-F5Y@9P2@6F;D/?C TS,,>;8L2 )[F MU&-@XH3^A#>R?I?% GSUQY'C9Q7GU*1:F7-.%C&C2"4NTS(ATP[)(%RF;273 MEM;ZXYS#9=J18F9U0;I(N&WMY1P0,K5%>;M[J72TRL$X,% VA &XW?CAGZ]* MK[:$AUJ4M&P7VYT-Q:X1LFH/74*$<_ABZ D->B2$F5KL/%N31?;#M";,6B;$ MMH(PSTS&91"701O(('5;&:2 :9[M$KL;RR",DZ\I89YK:N6?5Q'$1'0NE)&"8.LI2W=3#J.T%$?!-2IL^XZ*KH&#;;;&LJ*FJ:O;01&B7'[A\?)FAPX.[;V03*JD/O@TO4),">DJ&UHB*6:W*: MI'*\+M]S^&>WI))'H*PZ8,T%_U1K);&(%@CGGS0MCDS'1Y;>:)NQ1P2:THI7 MV%YNJ&0&/B^TF71& 97'8,L2YGM*1I=KDIP2#Q["17RN1'J=VM[W'T_)*UOE M+OJR#5M5.5L]U[;AK)._Z,O!#)JLME/.*-1"ZX9#[>C\SX-P(*>E;0TA#C7. M@4<4 HJ+,917'^A^2%R=YADS!SBSXG ZQB#0YKD"1543:RK/%#C$N1>'TS%& MC+;A046LRC+GP?V=G67'2EH:2TN:26$IF50/S;)-$H<**'&HY"RA9XL@O::D M'*3/3T3^J+-U#A7,.3+N4%\L=^0A$+-6G<6$C;$)S[!1IH7@]GB\E2T@9E+8 MY#1X,P.HEQ/.R2F)Y=)_/-C95ZX!]7+".CDEL9?%BWD+YL <+6)9M 7?@-C8 MSX>5_=5[(],V:1L,[*)$'L98Z/?XXS8\2L-O73WCUHBJ:&))>SFWKO@E*W[) MZAGLHE2+8KE6X>QRG DU*T-7F]@>V$N+W[WB@9L\.HNYR\/9(N2NE*0ROS7" M@S(O*BAS"#XK\MM9&0ZXY%*Y9SPH,/++(H<^LCH>6CJH MJ70\8.0LR>]O;71_Z_)1L\N7?84GQI\SLFJB*+6HW?\^+WO+(( MISS&GK;@0:TB*O*Z/22.E ?3D_B9BUVE>?/KL8'%;W_QO*+#0"7SB47;';85 M7^C]EJ-.(SH(=V0[CV@;[DB[@&%^N",/81Q^^^NE"IMC"/(<;4PGEX Z!B>2 M1W*R!"A^MXNSWA&WU;KTA\2-/!E3S#(7*CE,4R>\AA_KXBJ M4OWCQ>0*\'M;^^.(;(57UN8(11-K)8VSQ)$FR\ <3=MP1D3P]8?4[W?GR2H\ M;.0CMTEXAXV#'!!L.Y.X)54LEI34)2[GQ75#(9P7MPJ,'"4O5L5*2>:\^$)2 M69:E"E\07S"IJ91JDG!F\7ZP3,.YRU8:B)*>$W0MBZ M5 8 L=/$0J4DBQ4UW<1"SE\K;TYE@*P.PE]S=Y\R (C=\E>Y*!93;M!PG/QU M!)&=C=)TT;C9069NGNQEZ1^M*T-G/P//-_F030+9HZ4$L3QC>;')L+X;M MH5:<:> F&:5/_UNR>L.Q'/?D/ZJBEM1::)>R:H^F;;A$]TA/ %O[M=!W7,$? M$OCC$B*,8%E#3R!V#[[_%-A$T&114&6U* I]UQG11PUG--9=I'D!4&B681[G7L5V;"2@$P0L\U[X@M=">"+JA2[?7T.=,.UT>G MT8U? <"?4@6K82DHD@:/P\R&SYX9 K2(*WBLYB5.8A!/%&!IOJE;,)G3[WNP M;3I9CQ@(8URI+)5?)Q:".^J9WMAAT^$3NF [=L%P7")T P]>\SPIASAGV,CA MPA=TN?.$>P+HP"Y=KRE!8$>B]:F7OH(D*@HN\<;$P$JHUD02D%8CV@ 2',S/ M+)@S!!S0PJDA[8UT'R"D6\ 2GL\(U7)@H4*7V 2' &)B5#TR'T*^@:7! +AH M3Q\1X5< ] IOP)/X&RE] M'U+CIBREW_3,N[_^!W_%HUB@E-"G&[Y%<\G2)R?4[XFN"$:A?UP #9:KBQI M)?@D]/AD^36N+C'LS%@% W#\=EF .!IA]W!%P4G<"*R*F@@$,QACD_084(F_ M_R^YO2F_%D(TA.D[3HJ.4D M/E)!B L*POFUD/@9H32'Q)'^4$@ ,O2NV?7.\+7H,Y=!)?PPM(Y/7&)11GN$ MQ9 &?&=\HBI2>98$BHI4F:>!_5Q[U1+1#ET @=;_\]5_VHZQ,()$/53;<4>Z M-7/J$7[TZJ\V=7I E9["MT ?7LPQ^FJN>0S[12 ]E+A8=E#X+G2!P 94,%X M3;S PKUWLR/CLFU[HB[L.Q;X!JC_J*@#=08:#E2M/Z0*R(X==-1JSN)J+QXZ MK)%+"B-0?(BH7?TA*"]XTSO)&TI":(3BDATC@ZBT]+%'3J(?DBM#Z1(N"EG* M8*PX*\L2H<-0D,ES LAWHUFC+;(]K'=265(E;>EMC(002(SOP)A]H(,()-'O M-+YZPB3_/0!AI<0-U2V=.'I4[WJ.%?ADWY+VZ7B\LD'>6U*//BNNK$KJTF0X MCIE#809C>!PQ642,*A6+'#691(U477KCC6/F@-),X9C))&9 G'&FR29JN#C+ M*F94JQEBO(/%,*UTT9U$W;"%8F&^?_7JQUU&VUCJ))E<-V(TM= MZV"V25YTRNH,\SW2P6'[;>Z"#M*[U)P/.GB6+W],N+]BN8S"Z5"W!VF5CMBY MW?#,2]J+S.GM[(',7;-952*$)4,LR'%:I2#9>'1( ?+XG,Y#A?.19M8L1PNBZS68P5+YN)=F]6':=J>KUL6O=&< MATA6+NC]T#W#?DO/A,QP.8@DFI^J_U MR6*MJJ6M^UX\@2_-),L1A6>K.O]6 M%"[71+E4XA2^ U,NYZ11DM0^JA3%8K7*^>H8@XO[(" M M?2,U T!*UV[-C)':Q"P(6AC,G@C$,FE)&EKUCL<.4[1*>2.B-4S4["8+;=^& MM"HJM4JJ;8=X+">T2#E/K6&>'B%/E&Q):M4Q^MG=/+DS4/$8#/7GFE7I^MYV'O*_KXB:N626%92]?IYR&B34&SF M2&Q71_MYV'OZ[*541+7,V>MP$=ECIS%-JO"0+;_0S$.Y!TT#S0,(=IY#F@<@ M\'C1[C-&\P"#G:>;Y@$(G!D.5B4G6T#@P=%L6;Q+XZ&7CPO\\XON68F5OG"H M\(ON/&;#LU/SF)V:![AP+LI,+FH>X,(ONF?K^=WV\_(L;F\<*L MQ OW4@:F)FJ5U.L<8I?;N?YFR\Y?_/Q MY?;Y?$W2=UPB#(@-7UB"X;AC!YX@ GD8$]LC/ [+X[ \#IN"PZ\6*Z):4GC$ MB =B>2 V9;Z2RSP2RR.Q6Q*0+*4JE'DD=I>1V ]/V:FB8!.?AV-Y.):'8Y\9 M.M+*8K64;@(5#QWQ<.R+#L?6Q%J)E^_ET5@>C>71V$0T=J.K]?P6/:\XRBN. MIAHZ4F11J_&"B+S>**\WFCYS:151D7GB.:\VFG)BBZ2E?KDK4T;BMO':I[;( MZX[RL"ZO.\KKCO+@$:\[RNN.]7CM49YSNK+R%G- M UQXQ(9GJ&8[0S4/<.%SDP3#D1 M?\=QG8U.<7B<,M-QROTDFTBI'X;GG[QYY)%''K,5>>3520]OSG&H9"'"N)?2 MW:7TC;X,0&E'=B#GBRS$#/?$%SF_TKY7 Y(S!H\"YB$*^%05)O;H_HHQ'045 M\)#A2P\9*E4>,N0APZ,-&0)YYZFI$0\9\I#ABPP9;IFLR%,5>2"1!Q+3"Y@4 M><"$!Q)Y(''.AN2!1!Y(Y('$IXW/-[[>M<@!UKWF2M-9UYQ=NGRALR9TD-?SXQ 3ZF@2D"ND6\_[TQ][B>>>I/+NFPD$LHL)^!YYO]R8SXZ-/_ MENS'<"S'/?F/JJ@EM1:!5S!MP0E<(4F6@D<&(V+[\)WA$MTC/>&WHB+5!-B( M!=^+@N,*)4E]+0I]^,D?$OCC$B*,8 =#3R!V#U[Y%-A$T&114&6U* JZ)]!& M7RY\Y3OT)4\?$0%<.-/IX3+@.4T2HE5%,VM2];70=YV1H!N_ D [0\F"NB& ML,^' "+BPJ)A<=05- T"#^AV#QZ27PN]@.",T6-T_#O'"D9$%& ]O@G[G@A. MO^\17^A.!%WH$0.A#Y\)LE2#$5SSCMCX'2Z[9WICAZT#G] %V[$+!IXO= ,/ M7O,\*7?4D#5:7[D5<]U])*,$X5W&78N4=%&3.:&SOH29@_Q2:7-/@(4P6?DU MY5V5&_(RS/UJ2< ^":KY'Q[8<6)_0)3;!0!/P/1,D(_-! !O/&-*!%HF3A>*)#KE (J&8O(@'I8. D?'31U*NF3$H%AM;JU:^Y+,PQ<'SGB+;2-H9DVQ M[=2(6TS9B\PYI2II,^:S,6 4#0/IVV>EQ-,+NR=X@V#,\ J2B)I( &515+0&H MQ-__E]S>5 40BX)2W*%FZ_4IGU= M3N+JGQK-2T0XOQ82/R.4YI XTA\*"4"&<=^"1?H /9:])G+H!)^&,8A3EQB M449XA,60!GQG? +N5'F6!(J*5)FG@9T3/D65ECAMT040(?T_7_VG[1A/6V^V MXXYT:\;\#S]Z]5<;B11]LE/X%NC#BSE&7\TUCV&_"*19<5TNVQ\;UT*SW3AO M94;+Y,!\V<"#N?11,#&?J_*45) MCC\"?9]&L(=9$[.6PV\EJ1+/$^I_$U4)\:AGY(#S$GH5>O2]#BH/)+]@Z-Y0 MZ.J6;ANP+!U>@S^PJ%[@HJ&!2_X5@)D!K]P/38M,!\:%.DFHP()'[.5(OH!A MTH>?YMPI,%_ Q&+^E)09 MR:VW7![/WYJO/1NE5D12M5JM7J*R:@,RD'FHPB M?/UA>D<@?W(@ 71-K96+U6KYL$"?!RMET]]*JE28&WW"+?/8LO M\ KP ,3#6RU^E2>H7!,P"WQD.?CE/BEWD.PH]?FI24SE)1D1DPTV=9A2Q-. MSYK7K;;0:OXMG%]>M#^V& J_-:Y;-RUAT9=:G(O*$;'ARI&=^HX%O$%U+&4Y M<-\]9"U_2.,68&"PV)\H@#/G>6$:L)B((D2?H"(.HQXT>.F2,0Q#>E$(Q'" M-VTT4^ GVNB,,A?E+,I.*!+"86FLDIHJ3N#!P%@<-5]Z(81FZ NS=A;@!UOZ MV",GT0_)E:'K&"X*_26#^5FSCFHB8RGT4N4Y[])WHUFC+;(]K)>C7I&EZM(K M. D/+S&^ V/V@8XBD$2_TUR^$^;6WP,05KK382R%3AP]JG>!6@*?[-N-7L+; M&^1J)8,DSTQG*U-=VI1^3HYL>3^YX!&]:9'NB/# ,YJ(_&P(%O&C\\,]7 MI5=;M<4--[R+GP6#-1:" ]RU?=91S:%FH MB%5-$]5213[)T>>3Y!). M+X,)*S55E)72BU6$QYQZ\M@J6AK02II%<8?&%,-[F:6 0T9U<@24@TKA#(O< M+4+GFBQ54CV2RD^<_%A37SB_Y(9?#G[79_?G2MDRP!Z;(4]S$7MG6J=LCY&\ M;($L$P%.'JO)JIN8"_+)6SB&1U\X6^6 ?HY96>4MP )SM%@;&U$8$)NXNL5J MV.J]D6ECDQY::&E:FSS[]FLN>"#SD1/N]SWV^[1J650J*K\)]")N G$F6,P$ MI9)8K"K\8M"QY9^L#.ML8B;07A'\ A&_0)3/V',&&'.WX6BE*)7YC:*7&@KA MC+8_1M.D:HZU7R:.@C++3#Q+>Z\'.7E-YC^LA,TKU/A](GZ?B'-7SBGK:%37 M$01X-KE@=/FHK2'/K3Y$N":WTB5K/F6&JX:G?QVBJ!;%6IJ5.'.6!',@XGLJ M%,29F#/Q%DRLE<62EF)CB9SIW6<17^;"3&E>? -<$R+&2W MBF4U>[S.5S0G%XKR19F5+R<=YWA3 /( E]Q% M7/BU(\Y%F8-+[G33,4+@DW\/)B5^71&,AW >*'^&$SZNU(4 M*YKR1Q["#7G <;8C$2^8SC59E,NUE.@\RP+^A:60P!Q-VW!&1/#UA]2O!!^K ML<;S0OB1[ M=6=DG<#6S\#SS?YD":6O2 XT.+1 MM&3E!$W;<(GND9Z@2L770M]Q!7](!,]\$$8PR= 3B-V#;S\%-@%?111462V* M0M]U1O1!PQF-=1?)7 #4F$X/1L1G-$EHP]?1\,*]CHVD3%@%[%#HN>8=L87N M1-!AWO+KZ7/P-EL8G4$W?@4 2(IP5AU14"0-'H=)#9\],X1M$U?P6#5%G,0@ MGBC JGQ3MV RI]_W8+]T,D627PL]8B#$IG/=.58P(N$$T;=.7P"Y_#JQ5MQO MS_3&#EL1/J$+MF,7#,:8$-V-:+<7D.C+OG[G,+H.B0VP#6/W @-& M I "]0 5T&$9:2ZD0P$TF#&<)\:1[L.,N@7\X_DQ]7/:67.IFY1.!>S _XAA M@]B^/J"$@>6;GQ-W\?:A+$M)<6DA2(57JPF] YK( M,+90_/0)D+!N]BC%$AA]NRSL%(VP>^ BS1 W@JVB)L)+#-!J,0&HQ-__ ME]S>%-R@QBS'/8FBK EPA@M0J5$]((4N2*O;@MZ'Z4]TZUZ?>%',K0;:.0S@ MGL2!6H2XH""<7PN)GQ%*Z-1-+ M#3]Z]5>;:BR0(J?P+="'%W.,OIIK'L-^$4@/)#.FE_1G%#O>-PYE=UFJ/5MV MH\7J6;BJI(WHS,\-8AN%'XQ L2.BM/"' MP(_PIG>2;P2%L F-!'8D"P:"I8\]<+LG7L PDH[ M(S0RZ<31HWK74$-%V>9Q0P79QG%#!=GF46-5.*8V25F-LSY7>G]YRN= MU7 L_/#/5Z576Q*H6I,JZD';:JS*,YL]Q5HC)MHR'X1S%MMOQ+']__Y'*V87'1.?7;'43.%TJ-L#DAK'<;LH2W;1JI(B+!MD0<+' M26H$D6F7:I_"XX4#(=L!!QY?X,S F8$S V>& Q!"IFW&W9N(F;KK_:B.2]/V M?-VRZ,7DU)@^4QM^2ZL\I>8A'GYK&U0Z2%+]DZ4-Q'*Q)E;4,B]#N1>-F $* MXLRQ/G.4*F51*98X<[! C.<&SDWQMRHEL62S+F1ATDYM^4*;@<(G&;]N#X# M-K92':^?WIEJ)F?F.ACM[*PR:QM-V9M6Q3)8R)I:X^&F'>C?K!$/YY)MN:14 MA3\R/[7@0=E]7"DZ0@Z2BCQJ>[BH;1X8@;NLF."'[N',P)F!,P-G!LX,_-Y[?O)7 M^;WW[+J&^SBXT-2*6*SPB[W'&'+AK/$\UE!JHE+A!2&.D37R )9CY2O85[YC MD_S..W<0<^(@[N5*;[DLUDH*CY_P^ EGCP7L4:J)FJ)Q]N#LP=ECGCV*4C5' MP<:CRYSD]]V/0PID"VX[NV&K:F)9EOD%6W[=/9M@>UG,J(A*N<:9D0=(.;/E M"6X\G3.+\=;PMOM\^B;I.RX1!L2&+RS!<-RQ T\0@3R,B>T1[DUS;WKJ35=D ML9I^$?L73AJ/%>3E[1527AUN0=A)+8HU7EV1UR#E//(TCVAEL:2E6D61\P@/S>:2?]9W^*1TFTWP MB.WQD3_W53-SNS(/<.$1'\Y%G(LX%W$NXEQT:+CPN&B&XJ*;AD(%]JK':XWF M*:!!8ZU:IQ2DU)OXID!*#UU M^L'Y@O/%>M4492GUVE(9@!+GBR/FBSS A<<>,Q1[Y$5)C\F3W(NY6)0J.8JR M[%,'?+"=R+FJRD M6UV8!T*R% MD_R(X"O M7/@R2W(VM;%[V(4NAG U^Q V9U>-/Y^8 %?3P"-_W2+>_]Z8'+;;+)Q"3S!M MP0E<(4FM@D<&(V+[\)WA$MTC/>&WBB:5!5B8!=^+@N,*1:GR6A3Z\),_)()G M/@@C6,_0$XC=@Q<^!381-%D45%DMBH+N";1#F M?^0Y[11\1 ;PMT^GA(N Y M31*B-47S:C"+T'>=D: ;OP( )VTL)@J*I(:?#V'#Q(4EP]*HUV8:!!Z8P8KA M6(Y[\A]544MJ#7:NVSU!QI%[ <'E1&/0R>\<*Q@148#%^B: 9"(X_;Y'?*$[ M$72A1PP$-'P&(]1@!->\(S9^AWOJF=[888O$)W3!=NR"@0<8W<"#USQ/R@#B MR%GXL(>K5:X!_DSY=20W4>Z#\"AAXJ>[]&)C:%N M#^@03!:,8*U@!1I#.L(BB;!0_-"Q%@@5%(/W\"3^.W:=7H"[ XS#A" S=-QJ ME@5$S@VRIQ($,VN:S>TAX\#/M:V6-XD\8[TM)NU%=EQ)JLZ8<;)4VMZ,6\N$ M4Z3B,E--8,98;:&9M](&4Z3JZZFX9E)68MYMS[S[ZW_P5ZPS+**[Z-H/WZ*9 M9NF3$^KVAF"-B\ A>$?P>X@,T%TE^"1T_&7Y-9)18MB9L0H&[.WML@.0:(3= M4XU!L"]O1#2*FLBY812DEA* 2OS]?\GM3<^M"J'2#2OC)< 9+D"E@9 !*70! M\[<%O0_3G^C6O3[QPLU7:F (A$7W3N+B>AI- T(XOQ82/R.4YI XTA\*"4"& M<9>"1?H /9:])G+H!)^&%KE)RZQJ)Y]A,60!GQG?*(J4GF6!(J*5)FG@9T' M>2BJM$3@5A>&+NG_^>H_;<=8*,NH]+(==Z1;,\HC_ CL)"12Y)M3^!;HPXL% MF?[72JYY#/M%(,V>7,^V%#\>CR;;<'[2?UFA.9DG@[$.JJPKL2C%OQOFBPI\9L@SE:^J#&9 M&,W_2/[A2N+0&0[)-C\L%SY-1F2^_C"]=L"% MS]:+GP9W40?IO<^@./4,CP&=(X>[KJQBQEF@9G* MDKKU3&PHZDH]#GZ@'(L'P.=7151PXY$#!1*G#S\E9)]NSUB*28C1E\(PS! V M5NA2T8UK@^]I/'Y)_&3ED#YN +_4>XA#E#?<6DS#6CQ%C71F.??,@/]B_@I, M$.N3[)F.F^:3'"H0"M^8?=/002-ZX-*A _1[X!'O#^1@:@#0HQW\@0"P[W0+ MB5D GA&\8 1CP=R]F+D91Z-_V(,Q@1U$9L,X@0?#8.'2/..(1BGCV![K?F$X MEJ6//7(2_9!<)X;"PB5B_,=@<:/9P%LB RJ,NLG):)E4JM" F>]&$T=[9IM: M+W.\HDBUVK*DJT30*C&^ V/V@=LBJ$2_TTS'$Q:IO (9/(*.CW'UWGF7.=J7/4(P:6_P#T%G"> M$QH=Q9_FOF;Q,-I1>F]%UY<*IWUG?*QT&;<]'XK !-C##_]\57JU)*M(1,:9;8UKY',@B*8YA3UT71.&_4BL.X+[PBETVRN$\R!$D!+F_U[*:.JV MC*:H1\=H&#Y/[5;^P:^GYHV8U*,C)BT-H9RUG]#X#379Z,A!^DIHXSD*- MD^W-H7W=',X(H/9E)3XK/)8%0!W.P'Z.-N.0X\RY2^8L90-0!R*QS+EL:U=; M5>F$%\1G=L#8=>Y,=%.[DT0>LL[2C4V\L)5]5RW'AL!!CZB<3]+GD[W[D3OCDTI)K&K5 M>38Y&E\QTIY]T]9M@_N)QV$SY^&P-W-.YMI"H:2A\JREKCPYFW VR;Y?NC:; MJ)I8JZIIZ< MR)O,P6UWFKQ2YBXPY\T<\>9BUSI'O+G544YUOBU+WCSPT.G^/;JG_\=,$8 G M$[FX#[Y;&33#.!HP3L\)\#;UH3AG5X>YF=MH&NH;C[NT8I$[XIQ7TCP$SMQ& M4U>G95$MS6=&I-PV9I[2U>JVU3"*B\ R3_M)TZ@/_P&N%K*#+IB]/U]U/EJW M2E%1JJ5BI0)38[W4Z3?E6K%.H?9^6FEF5YY4H_O:; MHI0W+OVVL,/'V#7AY0G1W;C(&CL[PL6%A=NP@)HF:XF*<5@1B7@>R#96N8B6 M1'IJ1%$@6"K)<&P/MA?7=/M-U21YN@4";^HF6Q=Q1Z9-RSL%,(A+[DPG\ 0] M+JJ&5>2P!K5+A-954\3R_U@R]W%;R+ &=8]5J%,2%>I@C5A3!E:.5=YFZFW& M=IPG"=^)H%N>@Q\%KDM/5L+OT,B[=]Q;G,W0QUC2"Y9D *GZGBA81._1;3J M#I=5N(.WH\.9<*$ CP-5:UI&B\OR+\(28"H8WQO3WA3D2((.SH)T5:TFR K' M0I0G"XQ3,_HWK9RD%7AL'+C&D&("1@%\ TC]"7T6K>WQB!8#PV*",.$=&9J& M19ZH5?Z;.BTSAB.!"];#>E\&,>^PYA#62V25^UA99AWHWO>D*9>L";9*:=,: MA-J34"N6'F'@$=1"H,F/9,0V0)O].L,$N^C(DT&^I&U.L)+P?EI^X3=2/A/'4J"AQ4;B>OGWE.@-7 M'P$-H]R4[*S(Z Y@8]*)UE.CCP0US!9O7\']WML>'9NITQDV+"!L@ T,H;LL'ZN- 2N%"JC_CM$9C$1W J M)J"Z(SCQI@?K-3TH\Z8'TW$I#?"F!\]I>I 64U2=^;Z8^F0C738#*0>.SO] M/CP!%NA01Y%B&&!OH_BQHF*4( WAZ<&0J1/J1J"I,C4NJ0#2[W33HL"-ZQ6C MP:H;. +3._C^X[K%8MA2*_1)/"I IR/ R&^P<*H//X )91'?QX'Z@L'&,3TO MP'+.5-T%8UK/M21/Y?Y4X5V3.\>ZPS'/8$WH_$E"'?@$=P VM6GWD42H3>.2 M >&% MN+EPP$,I">B/*LI;X8L#O(VNB_ >ED.+#Z]$+P(&-Q/8>@![IK5A 30VJQ)K MTZ@_776H3P$BM.HKT_-8Z)&5R@:->P6FK:"(0A.^%12$NX_%LK\&\#EQP: # M8\)Q?6G;W0I12N'NBBHOYY^E 07Z[OQ.MH@QT,UFIW(J%BON.Y;%J#HL#1I5 M1/4H\<02(?M54#)@LE1W!X/DE1_'< MZKAJU]5I(.Q9U>LXIQPOIVQ?YK$HJ8>]3K0Q*RRHM9N7$J&'K0.6"K4<^([F MQM3RGAADU"5N2#'*0HKADC2#S')D]729H#TFFX079SX@,>F)Y7G#D4 MRIFZ%OPV[ 2YL#7A[_H?1W7',&/:"2-H62.&5.XDL(!Z!K:6\BV$8ED3577^ M8A]G#N=^2?2=_CR+@A<-@U<'TBP "9P;. M#.L<:^8(",?A-T[3FOMA6C.WB(_)(LX#6([5TRS)LBC+,O]+(2M\/3E!:\XML:*CF[!S];UVXJ:V*E(N>_=%.V MZ(7SU-KJ^ 7QU'&XR'5V,YG21W@AF'O-W+H_-%B.U6LN:F51U;C7S/F*>\W[ MX*O,>4V8N152K1;%2>R(9.NI6D"B9 ML>UNJA(NBZTV@B?]9%H+%#=(1@N*=CQ94_?)HK.)8B'SPV'Q5EDJD\BL4$N2 M'%>;M1V;Q$ 5],!W!%G /@J^-V;Y!?/(>='?$E7!ZM?PIG5.<:B%[UFV?T1 MY\T)TBU7RW[#<9;6RKV,ZKTNO)=&VRQXM'EEO5XOL**G(R"RB0#HNR6^T ?R M]; 7Q#VQ+-H3 L<8$HLU)PBP4O8(Q^X12LMQ8X.X=NA^VHML569RBPOV65C[ M4\5_N\0RR1T1_*'N)PK]TGXAC\K]BEA3ODO+P=Z;?E@6&&N;VV$M0%8RP?RTKOV@.'EN&=+35\"YQ$VWSXKF[X ;@H M3A>V'SYAVH85T&J]2']1%5]:N1< >F<:1' )[>D15F>/VFJ0AS&!%_S ):RU M!I9>3PR,4S]NQ6'3'@Y8LQC AJ_XM-BP#2@1_'N\!AS6D(_H((F+4+*KBEI2 M:XOKPTJ+WEM<-C?J(<+*.$<0351Q=FC'!2SDBTTI"EW=PLK)@C 'OSBY[*?E>$^QL1)LAT74!H7J^&QC(4+LLF+WE9CYB4Z=N8%H]%!L&Y:J MA.U*4,B;(UKWG596IY8 B-[ HEUM@%4\^!?L/K8# LF"$RXJV'=AF MM%M4-C@N:$R<",0Q3GM/P'6CRLOPV:OAF_$FX)4D[,-N5 M)PF7;!@1%NF!AB6P?0-,:]1;L"%*:G0Z AMR1JRE$/YNQHW4AT"Q%/= 02( M ?6$1Z'$T$A[I(S <#4-0>^"VJ'O6W%-?30:=)3;@/IH[-$&R&O:/8 8;?AV8$$]LX?+L"M4N-)(\)B1@&.41_G2I'IW M*DE0!N#/1&34#53.VGC _K3H8+F)PA%#P0F M;=8']BX:8;KA.AYLEE!9(_3,/C4@L2$?6PYV(0G 'XK5D@0K$O2P60AK7.83 M.S9XL=63Z5+? %P6(;DK$ D>\F8-A M4TRMVB^I)5+M=#6YVBDJ);6C]Q6U4]54K=+3C5Z_&[71/-3FEAJ+9V>%=_4O M]8O3AM#ZV&BTA?KU=?WB0^.\<=%N[=J&S*I-O@JDM*%03["=:=?+%5YG;]I[ MS1^ZA"SMA.=0QPW,(CLM3S7J1$1MNBXA-D@&S[ <;\VV-RYWV38C#\ V-0NG:"I;3M^:/C[U.<'T]MDX2D!@P#>6[0Y M@3JIT8DJR246ZZ8;M_B,(QSX2S*0E02!Z4W-_,AY2,9XV"#)P GJD8BFF?4( ML,.Q>$/ -1L"5GA#P.FXL5W.&P)NVQ!P+V2];3^OI.A("!XQE"$FN@*Q" F] M JIV0WV9S29@Q]_VJ\@;2ZP*-6R06Y)F-Y8:QTPV,;.T=CU'S,$0HTI5CIIL MHH;S3&81PQOE91,SFE1RN")Q3CI-3GM,^1#NR]B$+FH*EVIYFMSW2CJ O6*UV7 05]0T3-(4> M33Z_.4TQ>_= +Q\GYYZD)FWY;;5%,B1/4'FN6'E6Y"@+@%HE/C('NKQ1V+Z@ MLO=R7+ED/!;DR *@#L1XF7.M-BQ3/)?>PEVG].1J_J^,KSJ2R-63^"7Q5E#X?!%X$ J^J*2FG3#F<M*_K MI^V;^A?A\MV7YH=ZNWEYL?/[U<=<^8U519A>:$Y>QC:&>//:BRI;/55-+;RR MZN#U7)?K3#@D>, JP+!SLA#T, CS]3+_*_OP+'?[MR M\^RQMZ_""WY#WQ][)V_>W-_?2S"#-'#NWI@/_Z_G&'^^J;O&T+PCWAO2&^CN MFY[NZV^4LJ;5-.4-B"NE5*J"2ZH6X<=:K?:F:_4*F*FAP/\/BGPK#?U1"L45 M\M:Z M'5W6>AU#K\J:3HJ*JNI9EI[7S7;S%$1G_?3T\N:BW;SX(%Q=?FF>-AO9$J'9 MEIC?J9@;XZW]4"JN7>6/EO^B]0VQ4@[EF _U^A6M31,.JB<%HS,0S+6V@]_M8^POYDQ6AP"(W(UI)%2>#YTE8 MV- R61\\DX3UI4)!CA46:&F>L.ZA__1+;!Z$0U0=:]$VQ+@RUZ(5A<5^:%FL M,<)WIO@'>V-:ED$2ZDPOL>)P6!4AL'IAW9ZD@HK!) FTQI%K4N-WIM #X!"+ M.C*EB)4>GDM-_6"P6=BYTEG'%:VN[XJ&^H:42_TBZ20=_H1J=F=$E'[:IE7:D:):U$,JQOZE=7H%RHB2Y])S=-JUR_> MUZ_?9TOU;(6N RU\<:5OFABS>WD\%M*/E\=83C$ I/JR02PT\X%L++3QD-"RCZ(652_L!%BN/JE>) MB=+G^&3TK:6'QK>F'P"3(T14&;;C8A78@N4XMZ$H"9=''P 9P)HG MHQ"Z.I28!6\T/CV3"!CL+EBH4_]B5F2D<)9VO1E1EJFC;VQP0PWO5M&-],: MO(AGYG+ &&B FP98Y#CN&,OL ;[A>9'J(ZJPK(E(25&?-> !*)'Y'L6C0++' MU=&BQ] Y";Q$E.EI"I6P_+VALWJ9$R<0] &6;/:19 -JQUL3RA=83W22<,&6 MC'B9X*%$RBPN'GL64*>+T2KUB )W6J]T6HXX1M$(RXX66-UBTPB?\'!!M,*P M374GE0A>5-U8%#PL"-I')\8*74J #2WT3&MHQ\7 Q2>JJB:+6H>8"/N@TYK0 M5BQ57##)@:.[Z)>Q=@_!M)2>)X;/@">($* FR;00.5H@LQ,EOV7%4=^X9.3T MB,5(<_5BW\[-"$(1\ 1.-"R>UE@VL< CC@9H"?I(82Y\\O;Q+G6?NFA84?J. M6,Y8#$NVTIJ!/NUE0JAH]!S;)E9<^W;JHUH@;"GM&61N]+BC0M@-!5WG,D,2'0 !Y9I'&P['VD M<"8"K,$=A$X0*%U:M9K^2V6WCZX3AH: <%\M*B6",-QL9JSK'"5(PF$-XB* M.')'-8*EW]/RGQ38/L;P;"=QKH)#!6.ZOW$ GQJX;]!+2P!&*T>S[41NGSGU M$<5(4S&8B @>FAU[;WHD.R'YK:QS7K9T9=G2*B];.AV7ERU-HVQI&+6HJ;V2 MT=.[G5(?HQ:UDM'IULK=CJX8M:JF=OM*23UPU&+K,[_W\>&'UZFC0]TYO_4[ MJ/TR'(>A]<>UR''[>E._:#?;]7;S6T.H7[P7X(,OT>_OFZW3+Y>MF^M&2ZB_ MN[QI"^?UZ\^-MG#=;!VB]]$Z>J&<^:C-\JAI,^H[-NRR%I[TN M!OY8T7OR@+'(9-%[L*.,(&SJT@57_#XL@#^ASZ/!#1[&SS"XT;<"M."CEHZ/ M^CEEQZ+--L/$TFBL3YC!8+/&/?0@*2:8*3& UTT)9@+-Q 30WV^7)4A[&?V48'IHW]/$F/ M-0VK+^H4F3@JFUMJZ&/2X#)UPN[A@[)4++Z6A'?1/N>[4H:"X(G6E#I8NW(! MP 1K'3LF[2=$FW>1J#O=[!IHW#KRZ$R$ZV]%J1:S>_)EZM#2L &00F\Z3I@] M$;4_PEV@FYE<="@ ID[_ NPNV$[N&"S*XE*[):6OZ!U%[A<[Q7*UTJE6]7*G MVB]5#*-4-FIJE /+WD!SJMA!(]IU+*QD?^52DSS3YE\Q,O]HSNSEEQ8U_:ZN M+T\;[]':RZAME_T3N>6V7>-.MX+XX'WJ/0@1^5#QB01$>NA4T//Q0VZ'$5:A8MI/'$FQ+A]_\I07WVT;DM*M5I32W+ML%KG=+GL M"V\+ "52F])F/2T1O;3UJW 6T\9UG+YY:,\W ^)OQC +.3.T!D^Q5[ ]H?E5 ME;<>L^IL=@XZA>N4YZ9IL6O+B?Z,G.@_*2>B)8T<-$X)QIMA8@]S9Z->R@N; M\%&F'^I>\A0_.A>G1Q TCT7W'!ML\(E@F;?$"L\\'STO/@\DJC34J_;)4JWUZE42T:GJ%>*G2Y1JQU2J_;Z?8-HE5B& ML#Z- M]\V+#ZW,D'&>K/8V]:VG^;(>H>?J8 +.GW6'1]S39+7$ ?<:^;"*-J506GP( M6SZ;?GA$"[+V-+I"<> $67%Y_B^J)=/.CI?_C,1:C+%WPJR 3#)[/>)V/'81 MSNJG[--L_4$'&X6Y,\4=7S'>,V]A< M\(&+,,ID^T-O<40IV5):Q!P" DSH#=$:"&\PA;^AG722-9#.8W\AD(^G&W5) MDXH*[WB8R6:45/MRS&00,[(D:QPUF40-9YH#80;L_\RB91X7Z*W,Z])CP\DJ M;JE)2H5S2Q8QP^589C'#E7]F4<.9AF.&8X:; %G"S/H=&IY"41BCR5J#B_53 MWJ]HMG!J+;J7BY)C*F>?-#BRAO[G]-QF+4 N GK<[/2%%D:$/>$J#$%S4GE> M]_:(;$I'1C9UV*\^H+7+#/A;-]EYPBD[J:!$)/S>_8-3#QN\T#+_@GO\93/ M%;[I5D 2)$=S[,_UB?"#^,([DB#!FVDUQN7DMF&7K\A@S%)/4 HKU[0$)L,D .*;[*'+L]H!G]CZGEC;]IT:^_ZW]P MQS9-Y9!SJB^IJEBI5-,6?,=-&L_*?LJ5F,\Y=1?EFE2=[QS+B9O+/2[W=F7T M>KFN2JI*NDXGR )Z.(S0!ED/T>5SRK:1P=:6J#PTF9Y/\T)>N /'=?\EW;Y(.R$A-V6 MNIZ6?0MO'DA"BQ A(B8S[0V$Q;@7;H#5YU;B^MQ/+9%VI=@W=&D)O'[@TIKA M81=V;,,7L]V<".%,N'LF[&:-"=M# H2JCT!&^U[40I%RG?(:?S7A6U]_$&#* M7E05&;]MVOVPL>(UZ04&_:EN^%A@F95+G!9H]);07#;5UK(.OJ2O8W]W&"-S M54[C'KWO&V?UFR_MEG!S=7DAM!H7S!Y\Z(AM.IGC?:/9%OIO ']R$EUIOK[2O:>V\86 MK8M*CUH7L5Y#6"@XB^1!B.FVG4^YH,OOEOMK4OMUXK>\R&?[]GOS=^G#^\>?@ ME< *6__YRGQ G,LHMM]W?+(*\'61P!F8O1.<+F*W"TI==>M]YPQ+/3,TN%E M)/P+W74[M__^:_[T3G_IMQ]^WG[\I5R1P=GY_:N_PKYFX'DDU_W7@?9QX=BK MMW+GM,SORM4_@\;I^>>;B^;7;\/&]==7?^GLZ8QL);F/MCNR_(6.^@G<**Q]$MB7ZXGZ# MS$R0J\B:UV00]7=O%3[_D1V3;%O+-JGIRH\T'7Y8[C18CZ!].R#K5IAX(J1/ MD5:6!*'Q]\?FNV9[YPVCLZKO9M;5INJ&X5.PL(E&V#07/'+#8"(<>:,)RND! M^TS%#Z.'S=H;L2B/;7I#^.5WVO8S'(8V[*2O_D'[487%8Q8V;Z.]#F:Z'[&& M1S--D"3>;&>M9CN:S)OM3,>-PWF\V-_X6VA?9D!%)-Y< MI!S7U"#YZ["R)*N@J/*BJ[!U22Y%HC[^<3GUS)]P'**8<8UC+Z_8*Q8EE==O MSRWZ%*G(D9=7Y-6D$F\VEEOL<=;+,?(XZ^49>YSU[61D=RP#TMH?73B-/AX$,R\A)87LK0S,O&?-+M= Q "9N)E%: MU4SB*2!IBE16#]I?8L/#SBINPN'"F]AD O0*4?+R6T3=_* MM^3=%RDP<9DY2DA9G#KNB%,#IX892<$)8NTHZ9$3!%A;F(#Z'FQW3A2+[>DC MIX"/X*O=F_YP4Y-[^=7H;(;,E**DI%"%*(/V\3Y"0M.R>EF-B^G1M 6/& 5@ M$U'OC_V3MZ\N;^_EV &:>#[NMOE+*FU33E#8@'I52J:A59+$/36,^J?DY M;))!-; W+MDVZ2$K&J-:^)Q/ GA>U(Z3Q*YU)Z>)]6AB>8)&5@!5?:.^6;.= M!:>+%R0K4@34<3HB!ZPR[/O>(#RW*FOQ 'C2EI^SKX.+*-6W#'.N6T'@@1H#7 M'(3+L/C?*>()?F0%PESR*S#=, 4UL&!V1=,+2I&6/E)*/?JC)X3EYH1QX'J! M;OM8=JE%6(%C35:C@H MW>WJ-O$*EP\6F;#2QWU!E665'Y)PM9,-0'$[AA,4 M)RCN:6474)R@CDM"_7WLGM+!*>'_MW>%3VTB+!4\]_?+B&11$U26\,NO'ZP$1+8?;S?VWV\#<)F MJ6NSJN<&[(*^VEDY4!B,02@0"G9!7:! *"A4TX(9&XZAOHYA^\&,O?U@YCB( MJ'@I7B&8J45)8=C1DC[ZX01"@5!P6B"4NCCIHE (9A#,--=F5<\-V 5]M;-R MH# 8@U @%.R"ND"!4%"H9@4SMF')'MO.)D^-@W'0U#AL.Y^QM_?%F<4,)AZ2 M5=^D*6*?VQF'[\<[6OGZS(MYY^'TB45',";VY830A052\ M410=]?)OQ!Q23LEQ$#+B,H]F*2,!3Z?GX?0Z)31AA(U=)I#UR6W 1_-CW#?( M+\ZGIVZK0C^HM);TT0\G$ J$@C$!H=3%21>%PE/(D&,TUI(HP W8!7VULW*@ M,!B#4" 4[(*Z0(%04*C&Y1@7@S]A&FIK&LJQP26]BZ-X/"%'=YQ%J?S6Q84W M8F,Z#S#T%%!5> "YU)(^^N$$0H%0< @@E+HXZ:)0"!00*#36&RC #=@%?;6S M%DX?&G4:1-]:*Q34( ;L OZ:F?E0&$P!J% *-@% M=8$"H:!0C8L7#H^.81IJ:QK6Q N';!A$ =(%:*=R0&$P!J% *-@%=8$"H>JE M4$@7D"XTUB@HP W8!7VULW*@,!B#4" 4[(*Z0(%04*C&I0NG^PD!A. :A0"@8 M!G6! J'JI5#(%Y O--8J*, -V 5]M;-RH# 8@U @%.R"ND"!4%"HAN4+'1B& MVAJ&02Q:3,[I-2,GLERHQX/OC!Q23LEQ$#+R9A@G8\HY\PE-23F*H)%//'%V M*K;X)(C(T=U((,:)95J_ZRFSJC &HJHE??3#"80"H> C0"AU<=)%H1 [('9H MK(M0@!NP"_IJ9^5 83 &H4 HV 5U@0*AH%#/CAVF!];;<=P?JR=VOA"UU@*E MO@79"D[*&Q+9(]O9/G6JIY88F?^V^WT@VX<^IMVI.)F M;PJW'WS?^RA^S([BA8PFDJ&C73](;T(ZZ>?78>F*MF4#QN+WHFVFT1:\F+M- M\[5L7>FP"\=J>2P,=Y\HBH4C;)OIECWC^9SD;:L$5.GG;^7NN=3[=IW$6>2W MO#B,D_XK,_^W6X*S:("=U_,U:[D)H]]:="A.WZ?A+9VD1>??]PQAN-PX\<4> M<]8TB3BQ),ZO2>FU1.G!11S3NU8)R$(^6B$;\G[QL=FV9(I*L3%.\[^.UT]8 M2.4RL:6K6'! F,.^;1G=10IT+./]0PZ\>!GDEZI]?[T^4C)*V/#3SJO+V'NT M1.1K(;C)F(8+U5ULVMF[E"0E\9 ,Q%[!CW1>,71]U2QC_QBDE 3^IYVKKNG8 M7KMC7K6'/7;5Z3GLRO5=>L7>^QW+Z76IZ;&=Z5FGG[@0C*4\2]B5U7.3"?8USX>AN7CG M2BN%.Z0W*>O/7I0;)K6N:),L<&\J#(O*6IJI%;)J/I!#GLS..NOAM ]-PXRS73DF/.SNPJBYX0U'4UQS#;JFT_RNEA?@.5US3*.STI2JVK<-5YSE M!VFW*[U_7=R>M[KF[@\%#1^,=I4YPQ,%]PSG-^OP7-"=]8+N?##LE8)>^1SO M\NS\X.O)Z2$9G'TY-\A\I@=Z5D3/NK-Q^1KIQK&%BS6[_Q'D7Z]JN6'L?9M. M; ,QOX[*4T4QM^LX3ZC10.?S.Z-5MO%=^D[\A?U6?YUUS/.DAA5 MA"KZI?W[3,?LI^MHZUU82@O$6\KSE%:^Y>G+6 XU;Q*6.V3QG@>E]KPG*Z#B M4'&K^G<9\%#WDFOGP=I"S4TW_7C1_1UX+']Z=""/DS_/83 *V)#L>UZ<15R< MDYP-A^)=B?85^9+41NFJW;\FU_B;\R2(O."&AH]4]>_5+ZW9SZZSE)/N6V*; M=J>:I3&J+MG1O%U8/+1V\9#]ZQ\YNA['/B/ M+SFZ3Z##,Q9#$N:'1M[5MM;]LX$OXK/"_NF@"69>>M63D- MT"99;('M;K=P<;B/E$19O%"BEJ3L^'[]S9"4+3GN-LDFJ9MU@-@6-1P.AYR' MSU#BV3^"X*K,:9FPE/P\^? +2652%ZPT)%&,&BB=#IEA(R&@Y/!Z.!X, R"\S/0=>$KR3(BI^%)># \."+#X^C@-!J=D(\?R-[G MR<6^%;[\[6+RGX]7KM6/G]_]\OZ"]((P_/?A11A>3B[=C:/!<$0FBI::&RY+ M*L+PZM<>Z>7&5%$8SN?SP?QP(-4TG'P*8\-7DT&@[_.:YHFO)R&@B6&2@9'/RX*E-\FJ\*I>M< MI)B@AL\8:F_I302C*HJER=1N;,]B>6(H6; M5S>5H98J8=+30W$'0A:Q-E M_(:EF_S60C=G9^-"H^ _?91Y,\-YD%#AF[96@)7C><4 M:GG/>GM& U@STK9)W?NWA_RAUKI+5 1&J8**<1LB?!%,=I+3&2.*S3B;PQ)L M65A$"0)?D):L#*'?Q.9(8+^[N:BY1<2%4-5M,+NQ:BRT,[ M;,\2**3Y/SQY2-3X(KO<#G=1]%U$T<&V1=$[JBU])<6"7(/U@@'1[;M@\B&4 M2FBXE,"000'E):'E@M2E434#2X'^6OH,L45) 5>*4T$RFD"1(K( 7F2DD[LE M4+*$:4W5 D4*>LV@W99.#64I& --"K0:VT"!A"O@[" &+%Z#)3#@$P*\%6E] >. M2W@%\8G0@I #2?@2.WS8ZK6F 9Y2FQWV4:(6( " (2&J71YA[4FHSDDFY%PW M:*+8E&L#&;PQG^J!4B,#FDP.MYC M^[;JZ#AU5^Z2XVY Z9 $]1,D BV <0&/MMRYH:S34 8-83_780!0I8DLB.P2^2?%CU9<]\[7(_F;@\L>W=\R=+ED&GH#<6:Y_==!H(]I M1T)K??[J#-SE0$[!%2\%3^_A U['F*:>*8P>X2WPLR2I14ZTQ&;& JFWF8BF( MU P,,D!YL%)%L$:ND!FJX%*F=V<&OF*$@D!NH#_-Z.\A,$QT[ M,O/W!J-XN\'HSGSA%B;=G6G<&9H SF8\1<2A6I9V3E,-:(6;) A#5*4-) !( M<>HB Y.@3Y>9/#(@Y4! *CW59*#&/_90ON0M/H4IKA/E'V]2U8 M$C<[4!9$F?,$V#-&Y3OE"\G9HX], #_9!%#ZC M*NNE7?O.JISJ9=:&/,0B%TLM.[/^\,QI002_9L(_E5J3[_]E%UFTVFWUO'R( M^N8H=/PRMHKM>QYI@U_]%0U 5M+&D!4C0!2X1WIV:[=F:1JM4VZDTLN,R!: MRJ+@QC#V)YPKEI!SX?V4@WU6R1X@#5 &W0A#<#;$OB$+3^!PFX0QBVB0W60*%NT^Q"ZS/ .BW[X,YF&B M[Y(#7LZDF#',$$HZ]>^T*4]-6%$)N6!P=YY+QT=H!X0 -!XE?1K\#!DM:*-,C MUEMO>NX4A$6:QD[?_L@CT#*8US#"^<@K/0:=+:JX%O>MXSTMY1@&^#)6X\;F M.D"8B6)88Z^#.?CLJT>&6NB[%*6QEJ(VK-/IYAB3_^QBU8OLG@61[B+R\'X^ MSCF6SD1]/5B&K\\Z E?4R3LN :TC\K:>0FR3DS[!@W8VR.XYA#X"F^BN;HA] M"D]^&-J_)^]ZIU.A#ML'=E;]V;(QNS4:3Y,%/FPHD69]XW'%#Q_!9A^DB MYRPC5SS&[_M';^]C^XM 2#,MP9Q?VW@&M;L%L+'=K][ M2^G _5@?B[MZNK50YTOF%=/D>JID7:;($J6*&D!K'8KNWO!\ PT4O&2!OQYV M&*,_>=WAC-VRY4GO"K*?P'$3F@$QC.A,\M2/^>L?!T>C)?2ZLJ&E'>X$N3V2 M?OY_4$L#!!0 ( +> !EG"C0)U! D "<_ 7 8FQD+3(P,C0P-C,P M>&5X,S%D,BYH=&WM6VMSVS86_2M8=;JQ9T11DA]U*<U,,]NTWHRS._L1 M(D 1:Y!@ 5"R]M?OO0 H4;+2V(WMRJDR$]L$\;BXP#DX%R!._Q9%EV5.RY0S M\M/UAY\)4VE=\-*25'-J(74F;$ZN5571DGS@6@LIR5LMV(03,NCWCGN#X5&O M'T5GIU#7>2BDRH2R]^GZ?-]EOOCU_/H_5Y>^ MU:M/;W]^?TXZ41S_^^ \CB^N+_R+PUY_0*XU+8VP0I54QO'E+QW2R:VMDCB> MS6:]V4%/Z4E\_3'.;2$/8ZF4X3UF6>?L%%/@)Z?L[+3@EI(TI]IP^[KSZ?I= M= (YK+"2GYW&S6^?=ZS8_.R4B2DQ=B[YZTY!]424D555L)(.7E[>Y& M+#@:]X6D\ M!D]5CV'5\,M68>Z5=I;]"0,(7K2J\)5-A0$[I;#S)!>,\1*J^/MW)\/^P>@T MQN*/9?F:/U. %]=?@?Z)V6@F,6SJ6C: M/ <#?(DH55+2RO"D^6/T53Y8[4>K9TB:;KC0W$C2N:IMDHE;SC;YK45OWL[& MA5;#?_8H$V>*\R"E,C3MK K1[-<6!ZAQWA2JIFF56/."90*G@WV#'JP:+"V M2:OO[P[Y'[76/V)%8)0NJ!RU.2(DP6PG.9URHOE4\!FLP387AOQ64PV8EG-( MKQ0@097D'92 I3OZ)U$9KNQO:R$9.5>ZZBVG%W8M1I?';MB>!2BD^7]P_$=0 M$Y+<>MO?H>A%H&BX;2AZ2XW3KZ28DQNP7G)0NET/I@ AIJ#A4H%$A@JH* DM MYZ0NK:XY6 KZU^EGP!8E!3QI027): I)FJ@"A)%5/M^=#"5/N3%4SS%+06\X MM-NJTT : V.@28E68QN8(14:1#MD QEOP!(8;@*#D.;$U/AC67[&-0^58 <* M84!;HKN]S-?<5#QU!F*]%9BF&'031AJ<,IZWW;"CBAU5/"M5'+P8JN D$R6 M$7&]!%\7> *RPVO=>B_*#.M#90]_I[)F4"< O(6T+I"#P"6\ GPBM2#E0!2^ MX(X 6[/6-- 3<^%A%W/4$C( 82A M0\DG#TI-3G)I)J9ADTTGPAC(>2VA&*B MMQNL[+9(P33&W+%VQPL[7GA67CC<-EZX7@$13I?!#R,3D!]"4%QR508Q/20A MO-X3JKD#,@!3X&P"P!%N<*B$R3$[9BM ;J#DP&B;!^@D*@1;!>,"C+?=N*%MI*(.&L)_KM ,Y,);!$/W9N<0E"=!0I4TP" M^2?ECQ:N.V?K2/[3R66/[F\9NUQP [T!G#EM_V42Z&+8D=+:W+\(ZO\Q!T"' MEGQ$H6H-%<#RCY,:107DXJ6K!_?3EG*D+6G\QC0P1 @IEBCO!KF#+P5($[#% M*"F8.S\P]=@()J@6V 'A Q\GLDJLJ388C#A"-2YR<1)$&0X&69 \6*BB./JU MI*B,(&Z@/,SK[1 S#3IV8N:O34;C[2:C>^N% M.YQT?Z5Q;VH".IL*AHQ#C2K=G*8&V HW29"&J&8-)0!)">J1@4'0IF:1(!U[ M.&+PW+8IR/.R[3;TIJIU!:QD7,26IC#Q7.MNKV7"2PC$)) 3O.$5LAYFJ4OK M"0C8452@G+:$@G;QU(Z"D(+2;:.@RRF5M1,-B$^>93S%D_"2FPT[&HM@[!XB MR#]NWN1PC ,%0< 8OY4RAK'_O 7WD6ETD9OC/E'VY2U8,FYVH!R)$ ME>]X8\<;V\,;;-MXX\)#\BZT\30G;%^X-QOYXP&"!6,CE::U1@"W I$-M1;* M6$C'[S"@+@,^;PYPR=YGBF3 1* FUG('PU/@!W<0A6=49;VP:]];E5.SB-I0 MASCFXLRI,^>/H)SF1(H;+L.IU%K^[E>[R+'5;JOGVZ>H/YV%CKZ-K6+WG0=K M^*N[E &H2MH);9'B$K>/XCY,:8Z%'\04 M80_5GUUM4 N404'#%V+ALZP2=E^@"% #3(ZN#XT,Q$6F+F"Z@5=<9X)(VWB MO@M[=FRQ96RQ=3NV;R"ZR30LVEW +GP:*=AKGO1 MD3<(S#WLGQ"^VA8XG55>*K!O-Q+JNL1 T7P+4)>5-/ M )GDN$OPGIR#R,.'**"F@6T.TLEW???O>7L6FWCETLVR5]LW+,-UXY\F MF'M,V#W!B.U&ZR6-UK]$RLF5AK@--R1<2'2>"YZ1=POQ]*O?+-J-Y;:/Y=Z5 M/^6',;LS>OMKP]>H7K_./?8(^*^,AOZ/]>&XK[-;ZW"^D%=CFMY,M*I+AL). MZ:19E5JWFE=?!#F!!DI1\B@\]U=49[@Z'9)6KE.O7]6N('J)O/2@&80="9TJ MP<*P__!C[W"P6$1]6M^I"G\%W-TI/_L_4$L#!!0 ( +> !EF92,.-<04 M /<9 7 8FQD+3(P,C0P-C,P>&5X,S)D,2YH=&WM67MOVD@0_RIS5'<- M$GY!DA*;(#6$Z')J2DJ)3O?GVE[CO2Q>=[T.<)_^9OT@AE37)**YMFHD(+N> MF9W7;SQC#WXQC'$2DR2@(?P^NWH'H0CR!4T4!)(2A;M+IF*8B30E"5Q1*1GG M<"99.*< CFT>FT[WR+0-8SA 6:.*220N]*UCJVMW#\$^.#1M!V:2)!E33"2$6];X M?0M:L5*I:UG+Y=)<]DPAY]9L:L5JP0\M+D1&S5"%K>% [^ W)>%PL*"*0! 3 MF5%UVKJ971A]I%!,<3H<6/5O2>N+<#T;Q_:8HC7,EY42Q.ZJE M-^0&G!+I^D+%WNX1G^-,:[Y(),J(R(+QM?MZQA8T@_=T"5.Q(,GK3KF#OQF5 M+'KM%=09^X>B:#10T94R"&=S%*Z5]4H/N)7Q_M8A2UK8XPL>XL7Q*F8^4]#K MFL[ \M%3Z3ZTZGY9*TV]=#J[O+@3Z6S/ M+OYN/+JEZ&4'N7PJ%9SEP6T'1C&C$8Q7-,@U+F 212R@$D@2PCF3-%!"@HAT M83O+&0]A)&1JPH&**6B-N[8W$@NL>>MBY7CM#B"_8M&Z VDNLYR@8Y2 CR@* M$0@G]K&6I_D_$NF3A&;&9,7I&MX&2E_IVG:W TX?;LR/YLC<,#J]([N#?$1U MM#PMP*=9P;)8PVTBEIQBL76_KQ KXG,T1,B0RM.6W4+G<5Y5O\TZ2TE0KRL% M2@XC$)R3-*-N_8^W!X-K.QJ6Z7I>H%.K:W"R%KER([:B81.P?^>9#KS7J+RE MGK4+E<1/N)>LOM-)%A!>'5UH@5IZRY@I:FB/41=S0I*T4J=WC%R59RM]#IPV MWM#"ID[;! ]C_EQURZ46A%K)!>%>LWY56ZVASNH/.9%8]_@:IC05B%1,_@LD MP"["^%!CIP(=1 A/O?Y4,@%-0FPK_L@3"CV$2]%7-,%:BJRQ"E'.\9P A7&& M]A0]C*:6]%..Z-<-3J:/O ?A 6D#GND<'83M#9"Q>DB\P:*$\0H[AP1[G@K- MSDD/%7".:C2_Z2\T^YN^0/ZVI^O,!@XZ$I9.$:M(LWVA>*N_*++@,RE;;#%T M7J)1X%AT0<7MW>DRGD);Y%269R9[=07\VN# M\[OHHEY(43W*% E]VM*UJE47B$>AOE1 IWE@70&88ILET"[41/+^4KO M-&!;8+4^M9+F5!C>8&4'@J6YE90C%-+PUPZL&A-;0[A @1$7R]I#]=K0*'9] MG)=OC25ZX(M38*-^;4B)GPF>*[IC93F95M_;I>"'-*_ [W89?KZ=7V$X.<<" MYL+;?(ZW$C@NNY<"&4\,3H64&H+I"M _+(17=O'WLD99F=4[M^<:B\4)% M[GFAU"W(_QS'GS%\;@Q?-$R/>:#Q,W[?;OP.KB7#;C7%=O5!$-L[@:M;T?(6 MMV_W@_[H/?A,+![KZ=UGWUO/J)OQZSULPO9C$,<)PJ@[D0?N_J\$>Y*-Y7>\ MZ1M]$MS.IL0KIUT6YX8/M"I>.NSG69WWH_4&UMO1[8??60DCDURLZ* M1#@9N>1.L+#R\9L3\]#9W%[*/;MHFLI7&L4[DN&_4$L#!!0 ( +> !EF_ M((.\? 4 : 7 8FQD+3(P,C0P-C,P>&5X,S)D,BYH=&WM6?]SVC84 M_UEO#'?X&":$VX:XEY):M*920[?:C;,M8J[!<60ZPOWY/LDULTJUICF;- MKKD#(NF]I_?M\_1D#W\PC$D2XR0@(?IY)V!Z[3 M1[,K='2S&+7LY1BW#LG[OC2WK?'%>+!R;MH,6 B<9 ME90GF%G6Y%T+M6(I4]>RUNNUN>Z97"RMQ=R*Y8H=6XSSC)BA#%NCH9J!;X+# MT7!%)$9!C$5&Y%GK9G%A#(!"4LG(:&A5OP6MS\/M:!C26Y3)+2-GK1462YH8 MDJ=NSTZE!YP6+._1;(PU#67L.K;]HY?B,*3)TF DDJ[CF*?]NSE!E_'=)"^, M_A:?XDPKOH@GTHCPBK*M^W)!5R1#[\@:S?D* M)R\[Q0S\9D30Z*6GJ3/Z%P'18* D&VE@1I<@7"GK%1YP2^/]QB9KHNWQ.0MA M<;*)J4\EZG7-[M#RP5/I(;3J?EXK1=W8Y\Z>,H#@1C,JM&],P M) F(^.G%H&OWO*&EV ^E^9X_ X 7$5_@T/%DOKB\N!R_7EQ.WZ'I!9I-YI?3 MV.^@M*WU2/':W<0L$@: M;3LHS4668Q N.;HF@0(B>F7WE3S%?XV%CQ.2&=,-(UOT.I!JI6O;W0YR!NC& MO#;'YH[1Z9W8'>##LJ/D*0$^R33+:HL^)'S-"-1<]WE%6F*?@2%P6 M.(^QL@CNQEF*@VI<*E!P& %G#*<9<:M_O ,87-E1LTR5=0U2I:[!\);GTHWH MAH1UW/Z99RKP7JT %WI6+I0"/N%!DOM6)5F 6;FUU@*T]-8QE<10'B,NY(3 M::E.KP]P3@#!&P1[=RBAJ03[F5!#5YV1JRSL0'N$V@CV=DZ.PO0,R"7(! MYRQ(F&R@@4B@]2G1[+SJ@0+.287FT\%*L9\../"W/55V=G!0D;!4BE@ZS0Z% MXD:;H;/@$RFKIVBB2J%K:*+OX/^?@[_[+8*?)I$::K %0(1I GBFB<9960\B M3%5U2.'L5OCLJ&4,EPY@@^WAW(:%% ";=317M#O/06"HVV%]V@-5S@IX\Y0( MO6>V5U_,KPW.9]%,/9&BZD:C$_JLI6I5JRH0#T)]H8!*\[A(*W434AD$*=(L M@7:M)A;7+#53@ZW&:K5K*06U8[CPPIVMYJ\]6-4N;C7A' 1& MC*\K#U5C0Z'8]>':_,%8@P<^>QGJ;X^+I_DCC>Q2_W2@> MS02%8*40K7MQ:^\%KFI&BZ/NT.Y'ZJ/FT"=B\5!/[S\$;SRLKL>O=_\[SM''P8>EX'D2JIZ5"[>JW34/-!=*'?=UKJI] MXT5!.=5X3[#_#B+%2V(4[16.X&[DXEM.P]+'IWWS^'1WRA1SMFZ>BG<;^F7) MZ&]02P$"% ,4 " "W@ 99)'C%]_\2 "ET0 $ @ $ M 8FQD+3(P,C0P-C,P+GAS9%!+ 0(4 Q0 ( +> !ED!02NVB! .+@ M 4 " 2T3 !B;&0M,C R-# V,S!?8V%L+GAM;%!+ 0(4 M Q0 ( +> !ED>?-AJL#0 .B# P 4 " > !EFD0LJ<['4 '.:!P 4 M " !EF1.T;1\DL )RC!0 4 " >?. !B;&0M,C R M-# V,S!?<')E+GAM;%!+ 0(4 Q0 ( +> !EGY) PG,58" $8I(P 4 M " 0L; 0!B;&0M,C R-# V,S!X,3!Q+FAT;5!+ 0(4 Q0 ( M +> !EE-7RT5#PD &8_ 7 " 6YQ P!B;&0M,C R-# V M,S!X97@S,60Q+FAT;5!+ 0(4 Q0 ( +> !EG"C0)U! D "<_ 7 M " ;)Z P!B;&0M,C R-# V,S!X97@S,60R+FAT;5!+ 0(4 Q0 M ( +> !EF92,.-<04 /<9 7 " >N# P!B;&0M,C R M-# V,S!X97@S,F0Q+FAT;5!+ 0(4 Q0 ( +> !EF_((.\? 4 : 7 M " 9&) P!B;&0M,C R-# V,S!X97@S,F0R+FAT;5!+!08 1 "@ * )P" !"CP, ! end XML 77 bld-20240630x10q_htm.xml IDEA: XBRL DOCUMENT 0001633931 2023-01-01 2023-12-31 0001633931 bld:ShareRepurchaseProgram2022Member 2022-07-25 2024-06-30 0001633931 bld:ShareRepurchaseProgram2024Member 2024-06-30 0001633931 us-gaap:CommonStockMember 2024-01-01 2024-03-31 0001633931 us-gaap:CommonStockMember 2024-04-01 2024-06-30 0001633931 us-gaap:CommonStockMember 2023-01-01 2023-03-31 0001633931 us-gaap:TreasuryStockCommonMember 2024-06-30 0001633931 us-gaap:RetainedEarningsMember 2024-06-30 0001633931 us-gaap:CommonStockMember 2024-06-30 0001633931 us-gaap:AdditionalPaidInCapitalMember 2024-06-30 0001633931 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2024-06-30 0001633931 us-gaap:TreasuryStockCommonMember 2024-03-31 0001633931 us-gaap:RetainedEarningsMember 2024-03-31 0001633931 us-gaap:CommonStockMember 2024-03-31 0001633931 us-gaap:AdditionalPaidInCapitalMember 2024-03-31 0001633931 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2024-03-31 0001633931 2024-03-31 0001633931 us-gaap:TreasuryStockCommonMember 2023-12-31 0001633931 us-gaap:RetainedEarningsMember 2023-12-31 0001633931 us-gaap:CommonStockMember 2023-12-31 0001633931 us-gaap:AdditionalPaidInCapitalMember 2023-12-31 0001633931 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-12-31 0001633931 us-gaap:TreasuryStockCommonMember 2023-06-30 0001633931 us-gaap:RetainedEarningsMember 2023-06-30 0001633931 us-gaap:CommonStockMember 2023-06-30 0001633931 us-gaap:AdditionalPaidInCapitalMember 2023-06-30 0001633931 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-06-30 0001633931 us-gaap:TreasuryStockCommonMember 2023-03-31 0001633931 us-gaap:RetainedEarningsMember 2023-03-31 0001633931 us-gaap:CommonStockMember 2023-03-31 0001633931 us-gaap:AdditionalPaidInCapitalMember 2023-03-31 0001633931 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-03-31 0001633931 2023-03-31 0001633931 us-gaap:TreasuryStockCommonMember 2022-12-31 0001633931 us-gaap:RetainedEarningsMember 2022-12-31 0001633931 us-gaap:CommonStockMember 2022-12-31 0001633931 us-gaap:AdditionalPaidInCapitalMember 2022-12-31 0001633931 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-12-31 0001633931 us-gaap:EmployeeStockOptionMember 2023-12-31 0001633931 us-gaap:EmployeeStockOptionMember 2024-06-30 0001633931 bld:LongTermIncentivePlanMember 2024-06-30 0001633931 srt:MaximumMember bld:LongTermIncentivePlanMember 2024-06-30 0001633931 us-gaap:RestrictedStockMember 2023-12-31 0001633931 us-gaap:OperatingSegmentsMember bld:ResidentialMember bld:InstallationSegmentMember 2024-04-01 2024-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:ResidentialMember bld:DistributionSegmentMember 2024-04-01 2024-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:RainGuttersMember bld:InstallationSegmentMember 2024-04-01 2024-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:RainGuttersMember bld:DistributionSegmentMember 2024-04-01 2024-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:InsulationAndAccessoriesMember bld:InstallationSegmentMember 2024-04-01 2024-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:InsulationAndAccessoriesMember bld:DistributionSegmentMember 2024-04-01 2024-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:GlassAndWindowsMember bld:InstallationSegmentMember 2024-04-01 2024-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:CommercialAndIndustrialMember bld:InstallationSegmentMember 2024-04-01 2024-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:CommercialAndIndustrialMember bld:DistributionSegmentMember 2024-04-01 2024-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:AllOtherProductsMember bld:InstallationSegmentMember 2024-04-01 2024-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:AllOtherProductsMember bld:DistributionSegmentMember 2024-04-01 2024-06-30 0001633931 bld:EliminationsAndReconcilingItemsMember bld:ResidentialMember 2024-04-01 2024-06-30 0001633931 bld:EliminationsAndReconcilingItemsMember bld:RainGuttersMember 2024-04-01 2024-06-30 0001633931 bld:EliminationsAndReconcilingItemsMember bld:InsulationAndAccessoriesMember 2024-04-01 2024-06-30 0001633931 bld:EliminationsAndReconcilingItemsMember bld:CommercialAndIndustrialMember 2024-04-01 2024-06-30 0001633931 bld:EliminationsAndReconcilingItemsMember bld:AllOtherProductsMember 2024-04-01 2024-06-30 0001633931 bld:ResidentialMember 2024-04-01 2024-06-30 0001633931 bld:RainGuttersMember 2024-04-01 2024-06-30 0001633931 bld:InsulationAndAccessoriesMember 2024-04-01 2024-06-30 0001633931 bld:GlassAndWindowsMember 2024-04-01 2024-06-30 0001633931 bld:EliminationsAndReconcilingItemsMember 2024-04-01 2024-06-30 0001633931 bld:CommercialAndIndustrialMember 2024-04-01 2024-06-30 0001633931 bld:AllOtherProductsMember 2024-04-01 2024-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:ResidentialMember bld:InstallationSegmentMember 2024-01-01 2024-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:ResidentialMember bld:DistributionSegmentMember 2024-01-01 2024-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:RainGuttersMember bld:InstallationSegmentMember 2024-01-01 2024-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:RainGuttersMember bld:DistributionSegmentMember 2024-01-01 2024-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:InsulationAndAccessoriesMember bld:InstallationSegmentMember 2024-01-01 2024-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:InsulationAndAccessoriesMember bld:DistributionSegmentMember 2024-01-01 2024-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:GlassAndWindowsMember bld:InstallationSegmentMember 2024-01-01 2024-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:CommercialAndIndustrialMember bld:InstallationSegmentMember 2024-01-01 2024-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:CommercialAndIndustrialMember bld:DistributionSegmentMember 2024-01-01 2024-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:AllOtherProductsMember bld:InstallationSegmentMember 2024-01-01 2024-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:AllOtherProductsMember bld:DistributionSegmentMember 2024-01-01 2024-06-30 0001633931 bld:EliminationsAndReconcilingItemsMember bld:ResidentialMember 2024-01-01 2024-06-30 0001633931 bld:EliminationsAndReconcilingItemsMember bld:RainGuttersMember 2024-01-01 2024-06-30 0001633931 bld:EliminationsAndReconcilingItemsMember bld:InsulationAndAccessoriesMember 2024-01-01 2024-06-30 0001633931 bld:EliminationsAndReconcilingItemsMember bld:CommercialAndIndustrialMember 2024-01-01 2024-06-30 0001633931 bld:EliminationsAndReconcilingItemsMember bld:AllOtherProductsMember 2024-01-01 2024-06-30 0001633931 bld:ResidentialMember 2024-01-01 2024-06-30 0001633931 bld:RainGuttersMember 2024-01-01 2024-06-30 0001633931 bld:InsulationAndAccessoriesMember 2024-01-01 2024-06-30 0001633931 bld:GlassAndWindowsMember 2024-01-01 2024-06-30 0001633931 bld:EliminationsAndReconcilingItemsMember 2024-01-01 2024-06-30 0001633931 bld:CommercialAndIndustrialMember 2024-01-01 2024-06-30 0001633931 bld:AllOtherProductsMember 2024-01-01 2024-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:ResidentialMember bld:InstallationSegmentMember 2023-04-01 2023-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:ResidentialMember bld:DistributionSegmentMember 2023-04-01 2023-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:RainGuttersMember bld:InstallationSegmentMember 2023-04-01 2023-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:RainGuttersMember bld:DistributionSegmentMember 2023-04-01 2023-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:InsulationAndAccessoriesMember bld:InstallationSegmentMember 2023-04-01 2023-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:InsulationAndAccessoriesMember bld:DistributionSegmentMember 2023-04-01 2023-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:GlassAndWindowsMember bld:InstallationSegmentMember 2023-04-01 2023-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:CommercialAndIndustrialMember bld:InstallationSegmentMember 2023-04-01 2023-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:CommercialAndIndustrialMember bld:DistributionSegmentMember 2023-04-01 2023-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:AllOtherProductsMember bld:InstallationSegmentMember 2023-04-01 2023-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:AllOtherProductsMember bld:DistributionSegmentMember 2023-04-01 2023-06-30 0001633931 bld:EliminationsAndReconcilingItemsMember bld:ResidentialMember 2023-04-01 2023-06-30 0001633931 bld:EliminationsAndReconcilingItemsMember bld:RainGuttersMember 2023-04-01 2023-06-30 0001633931 bld:EliminationsAndReconcilingItemsMember bld:InsulationAndAccessoriesMember 2023-04-01 2023-06-30 0001633931 bld:EliminationsAndReconcilingItemsMember bld:CommercialAndIndustrialMember 2023-04-01 2023-06-30 0001633931 bld:EliminationsAndReconcilingItemsMember bld:AllOtherProductsMember 2023-04-01 2023-06-30 0001633931 bld:ResidentialMember 2023-04-01 2023-06-30 0001633931 bld:RainGuttersMember 2023-04-01 2023-06-30 0001633931 bld:InsulationAndAccessoriesMember 2023-04-01 2023-06-30 0001633931 bld:GlassAndWindowsMember 2023-04-01 2023-06-30 0001633931 bld:EliminationsAndReconcilingItemsMember 2023-04-01 2023-06-30 0001633931 bld:CommercialAndIndustrialMember 2023-04-01 2023-06-30 0001633931 bld:AllOtherProductsMember 2023-04-01 2023-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:ResidentialMember bld:InstallationSegmentMember 2023-01-01 2023-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:ResidentialMember bld:DistributionSegmentMember 2023-01-01 2023-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:RainGuttersMember bld:InstallationSegmentMember 2023-01-01 2023-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:RainGuttersMember bld:DistributionSegmentMember 2023-01-01 2023-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:InsulationAndAccessoriesMember bld:InstallationSegmentMember 2023-01-01 2023-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:InsulationAndAccessoriesMember bld:DistributionSegmentMember 2023-01-01 2023-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:GlassAndWindowsMember bld:InstallationSegmentMember 2023-01-01 2023-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:CommercialAndIndustrialMember bld:InstallationSegmentMember 2023-01-01 2023-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:CommercialAndIndustrialMember bld:DistributionSegmentMember 2023-01-01 2023-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:AllOtherProductsMember bld:InstallationSegmentMember 2023-01-01 2023-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:AllOtherProductsMember bld:DistributionSegmentMember 2023-01-01 2023-06-30 0001633931 bld:EliminationsAndReconcilingItemsMember bld:ResidentialMember 2023-01-01 2023-06-30 0001633931 bld:EliminationsAndReconcilingItemsMember bld:RainGuttersMember 2023-01-01 2023-06-30 0001633931 bld:EliminationsAndReconcilingItemsMember bld:InsulationAndAccessoriesMember 2023-01-01 2023-06-30 0001633931 bld:EliminationsAndReconcilingItemsMember bld:CommercialAndIndustrialMember 2023-01-01 2023-06-30 0001633931 bld:EliminationsAndReconcilingItemsMember bld:AllOtherProductsMember 2023-01-01 2023-06-30 0001633931 bld:ResidentialMember 2023-01-01 2023-06-30 0001633931 bld:RainGuttersMember 2023-01-01 2023-06-30 0001633931 bld:InsulationAndAccessoriesMember 2023-01-01 2023-06-30 0001633931 bld:GlassAndWindowsMember 2023-01-01 2023-06-30 0001633931 bld:EliminationsAndReconcilingItemsMember 2023-01-01 2023-06-30 0001633931 bld:CommercialAndIndustrialMember 2023-01-01 2023-06-30 0001633931 bld:AllOtherProductsMember 2023-01-01 2023-06-30 0001633931 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2024-04-01 2024-06-30 0001633931 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2024-01-01 2024-03-31 0001633931 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-04-01 2023-06-30 0001633931 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-01-01 2023-03-31 0001633931 us-gaap:OperatingSegmentsMember bld:InstallationSegmentMember 2024-04-01 2024-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:DistributionSegmentMember 2024-04-01 2024-06-30 0001633931 us-gaap:OperatingSegmentsMember 2024-04-01 2024-06-30 0001633931 us-gaap:IntersegmentEliminationMember 2024-04-01 2024-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:InstallationSegmentMember 2024-01-01 2024-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:DistributionSegmentMember 2024-01-01 2024-06-30 0001633931 us-gaap:OperatingSegmentsMember 2024-01-01 2024-06-30 0001633931 us-gaap:IntersegmentEliminationMember 2024-01-01 2024-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:InstallationSegmentMember 2023-04-01 2023-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:DistributionSegmentMember 2023-04-01 2023-06-30 0001633931 us-gaap:OperatingSegmentsMember 2023-04-01 2023-06-30 0001633931 us-gaap:IntersegmentEliminationMember 2023-04-01 2023-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:InstallationSegmentMember 2023-01-01 2023-06-30 0001633931 us-gaap:OperatingSegmentsMember bld:DistributionSegmentMember 2023-01-01 2023-06-30 0001633931 us-gaap:OperatingSegmentsMember 2023-01-01 2023-06-30 0001633931 us-gaap:IntersegmentEliminationMember 2023-01-01 2023-06-30 0001633931 us-gaap:CorporateNonSegmentMember 2024-04-01 2024-06-30 0001633931 us-gaap:CorporateNonSegmentMember 2024-01-01 2024-06-30 0001633931 us-gaap:CorporateNonSegmentMember 2023-04-01 2023-06-30 0001633931 us-gaap:CorporateNonSegmentMember 2023-01-01 2023-06-30 0001633931 us-gaap:RetainedEarningsMember 2024-04-01 2024-06-30 0001633931 us-gaap:RetainedEarningsMember 2024-01-01 2024-03-31 0001633931 us-gaap:RetainedEarningsMember 2023-04-01 2023-06-30 0001633931 us-gaap:RetainedEarningsMember 2023-01-01 2023-03-31 0001633931 srt:MinimumMember us-gaap:RevolvingCreditFacilityMember 2024-01-01 2024-06-30 0001633931 srt:MaximumMember us-gaap:RevolvingCreditFacilityMember 2024-01-01 2024-06-30 0001633931 bld:AmendmentNo.4ToCreditAgreementMember us-gaap:SecuredDebtMember 2024-06-30 0001633931 bld:AmendmentNo.4ToCreditAgreementMember bld:DelayedDrawTermLoanFacilityTwoMember 2023-07-26 0001633931 us-gaap:RevolvingCreditFacilityMember 2024-06-30 0001633931 us-gaap:RevolvingCreditFacilityMember 2023-12-31 0001633931 bld:InstallationSegmentMember 2024-01-01 2024-06-30 0001633931 2023-10-01 2023-12-31 0001633931 bld:InstallationSegmentMember 2023-12-31 0001633931 bld:DistributionSegmentMember 2023-12-31 0001633931 bld:DistributionSegmentMember 2024-01-01 2024-06-30 0001633931 bld:InstallationSegmentMember 2024-06-30 0001633931 bld:DistributionSegmentMember 2024-06-30 0001633931 us-gaap:RestrictedStockMember 2024-06-30 0001633931 bld:EquipmentNotesMember 2024-01-01 2024-06-30 0001633931 bld:SeniorNotesDue2032Member us-gaap:DebtInstrumentRedemptionPeriodTwoMember 2024-01-01 2024-06-30 0001633931 bld:SeniorNotesDue2032Member us-gaap:DebtInstrumentRedemptionPeriodThreeMember 2024-01-01 2024-06-30 0001633931 bld:SeniorNotesDue2032Member us-gaap:DebtInstrumentRedemptionPeriodFourMember 2024-01-01 2024-06-30 0001633931 bld:SeniorNotesDue2032Member us-gaap:DebtInstrumentRedemptionPeriodFiveMember 2024-01-01 2024-06-30 0001633931 bld:ChangeInControlScenarioMember bld:SeniorNotesDue2032Member 2024-01-01 2024-06-30 0001633931 bld:ChangeInControlScenarioMember bld:SeniorNotesDue2029Member 2024-01-01 2024-06-30 0001633931 bld:AmendmentNo.4ToCreditAgreementMember 2024-01-01 2024-06-30 0001633931 srt:MinimumMember bld:EquipmentNotesMember 2024-06-30 0001633931 srt:MaximumMember bld:EquipmentNotesMember 2024-06-30 0001633931 bld:AmendmentNo.4ToCreditAgreementMember 2024-06-30 0001633931 bld:SeniorNotesDue2032Member us-gaap:FairValueInputsLevel1Member us-gaap:FairValueMeasurementsNonrecurringMember 2024-06-30 0001633931 bld:SeniorNotesDue2029Member us-gaap:FairValueInputsLevel1Member us-gaap:FairValueMeasurementsNonrecurringMember 2024-06-30 0001633931 us-gaap:SecuredDebtMember 2024-06-30 0001633931 bld:SeniorNotesDue2032Member 2024-06-30 0001633931 bld:SeniorNotesDue2029Member 2024-06-30 0001633931 bld:EquipmentNotesMember 2024-06-30 0001633931 us-gaap:SecuredDebtMember 2023-12-31 0001633931 bld:SeniorNotesDue2032Member 2023-12-31 0001633931 bld:SeniorNotesDue2029Member 2023-12-31 0001633931 bld:EquipmentNotesMember 2023-12-31 0001633931 bld:BaseRateBorrowingsMember bld:AmendmentNo.4ToCreditAgreementMember bld:DelayedDrawTermLoanFacilityOneMember us-gaap:SecuredOvernightFinancingRateSofrMember 2024-01-01 2024-06-30 0001633931 bld:BaseRateBorrowingsMember bld:AmendmentNo.4ToCreditAgreementMember bld:FederalFundsRateMember 2024-01-01 2024-06-30 0001633931 us-gaap:AccruedLiabilitiesMember 2024-06-30 0001633931 us-gaap:AccruedLiabilitiesMember 2023-12-31 0001633931 bld:ReceivablesNetMember 2024-06-30 0001633931 bld:ReceivablesNetMember 2023-12-31 0001633931 2022-12-31 0001633931 bld:Acquisitions2024Member us-gaap:CustomerRelationshipsMember 2024-06-30 0001633931 bld:TexasInsulationMember 2024-05-31 2024-05-31 0001633931 bld:InsulationWorksIncMember 2024-05-16 2024-05-16 0001633931 bld:GreenSpaceMember 2024-04-18 2024-04-18 0001633931 bld:MorrisBlackMember 2024-03-01 2024-03-01 0001633931 bld:CommercialInsulationBusinessPciMember 2024-03-01 2024-03-01 0001633931 bld:BrabbleMember 2024-02-15 2024-02-15 0001633931 bld:SriHoldingsMember 2023-01-01 2023-06-30 0001633931 bld:SpiMember 2024-04-01 2024-06-30 0001633931 2023-06-30 0001633931 us-gaap:EmployeeStockOptionMember 2023-04-01 2023-06-30 0001633931 us-gaap:RestrictedStockMember bld:VestingBasedOnServiceMember 2023-01-01 2023-06-30 0001633931 us-gaap:RestrictedStockMember bld:VestingBasedOnMarketConditionsMember 2023-01-01 2023-06-30 0001633931 us-gaap:EmployeeStockOptionMember 2023-01-01 2023-06-30 0001633931 us-gaap:AdditionalPaidInCapitalMember 2024-04-01 2024-06-30 0001633931 us-gaap:AdditionalPaidInCapitalMember 2024-01-01 2024-03-31 0001633931 us-gaap:AdditionalPaidInCapitalMember 2023-04-01 2023-06-30 0001633931 us-gaap:AdditionalPaidInCapitalMember 2023-01-01 2023-03-31 0001633931 us-gaap:TreasuryStockCommonMember 2024-01-01 2024-03-31 0001633931 2024-01-01 2024-03-31 0001633931 us-gaap:TreasuryStockCommonMember 2023-01-01 2023-03-31 0001633931 2023-01-01 2023-03-31 0001633931 bld:Acquisitions2024Member us-gaap:CustomerRelationshipsMember 2024-01-01 2024-06-30 0001633931 bld:ShareRepurchaseProgram2024Member 2024-05-03 0001633931 bld:ShareRepurchaseProgram2022Member 2022-07-25 0001633931 2024-07-31 0001633931 us-gaap:TreasuryStockCommonMember 2024-04-01 2024-06-30 0001633931 bld:ShareRepurchaseProgram2022Member 2024-04-01 2024-06-30 0001633931 us-gaap:RestrictedStockMember bld:ShareBasedCompensationArrangementByShareBasedPaymentAwardPayoutRangeTwoMember bld:VestingBasedOnPerformanceMember 2024-02-21 0001633931 us-gaap:RestrictedStockMember bld:ShareBasedCompensationArrangementByShareBasedPaymentAwardPayoutRangeThreeMember bld:VestingBasedOnPerformanceMember 2024-02-21 0001633931 us-gaap:RestrictedStockMember bld:ShareBasedCompensationArrangementByShareBasedPaymentAwardPayoutRangeOneMember bld:VestingBasedOnPerformanceMember 2024-02-21 0001633931 us-gaap:RestrictedStockMember bld:ShareBasedCompensationArrangementByShareBasedPaymentAwardPayoutRangeFourMember bld:VestingBasedOnPerformanceMember 2024-02-21 0001633931 us-gaap:RestrictedStockMember bld:ShareBasedCompensationArrangementByShareBasedPaymentAwardPayoutRangeTwoMember bld:VestingBasedOnPerformanceMember 2023-02-21 0001633931 us-gaap:RestrictedStockMember bld:ShareBasedCompensationArrangementByShareBasedPaymentAwardPayoutRangeThreeMember bld:VestingBasedOnPerformanceMember 2023-02-21 0001633931 us-gaap:RestrictedStockMember bld:ShareBasedCompensationArrangementByShareBasedPaymentAwardPayoutRangeOneMember bld:VestingBasedOnPerformanceMember 2023-02-21 0001633931 us-gaap:RestrictedStockMember bld:ShareBasedCompensationArrangementByShareBasedPaymentAwardPayoutRangeFourMember bld:VestingBasedOnPerformanceMember 2023-02-21 0001633931 us-gaap:RestrictedStockMember bld:ShareBasedCompensationArrangementByShareBasedPaymentAwardPayoutRangeTwoMember bld:VestingBasedOnPerformanceMember 2022-02-15 0001633931 us-gaap:RestrictedStockMember bld:ShareBasedCompensationArrangementByShareBasedPaymentAwardPayoutRangeThreeMember bld:VestingBasedOnPerformanceMember 2022-02-15 0001633931 us-gaap:RestrictedStockMember bld:ShareBasedCompensationArrangementByShareBasedPaymentAwardPayoutRangeOneMember bld:VestingBasedOnPerformanceMember 2022-02-15 0001633931 us-gaap:RestrictedStockMember bld:ShareBasedCompensationArrangementByShareBasedPaymentAwardPayoutRangeFourMember bld:VestingBasedOnPerformanceMember 2022-02-15 0001633931 us-gaap:RestrictedStockMember bld:VestingBasedOnPerformanceMember 2024-02-21 2024-02-21 0001633931 us-gaap:RestrictedStockMember bld:VestingBasedOnPerformanceMember 2023-02-21 2023-02-21 0001633931 us-gaap:RestrictedStockMember bld:VestingBasedOnPerformanceMember 2022-02-15 2022-02-15 0001633931 bld:RestrictedStockAwardsGrantedFebruary2021Member bld:VestingBasedOnPerformanceMember 2024-01-01 2024-03-31 0001633931 us-gaap:EmployeeStockOptionMember 2024-01-01 2024-06-30 0001633931 us-gaap:RestrictedStockMember 2023-01-01 2023-06-30 0001633931 us-gaap:RestrictedStockMember 2022-01-01 2022-06-30 0001633931 us-gaap:RestrictedStockMember 2024-01-01 2024-06-30 0001633931 us-gaap:RestrictedStockMember bld:VestingBasedOnPerformanceMember 2024-01-01 2024-06-30 0001633931 bld:EventOfDefaultScenarioMember us-gaap:SeniorNotesMember 2024-01-01 2024-06-30 0001633931 bld:SeniorNotesDue2032Member 2024-06-30 0001633931 bld:SeniorNotesDue2029Member 2024-06-30 0001633931 bld:AmendmentNo.4ToCreditAgreementMember us-gaap:RevolvingCreditFacilityMember 2024-06-30 0001633931 2024-04-01 2024-06-30 0001633931 2023-04-01 2023-06-30 0001633931 2023-01-01 2023-06-30 0001633931 bld:VestingBasedOnServiceMember 2024-04-01 2024-06-30 0001633931 bld:VestingBasedOnPerformanceMember 2024-04-01 2024-06-30 0001633931 bld:VestingBasedOnMarketConditionsMember 2024-04-01 2024-06-30 0001633931 bld:VestingBasedOnServiceMember 2024-01-01 2024-06-30 0001633931 bld:VestingBasedOnPerformanceMember 2024-01-01 2024-06-30 0001633931 bld:VestingBasedOnMarketConditionsMember 2024-01-01 2024-06-30 0001633931 bld:VestingBasedOnServiceMember 2023-04-01 2023-06-30 0001633931 bld:VestingBasedOnPerformanceMember 2023-04-01 2023-06-30 0001633931 bld:VestingBasedOnMarketConditionsMember 2023-04-01 2023-06-30 0001633931 bld:VestingBasedOnServiceMember 2023-01-01 2023-06-30 0001633931 bld:VestingBasedOnPerformanceMember 2023-01-01 2023-06-30 0001633931 bld:VestingBasedOnMarketConditionsMember 2023-01-01 2023-06-30 0001633931 bld:BaseRateBorrowingsMember bld:AmendmentNo.4ToCreditAgreementMember us-gaap:SecuredOvernightFinancingRateSofrMember 2024-01-01 2024-06-30 0001633931 bld:SeniorNotesDue2032Member bld:DebtInstrumentRedemptionPeriodSixMember 2024-01-01 2024-06-30 0001633931 bld:SofrRateBorrowingsMember bld:AmendmentNo.4ToCreditAgreementMember 2024-01-01 2024-06-30 0001633931 bld:SeniorNotesDue2032Member bld:DebtInstrumentRedemptionPeriodSevenMember 2024-01-01 2024-06-30 0001633931 srt:MinimumMember bld:SofrRateBorrowingsMember bld:AmendmentNo.4ToCreditAgreementMember bld:DelayedDrawTermLoanFacilityOneMember 2024-01-01 2024-06-30 0001633931 srt:MinimumMember bld:BaseRateBorrowingsMember bld:AmendmentNo.4ToCreditAgreementMember bld:DelayedDrawTermLoanFacilityOneMember 2024-01-01 2024-06-30 0001633931 srt:MaximumMember bld:SofrRateBorrowingsMember bld:AmendmentNo.4ToCreditAgreementMember bld:DelayedDrawTermLoanFacilityOneMember 2024-01-01 2024-06-30 0001633931 srt:MaximumMember bld:BaseRateBorrowingsMember bld:AmendmentNo.4ToCreditAgreementMember bld:DelayedDrawTermLoanFacilityOneMember 2024-01-01 2024-06-30 0001633931 2024-01-01 2024-06-30 0001633931 2024-06-30 0001633931 2023-12-31 iso4217:USD pure shares iso4217:USD shares bld:segment bld:item 0 0 0001633931 false --12-31 2024 Q2 10-Q true 2024-06-30 false 001-36870 TopBuild Corp DE 47-3096382 475 North Williamson Boulevard Daytona Beach FL 32114 386 304-2200 Common stock, par value $0.01 per share BLD NYSE Yes Yes Large Accelerated Filer false false false 30166212 463221000 848565000 22718000 23948000 859725000 799009000 393810000 364731000 43550000 36939000 1760306000 2049244000 191048000 204629000 267523000 264487000 2090788000 2042568000 583141000 591058000 10187000 10865000 4902993000 5162851000 461139000 469585000 45665000 47039000 176753000 187217000 66953000 65780000 1739000 1917000 752249000 771538000 1351969000 1373028000 243790000 243930000 60402000 58783000 132529000 146213000 3318000 4150000 1422000 1554000 2545679000 2599196000 0.01 0.01 10000000 10000000 0 0 0.01 0.01 250000000 250000000 39561321 30584176 39492037 31776039 396000 394000 8977145 7715998 1215829000 699327000 919317000 906334000 2674023000 2370919000 -20593000 -14665000 2357314000 2563655000 4902993000 5162851000 1365612000 1317262000 2644329000 2582500000 941690000 895462000 1833257000 1790485000 423922000 421800000 811072000 792015000 213530000 184697000 386172000 355481000 210392000 237103000 424900000 436534000 18568000 18558000 37363000 36597000 11350000 4605000 22632000 6528000 -7218000 -13953000 -14731000 -30069000 203174000 223150000 410169000 406465000 52451000 58750000 107065000 106195000 150723000 164400000 303104000 300270000 4.81 5.20 9.63 9.51 4.78 5.18 9.56 9.47 31324833 31599744 31483144 31575337 31524063 31731807 31693524 31722660 150723000 164400000 303104000 300270000 -1836000 4283000 -5928000 6037000 148887000 168683000 297176000 306307000 303104000 300270000 69291000 64652000 9759000 6886000 131000 -621000 1440000 1440000 9874000 4031000 4892000 3290000 58411000 37247000 30758000 -54623000 6595000 -8897000 -17480000 -8806000 -13348000 -13872000 -2509000 1012000 269128000 385797000 35974000 30672000 88123000 45948000 2150000 782000 -121947000 -75838000 23873000 18829000 6059000 6350000 3224000 1497000 505241000 300000 -531949000 -23982000 -576000 281000 -385344000 286258000 848565000 240069000 463221000 526327000 20180000 26310000 277000 1449000 5202000 0.01 393000 -692799000 887367000 1756665000 -21920000 1929706000 135870000 135870000 3135000 3135000 95012 2000 2000 32594 6350000 6350000 28840 1028000 1028000 1753000 1753000 395000 -699149000 891530000 1892535000 -20167000 2065144000 164400000 164400000 3751000 3751000 18768 4762 468000 468000 4283000 4283000 395000 -699149000 895749000 2056935000 -15884000 2238046000 0.01 394000 -699327000 906334000 2370919000 -14665000 2563655000 152381000 152381000 5127000 5127000 51236 1000 1000 14965 6059000 6059000 5757 1020000 1020000 -4092000 -4092000 395000 -705386000 912481000 2523300000 -18757000 2712033000 150723000 150723000 4632000 4632000 2022 1000 1000 1246182 510443000 510443000 10269 2204000 2204000 -1836000 -1836000 396000 -1215829000 919317000 2674023000 -20593000 2357314000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><b style="font-weight:bold;">1.  BASIS OF PRESENTATION</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">TopBuild is listed on the NYSE under the ticker symbol “BLD.” We report our business in two segments: Installation and Specialty Distribution. Our Installation segment primarily installs insulation and other building products. Our Specialty Distribution segment primarily sells and distributes insulation and other building products. Our segments are based on our operating units, for which financial information is regularly evaluated by our chief operating decision maker.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">We believe the accompanying unaudited condensed consolidated financial statements contain all adjustments, of a normal recurring nature, necessary to state fairly our financial position as of June 30, 2024, our results of operations and comprehensive income for the three and six months ended June 30, 2024 and 2023, and our cash flows for the six months ended June 30, 2024 and 2023. The condensed consolidated balance sheet at December 31, 2023 was derived from our audited financial statements, but does not include all disclosures required by GAAP.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">These condensed consolidated financial statements and related notes should be read in conjunction with the audited Consolidated Financial Statements included in the Company’s <a href="https://www.sec.gov/ix?doc=/Archives/edgar/data/1633931/000155837024001999/bld-20231231x10k.htm" style="-sec-extract:exhibit;font-family:&quot;'Times New Roman','Times','serif'&quot;;"><span style="font-family:'Times New Roman','Times','serif';font-style:normal;font-weight:normal;">Annual report for the year ended December 31, 2023</span></a>, as filed with the SEC on February 28, 2024.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p> 2 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><b style="font-family:'TimesNewRoman';font-weight:bold;">2.  ACCOUNTING POLICIES</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-family:'TimesNewRoman';visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-style:italic;font-weight:bold;">Financial Statement Presentation.</span> Our condensed consolidated financial statements have been developed in conformity with GAAP, which requires management to make estimates and assumptions. These estimates and assumptions affect the reported amounts of assets and liabilities and disclosures of contingent liabilities at the date of the financial statements, as well as the reported amounts of revenues and expenses during the reporting periods. Actual results could differ materially from these estimates. All intercompany transactions between TopBuild entities have been eliminated.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-style:italic;font-weight:bold;">Recently Issued Accounting Pronouncements Not Yet Adopted</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">In November 2023, the FASB issued ASU 2023-07, “Segment Reporting (Topic 280), Improvements to Reportable Segment Disclosures”. This standard amends Topic 280 to require all entities to disclose, on an annual and interim basis, significant segment expenses and an amount for other segment items by reportable segment. This standard is effective for fiscal years beginning after December 15, 2023, and interim periods within fiscal years beginning after December 15, 2024, with early adoption permitted. We do not anticipate that this standard will affect our consolidated results of operations, financial position or cash flows and we are assessing the impact of adoption in our disclosures to the consolidated financial statements.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">In December 2023, the FASB issued ASU 2023-09, “Income Taxes (Topic 740), Improvements to Income Tax Disclosures”. This standard amends Topic 740 to require all entities to disclose specific categories in the rate reconciliation, income taxes paid and other income tax information.  This standard is effective for fiscal years beginning after December 15, 2024, with early adoption permitted and should be applied on a prospective basis. We do not anticipate that this standard will affect our consolidated results of operations, financial position or cash flows and we are assessing the impact of its adoption in our disclosures to our consolidated financial statements<span style="font-family:'TimesNewRomanPSMT';">.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-style:italic;font-weight:bold;">Financial Statement Presentation.</span> Our condensed consolidated financial statements have been developed in conformity with GAAP, which requires management to make estimates and assumptions. These estimates and assumptions affect the reported amounts of assets and liabilities and disclosures of contingent liabilities at the date of the financial statements, as well as the reported amounts of revenues and expenses during the reporting periods. Actual results could differ materially from these estimates. All intercompany transactions between TopBuild entities have been eliminated.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-style:italic;font-weight:bold;">Recently Issued Accounting Pronouncements Not Yet Adopted</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">In November 2023, the FASB issued ASU 2023-07, “Segment Reporting (Topic 280), Improvements to Reportable Segment Disclosures”. This standard amends Topic 280 to require all entities to disclose, on an annual and interim basis, significant segment expenses and an amount for other segment items by reportable segment. This standard is effective for fiscal years beginning after December 15, 2023, and interim periods within fiscal years beginning after December 15, 2024, with early adoption permitted. We do not anticipate that this standard will affect our consolidated results of operations, financial position or cash flows and we are assessing the impact of adoption in our disclosures to the consolidated financial statements.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">In December 2023, the FASB issued ASU 2023-09, “Income Taxes (Topic 740), Improvements to Income Tax Disclosures”. This standard amends Topic 740 to require all entities to disclose specific categories in the rate reconciliation, income taxes paid and other income tax information.  This standard is effective for fiscal years beginning after December 15, 2024, with early adoption permitted and should be applied on a prospective basis. We do not anticipate that this standard will affect our consolidated results of operations, financial position or cash flows and we are assessing the impact of its adoption in our disclosures to our consolidated financial statements<span style="font-family:'TimesNewRomanPSMT';">.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-family:'TimesNewRomanPSMT';font-weight:bold;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><b style="font-family:'TimesNewRomanPSMT';font-weight:bold;">3.  REVENUE RECOGNITION</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">Revenue is disaggregated between our Installation and Specialty Distribution segments and further based on market and product, as we believe this best depicts how the nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factors.  </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">The following tables present our revenues disaggregated by market (in thousands):</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-family:'TimesNewRomanPSMT';visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:15.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:15.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="23" style="vertical-align:bottom;white-space:nowrap;width:82.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended June 30, </b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:15.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:40.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:40.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:15.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Installation</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;width:9.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Specialty </b><b style="font-weight:bold;"><br/></b><b style="font-weight:bold;">Distribution</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Eliminations</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Total</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Installation</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;width:9.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Specialty </b><b style="font-weight:bold;"><br/></b><b style="font-weight:bold;">Distribution</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Eliminations</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.17%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:bottom;width:15.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">Residential</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 712,827</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 237,604</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (66,331)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 884,100</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 668,172</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 227,254</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (56,667)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 838,759</p></td></tr><tr><td style="vertical-align:bottom;width:15.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">Commercial/Industrial</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 138,156</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 355,222</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (11,866)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 481,512</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 140,883</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 347,234</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (9,614)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 478,503</p></td></tr><tr><td style="vertical-align:bottom;width:15.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><span style="white-space:pre-wrap;"> Net sales</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 850,983</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 592,826</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (78,197)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,365,612</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 809,055</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 574,488</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (66,281)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.98%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,317,262</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-family:'TimesNewRomanPSMT';visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:15.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:15.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="color:#0000ff;font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;text-decoration-line:underline;text-decoration-style:solid;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="23" style="vertical-align:bottom;white-space:nowrap;width:82.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Six Months Ended June 30, </b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:15.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:40.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:40.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:15.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Installation</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;width:9.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Specialty </b><b style="font-weight:bold;"><br/></b><b style="font-weight:bold;">Distribution</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Eliminations</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Total</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Installation</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;width:9.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Specialty </b><b style="font-weight:bold;"><br/></b><b style="font-weight:bold;">Distribution</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Eliminations</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.17%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:bottom;width:15.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">Residential</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,387,263</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 454,001</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (122,321)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,718,943</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,313,875</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 451,579</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (108,056)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,657,398</p></td></tr><tr><td style="vertical-align:bottom;width:15.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">Commercial/Industrial</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 262,463</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 684,619</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (21,696)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 925,386</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 262,270</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 681,283</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (18,451)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 925,102</p></td></tr><tr><td style="vertical-align:bottom;width:15.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><span style="white-space:pre-wrap;"> Net sales</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,649,726</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,138,620</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (144,017)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 2,644,329</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,576,145</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,132,862</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (126,507)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.98%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 2,582,500</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-family:'TimesNewRomanPSMT';visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-family:'TimesNewRomanPSMT';visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-family:'TimesNewRomanPSMT';">The following tables present our revenues disaggregated by product (in thousands):</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-family:'TimesNewRomanPSMT';visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:15.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:15.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="23" style="vertical-align:bottom;white-space:nowrap;width:83.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended June 30, </b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:15.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:40.56%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:41.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:15.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.24%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Installation</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;width:9.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Specialty </b><b style="font-weight:bold;"><br/></b><b style="font-weight:bold;">Distribution</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Eliminations</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Total</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Installation</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;width:10.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Specialty </b><b style="font-weight:bold;"><br/></b><b style="font-weight:bold;">Distribution</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Eliminations</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:bottom;width:15.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">Insulation and accessories</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 685,728</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 525,242</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (68,758)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,142,212</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 633,924</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 513,162</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (57,599)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,089,487</p></td></tr><tr><td style="vertical-align:bottom;width:15.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">Glass and windows</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 62,322</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> -</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 62,322</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 68,841</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> -</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> -</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 68,841</p></td></tr><tr><td style="vertical-align:bottom;width:15.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">Gutters</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 30,371</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 49,052</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (7,924)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 71,499</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 29,401</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 44,088</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (7,571)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 65,918</p></td></tr><tr><td style="vertical-align:bottom;width:15.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">All other</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.06%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 72,562</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 18,532</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (1,515)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 89,579</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 76,889</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.83%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 17,238</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (1,111)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 93,016</p></td></tr><tr><td style="vertical-align:bottom;width:15.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><span style="white-space:pre-wrap;"> Net sales</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.06%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 850,983</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 592,826</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (78,197)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,365,612</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 809,055</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.83%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 574,488</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (66,281)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,317,262</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-family:'TimesNewRomanPSMT';visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:15.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:15.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="color:#0000ff;font-size:8pt;text-decoration-line:underline;text-decoration-style:solid;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="23" style="vertical-align:bottom;white-space:nowrap;width:83.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Six Months Ended June 30, </b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:15.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:40.56%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:41.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:15.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.24%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Installation</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;width:9.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Specialty Distribution</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Eliminations</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Total</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Installation</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;width:10.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Specialty </b><b style="font-weight:bold;"><br/></b><b style="font-weight:bold;">Distribution</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Eliminations</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:bottom;width:15.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">Insulation and accessories</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,329,378</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,015,910</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (126,267)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 2,219,021</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,234,691</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,015,964</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (109,572)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 2,141,083</p></td></tr><tr><td style="vertical-align:bottom;width:15.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">Glass and windows</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 120,438</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 120,438</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 132,283</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 132,283</p></td></tr><tr><td style="vertical-align:bottom;width:15.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">Gutters</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 58,339</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 89,368</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (15,232)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 132,475</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 57,679</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 83,931</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (14,736)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 126,874</p></td></tr><tr><td style="vertical-align:bottom;width:15.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">All other</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.06%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 141,571</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 33,342</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (2,518)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 172,395</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 151,492</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.83%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 32,967</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (2,199)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 182,260</p></td></tr><tr><td style="vertical-align:bottom;width:15.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><span style="white-space:pre-wrap;"> Net sales</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.06%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,649,726</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,138,620</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (144,017)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 2,644,329</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,576,145</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.83%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,132,862</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (126,507)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 2,582,500</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">The following table represents our contract assets and contract liabilities with customers, in thousands:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:34.72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:34.72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.26%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:34.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:34.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Included in Line Item on</b></p></td><td style="vertical-align:bottom;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:29.05%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">As of</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:34.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:34.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">June 30, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31, </b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:34.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:34.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Condensed Consolidated Balance Sheets</b></p></td><td style="vertical-align:bottom;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:34.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Contract Assets:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:34.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:34.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Receivables, unbilled</p></td><td style="vertical-align:bottom;white-space:nowrap;width:34.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;">Receivables, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 76,198</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 64,882</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:34.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:34.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:34.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Contract Liabilities:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:34.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:34.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Deferred revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:34.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;">Accrued liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 15,981</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 18,365</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">The aggregate amount remaining on uncompleted performance obligations was $385.8 million as of June 30, 2024. We expect to satisfy the performance obligations and recognize revenue on substantially all of these uncompleted contracts over the next 18 months.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">On certain of our long-term contracts, a percentage of the total project cost is withheld and not invoiced to the customer and collected until satisfactory completion of the customer’s project, typically within a year. This amount is referred to as retainage and is common practice in the construction industry. Retainage receivables are classified as a component of Receivables, net on our condensed consolidated balance sheets and were $77.0 million and $81.9 million as of June 30, 2024 and December 31, 2023, respectively.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">The following tables present our revenues disaggregated by market (in thousands):</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-family:'TimesNewRomanPSMT';visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:15.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:15.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="23" style="vertical-align:bottom;white-space:nowrap;width:82.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended June 30, </b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:15.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:40.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:40.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:15.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Installation</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;width:9.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Specialty </b><b style="font-weight:bold;"><br/></b><b style="font-weight:bold;">Distribution</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Eliminations</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Total</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Installation</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;width:9.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Specialty </b><b style="font-weight:bold;"><br/></b><b style="font-weight:bold;">Distribution</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Eliminations</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.17%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:bottom;width:15.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">Residential</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 712,827</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 237,604</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (66,331)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 884,100</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 668,172</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 227,254</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (56,667)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 838,759</p></td></tr><tr><td style="vertical-align:bottom;width:15.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">Commercial/Industrial</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 138,156</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 355,222</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (11,866)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 481,512</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 140,883</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 347,234</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (9,614)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 478,503</p></td></tr><tr><td style="vertical-align:bottom;width:15.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><span style="white-space:pre-wrap;"> Net sales</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 850,983</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 592,826</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (78,197)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,365,612</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 809,055</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 574,488</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (66,281)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.98%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,317,262</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-family:'TimesNewRomanPSMT';visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:15.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:15.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="color:#0000ff;font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;text-decoration-line:underline;text-decoration-style:solid;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="23" style="vertical-align:bottom;white-space:nowrap;width:82.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Six Months Ended June 30, </b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:15.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:40.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:40.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:15.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Installation</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;width:9.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Specialty </b><b style="font-weight:bold;"><br/></b><b style="font-weight:bold;">Distribution</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Eliminations</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Total</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Installation</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;width:9.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Specialty </b><b style="font-weight:bold;"><br/></b><b style="font-weight:bold;">Distribution</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Eliminations</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.17%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:bottom;width:15.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">Residential</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,387,263</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 454,001</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (122,321)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,718,943</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,313,875</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 451,579</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (108,056)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,657,398</p></td></tr><tr><td style="vertical-align:bottom;width:15.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">Commercial/Industrial</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 262,463</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 684,619</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (21,696)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 925,386</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 262,270</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 681,283</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (18,451)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 925,102</p></td></tr><tr><td style="vertical-align:bottom;width:15.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><span style="white-space:pre-wrap;"> Net sales</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,649,726</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.14%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,138,620</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (144,017)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 2,644,329</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,576,145</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,132,862</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.13%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (126,507)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.98%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 2,582,500</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-family:'TimesNewRomanPSMT';visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-family:'TimesNewRomanPSMT';visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-family:'TimesNewRomanPSMT';">The following tables present our revenues disaggregated by product (in thousands):</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-family:'TimesNewRomanPSMT';visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:15.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:15.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="23" style="vertical-align:bottom;white-space:nowrap;width:83.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended June 30, </b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:15.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:40.56%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:41.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:15.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.24%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Installation</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;width:9.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Specialty </b><b style="font-weight:bold;"><br/></b><b style="font-weight:bold;">Distribution</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Eliminations</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Total</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Installation</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;width:10.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Specialty </b><b style="font-weight:bold;"><br/></b><b style="font-weight:bold;">Distribution</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Eliminations</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:bottom;width:15.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">Insulation and accessories</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 685,728</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 525,242</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (68,758)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,142,212</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 633,924</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 513,162</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (57,599)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,089,487</p></td></tr><tr><td style="vertical-align:bottom;width:15.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">Glass and windows</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 62,322</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> -</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 62,322</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 68,841</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> -</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> -</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 68,841</p></td></tr><tr><td style="vertical-align:bottom;width:15.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">Gutters</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 30,371</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 49,052</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (7,924)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 71,499</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 29,401</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 44,088</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (7,571)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 65,918</p></td></tr><tr><td style="vertical-align:bottom;width:15.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">All other</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.06%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 72,562</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 18,532</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (1,515)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 89,579</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 76,889</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.83%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 17,238</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (1,111)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 93,016</p></td></tr><tr><td style="vertical-align:bottom;width:15.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><span style="white-space:pre-wrap;"> Net sales</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.06%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 850,983</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 592,826</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (78,197)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,365,612</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 809,055</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.83%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 574,488</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (66,281)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,317,262</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-family:'TimesNewRomanPSMT';visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:15.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:15.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="color:#0000ff;font-size:8pt;text-decoration-line:underline;text-decoration-style:solid;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="23" style="vertical-align:bottom;white-space:nowrap;width:83.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Six Months Ended June 30, </b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:15.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:40.56%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:41.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:15.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.24%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Installation</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;width:9.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Specialty Distribution</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Eliminations</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Total</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Installation</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;width:10.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Specialty </b><b style="font-weight:bold;"><br/></b><b style="font-weight:bold;">Distribution</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Eliminations</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:bottom;width:15.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">Insulation and accessories</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,329,378</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,015,910</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (126,267)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 2,219,021</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,234,691</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,015,964</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (109,572)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 2,141,083</p></td></tr><tr><td style="vertical-align:bottom;width:15.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">Glass and windows</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 120,438</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 120,438</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 132,283</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 132,283</p></td></tr><tr><td style="vertical-align:bottom;width:15.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">Gutters</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 58,339</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 89,368</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (15,232)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 132,475</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 57,679</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 83,931</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (14,736)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 126,874</p></td></tr><tr><td style="vertical-align:bottom;width:15.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">All other</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.06%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 141,571</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 33,342</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (2,518)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 172,395</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 151,492</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.83%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 32,967</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (2,199)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 182,260</p></td></tr><tr><td style="vertical-align:bottom;width:15.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><span style="white-space:pre-wrap;"> Net sales</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.06%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,649,726</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.17%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,138,620</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (144,017)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 2,644,329</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,576,145</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.83%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,132,862</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (126,507)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.07%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 2,582,500</p></td></tr></table> 712827000 237604000 -66331000 884100000 668172000 227254000 -56667000 838759000 138156000 355222000 -11866000 481512000 140883000 347234000 -9614000 478503000 850983000 592826000 -78197000 1365612000 809055000 574488000 -66281000 1317262000 1387263000 454001000 -122321000 1718943000 1313875000 451579000 -108056000 1657398000 262463000 684619000 -21696000 925386000 262270000 681283000 -18451000 925102000 1649726000 1138620000 -144017000 2644329000 1576145000 1132862000 -126507000 2582500000 685728000 525242000 -68758000 1142212000 633924000 513162000 -57599000 1089487000 62322000 62322000 68841000 68841000 30371000 49052000 -7924000 71499000 29401000 44088000 -7571000 65918000 72562000 18532000 -1515000 89579000 76889000 17238000 -1111000 93016000 850983000 592826000 -78197000 1365612000 809055000 574488000 -66281000 1317262000 1329378000 1015910000 -126267000 2219021000 1234691000 1015964000 -109572000 2141083000 120438000 120438000 132283000 132283000 58339000 89368000 -15232000 132475000 57679000 83931000 -14736000 126874000 141571000 33342000 -2518000 172395000 151492000 32967000 -2199000 182260000 1649726000 1138620000 -144017000 2644329000 1576145000 1132862000 -126507000 2582500000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">The following table represents our contract assets and contract liabilities with customers, in thousands:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:34.72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:34.72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.26%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:34.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:34.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Included in Line Item on</b></p></td><td style="vertical-align:bottom;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:29.05%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">As of</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:34.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:34.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">June 30, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31, </b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:34.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:34.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Condensed Consolidated Balance Sheets</b></p></td><td style="vertical-align:bottom;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.78%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:34.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Contract Assets:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:34.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:34.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Receivables, unbilled</p></td><td style="vertical-align:bottom;white-space:nowrap;width:34.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;">Receivables, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 76,198</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 64,882</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:34.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:34.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:34.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Contract Liabilities:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:34.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:34.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Deferred revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:34.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;">Accrued liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 15,981</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 18,365</p></td></tr></table> 76198000 64882000 15981000 18365000 385800000 over the next 18 months 77000000.0 81900000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><b style="font-weight:bold;">4.  GOODWILL AND OTHER INTANGIBLES</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">We have two reporting units which are also our operating and reportable segments: Installation and Specialty Distribution. Both reporting units contain goodwill. Assets acquired and liabilities assumed are assigned to the applicable reporting unit based on whether the acquired assets and liabilities relate to the operations of such unit and determination of its fair value. Goodwill assigned to the reporting unit is the excess of the fair value of the acquired business over the fair value of the individual assets acquired and liabilities assumed for the reporting unit.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">In the fourth quarter of 2023, we performed an annual assessment on our goodwill resulting in no impairment and there were no indicators of impairment for the six months ended June 30, 2024.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">Changes in the carrying amount of goodwill for the six months ended June 30, 2024, by segment, were as follows, in thousands:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:13.26%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.65%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.62%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.79%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.7%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">   Accumulated   </b></p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross Goodwill</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;width:9.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">FX Translation</b></p></td><td style="vertical-align:bottom;width:1.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross Goodwill</b></p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Impairment</b></p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Net Goodwill</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31, 2023</b></p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Additions</b></p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Adjustment</b></p></td><td style="vertical-align:bottom;width:1.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.06%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">June 30, 2024</b></p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Losses</b></p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">June 30, 2024</b></p></td></tr><tr><td style="vertical-align:bottom;width:13.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">Goodwill, by segment:</p></td><td style="vertical-align:bottom;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Installation</p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,901,160</p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 44,573</p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;width:1.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,945,733</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (762,021)</p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,183,712</p></td></tr><tr><td style="vertical-align:bottom;width:13.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Specialty Distribution</p></td><td style="vertical-align:bottom;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.65%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 903,429</p></td><td style="vertical-align:bottom;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.62%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 5,721</p></td><td style="vertical-align:bottom;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.27%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.17%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (2,074)</p></td><td style="vertical-align:bottom;width:1.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.79%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 907,076</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.05%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.7%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 907,076</p></td></tr><tr><td style="vertical-align:bottom;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">Total goodwill</p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;"><span style="font-size:8pt;margin-left:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.65%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 2,804,589</p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;"><span style="font-size:8pt;margin-left:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.62%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 50,294</p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;"><span style="font-size:8pt;margin-left:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.17%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (2,074)</p></td><td style="vertical-align:bottom;width:1.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;"><span style="font-size:8pt;margin-left:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.79%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 2,852,809</p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;"><span style="font-size:8pt;margin-left:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.05%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (762,021)</p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;"><span style="font-size:8pt;margin-left:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.7%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 2,090,788</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">See <i style="font-style:italic;">Note 11 – Business Combinations</i> for goodwill recognized on acquisitions that occurred during the six months ended June 30, 2024.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">Other intangible assets, net includes customer relationships, non-compete agreements, and trademarks / trade names. The following table sets forth our other intangible assets, in thousands:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:6pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:57.75%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:17.08%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:17.08%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:57.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:40.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">As of</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:57.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:19.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">June 30, 2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:19.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31, 2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:57.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Gross definite-lived intangible assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:17.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 854,873</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:17.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 827,793</p></td></tr><tr><td style="vertical-align:bottom;width:57.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Accumulated amortization</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:17.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (271,732)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:17.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (236,735)</p></td></tr><tr><td style="vertical-align:bottom;width:57.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Other intangible assets, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:17.08%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 583,141</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:17.08%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 591,058</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">The following table sets forth our amortization expense, in thousands:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:6pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:40.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.79%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.22%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.82%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.22%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.22%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.82%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:40.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:27.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended June 30, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:27.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Six Months Ended June 30, </b></p></td></tr><tr><td style="vertical-align:bottom;width:40.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.05%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.05%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:40.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Amortization expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 17,947</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 17,211</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 35,633</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.82%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 34,107</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p> 2 0 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:13.26%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.65%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.62%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.79%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.7%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">   Accumulated   </b></p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross Goodwill</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;width:9.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">FX Translation</b></p></td><td style="vertical-align:bottom;width:1.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Gross Goodwill</b></p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Impairment</b></p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Net Goodwill</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31, 2023</b></p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Additions</b></p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Adjustment</b></p></td><td style="vertical-align:bottom;width:1.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.06%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">June 30, 2024</b></p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Losses</b></p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">June 30, 2024</b></p></td></tr><tr><td style="vertical-align:bottom;width:13.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">Goodwill, by segment:</p></td><td style="vertical-align:bottom;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.79%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Installation</p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,901,160</p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 44,573</p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;width:1.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.79%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,945,733</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (762,021)</p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 1,183,712</p></td></tr><tr><td style="vertical-align:bottom;width:13.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Specialty Distribution</p></td><td style="vertical-align:bottom;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.65%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 903,429</p></td><td style="vertical-align:bottom;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.62%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 5,721</p></td><td style="vertical-align:bottom;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.27%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.17%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (2,074)</p></td><td style="vertical-align:bottom;width:1.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.79%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 907,076</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.05%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;width:1.83%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.7%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 907,076</p></td></tr><tr><td style="vertical-align:bottom;width:13.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">Total goodwill</p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;"><span style="font-size:8pt;margin-left:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.65%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 2,804,589</p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;"><span style="font-size:8pt;margin-left:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.62%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 50,294</p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;"><span style="font-size:8pt;margin-left:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.17%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (2,074)</p></td><td style="vertical-align:bottom;width:1.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;"><span style="font-size:8pt;margin-left:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.79%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 2,852,809</p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;"><span style="font-size:8pt;margin-left:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.05%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt;"> (762,021)</p></td><td style="vertical-align:bottom;width:1.83%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;"><span style="font-size:8pt;margin-left:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.7%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;line-height:1.19;text-align:right;margin:0pt 2.5pt 0pt 0pt;"> 2,090,788</p></td></tr></table> 1901160000 44573000 1945733000 762021000 1183712000 903429000 5721000 -2074000 907076000 907076000 2804589000 50294000 -2074000 2852809000 762021000 2090788000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">Other intangible assets, net includes customer relationships, non-compete agreements, and trademarks / trade names. The following table sets forth our other intangible assets, in thousands:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:6pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:57.75%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:17.08%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:17.08%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:57.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:40.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">As of</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:57.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:19.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">June 30, 2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:19.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31, 2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:57.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Gross definite-lived intangible assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:17.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 854,873</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:17.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 827,793</p></td></tr><tr><td style="vertical-align:bottom;width:57.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Accumulated amortization</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:17.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (271,732)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:17.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (236,735)</p></td></tr><tr><td style="vertical-align:bottom;width:57.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Other intangible assets, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:17.08%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 583,141</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:17.08%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 591,058</p></td></tr></table> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:6pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:57.75%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:17.08%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:17.08%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:57.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:40.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">As of</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:57.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:19.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">June 30, 2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:19.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31, 2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:57.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Gross definite-lived intangible assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:17.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 854,873</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:17.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 827,793</p></td></tr><tr><td style="vertical-align:bottom;width:57.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Accumulated amortization</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:17.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (271,732)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:17.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (236,735)</p></td></tr><tr><td style="vertical-align:bottom;width:57.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Other intangible assets, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:17.08%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 583,141</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.01%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:17.08%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 591,058</p></td></tr></table> 854873000 827793000 271732000 236735000 583141000 591058000 17947000 17211000 35633000 34107000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.28;margin:0pt 0pt 6pt 0pt;"><b style="font-weight:bold;white-space:pre-wrap;">5. LONG-TERM DEBT</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">The following table reconciles the principal balances of our outstanding debt to our condensed consolidated balance sheets, in thousands:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:6pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:66.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:31.67%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">As of</b></p></td></tr><tr><td style="vertical-align:bottom;width:66.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.82%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">June 30, 2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.99%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31, 2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:66.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">3.625% Senior Notes due 2029</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 400,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 400,000</p></td></tr><tr><td style="vertical-align:bottom;width:66.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">4.125% Senior Notes due 2032</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 500,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 500,000</p></td></tr><tr><td style="vertical-align:bottom;width:66.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Term loan due 2026</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 510,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 532,500</p></td></tr><tr><td style="vertical-align:bottom;width:66.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Equipment notes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 665</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,039</p></td></tr><tr><td style="vertical-align:bottom;width:66.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Unamortized debt issuance costs</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (13,031)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.44%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (14,472)</p></td></tr><tr><td style="vertical-align:bottom;width:66.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Total debt, net of unamortized debt issuance costs</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,397,634</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,420,067</p></td></tr><tr><td style="vertical-align:bottom;width:66.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Less: current portion of long-term debt</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 45,665</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.44%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 47,039</p></td></tr><tr><td style="vertical-align:bottom;width:66.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Total long-term debt</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,351,969</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.44%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,373,028</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">The following table sets forth our remaining principal payments for our outstanding debt balances as of June 30, 2024, in thousands:</p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:22%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.65%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.83%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.83%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2025</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;width:9.86%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2026</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;width:9.86%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2027</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.05%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2028</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.86%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Thereafter</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.9%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:bottom;width:22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">3.625% Senior Notes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 400,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 400,000</p></td></tr><tr><td style="vertical-align:bottom;width:22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">4.125% Senior Notes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 500,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 500,000</p></td></tr><tr><td style="vertical-align:bottom;width:22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Term loan</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 22,500</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 48,750</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 438,750</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 510,000</p></td></tr><tr><td style="vertical-align:bottom;width:22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Equipment notes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 665</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 665</p></td></tr><tr><td style="vertical-align:bottom;width:22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Total</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.44%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 23,165</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.44%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 48,750</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 438,750</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.65%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 900,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,410,665</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;background:#ffffff;margin:0pt 0pt 6pt 0pt;"><i style="font-style:italic;">Credit Agreement</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">On July 26, 2023, we entered into Amendment No. 4 to our Credit Agreement, which provided for a new $550.0 million Term Facility Two, the proceeds of which were intended to be used, in part, to finance the acquisition of SPI, including the payment of related fees and expenses. On April 22, 2024, we agreed to a mutual termination of our previous agreement to acquire SPI. In connection with the termination of the SPI acquisition, the Company terminated the commitments with respect to its undrawn Term Facility Two which was provided pursuant to Amendment No. 4. All other terms of the Company’s Credit Agreement, as amended, remain in full force and effect.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">The following table outlines the key terms of the Credit Agreement (dollars in thousands):</p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:7pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:83.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:83.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Senior secured term loan facility</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 600,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:83.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:83.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Revolving facility (a)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 500,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:83.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Sublimit for issuance of letters of credit under revolving facility</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 100,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:83.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Sublimit for swingline loans under revolving facility</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 35,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:83.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:83.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Interest rate as of June 30, 2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 6.44</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">%</p></td></tr><tr><td style="vertical-align:bottom;width:83.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Scheduled maturity date</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-size:9pt;">10/7/2026</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr></table><div style="font-family:'Times New Roman','Times','serif';font-size:8.0pt;margin-bottom:0pt;min-height:1.19em;position:relative;width:100%;"><div style="background-color:#000000;height:1pt;position:relative;top:0.6em;width:25.0%;border:none;margin:0 auto 0 0;"></div></div><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:9pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">(a)</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;">Use of the sublimits for the issuance of letters of credit and swingline loans reduces the availability under the revolving facility.</span></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">Interest expense on borrowings under the Credit Agreement is based on an applicable margin rate plus, at our option, either:  </p><p style="font-family:'Times New Roman','Times','serif';font-size:11pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:10pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:11pt;line-height:1.19;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">●</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">A base rate determined by reference to the highest of either (i) the federal funds rate plus </span><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">0.50</span><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"> percent, (ii) BofA’s “prime rate,” and (iii) the SOFR rate for U.S. dollar deposits with a term of </span><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">one month</span><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">, plus </span><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">1.00</span><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"> percent (Term Facility One); or</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:11pt;line-height:1.19;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">●</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">A SOFR rate determined by reference to the costs of funds for deposits in U.S. dollars for the interest period relevant to such borrowings, subject to a floor of </span><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">0%</span><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">.</span></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">The applicable margin rate is determined based on our Secured Leverage Ratio. In the case of base rate borrowings, the applicable margin rate ranges from 0.00 percent to 1.50 percent for Term Facility One and in the case of SOFR rate borrowings, the applicable margin ranges from 1.00 percent to 2.50 percent for Term Facility One. Borrowings under the Credit Agreement are prepayable at the Company’s option without premium or penalty. The Company is required to make prepayments with the net cash proceeds of certain asset sales and certain extraordinary receipts. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><i style="font-style:italic;">Revolving Facility </i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">The Company has outstanding standby letters of credit that secure our financial obligations related to our workers’ compensation, general insurance, and auto liability programs. These standby letters of credit, as well as any outstanding amount borrowed under our revolving facility, reduce the availability under the revolving facility.  </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">The following table summarizes our availability under the revolving facility, in thousands:</p><p style="font-family:'Times New Roman','Times','serif';font-size:11pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:10pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:66.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:31.67%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">As of</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">June 30, 2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31, 2023</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Revolving facility</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 500,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 500,000</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Less: standby letters of credit</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (63,770)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (63,770)</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Availability under revolving facility</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 436,230</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.44%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 436,230</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">We are required to pay commitment fees to the Lenders in respect of any unutilized commitments. The commitment fees range from 0.15 percent to 0.275 percent per annum, depending on our Secured Leverage Ratio. We must also pay customary fees on outstanding letters of credit.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 6pt 0pt;"><i style="font-style:italic;">3.625%</i><i style="font-style:italic;"> Senior Notes</i> </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">The 3.625% Senior Notes are $400.0 million senior unsecured obligations and bear interest at 3.625% per year, payable semiannually in arrears on March 15 and September 15, beginning on September 15, 2021. The 3.625% Senior Notes mature on March 15, 2029, unless redeemed early or repurchased. If we undergo a change in control, we must make an offer to repurchase all of the 3.625% Senior Notes then outstanding at a repurchase price equal to 101% of their aggregate principal amount, plus accrued and unpaid interest (if any) to, but not including, the repurchase date. The Company may redeem the 3.625% Senior Notes, in whole or in part, at any time on or after March 15, 2024 at the redemption prices specified in the notes.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><i style="font-style:italic;">4.125%</i><i style="font-style:italic;"> Senior Notes</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;line-height:1.19;margin:0pt;"><span style="font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">The 4.125% Senior Notes are $500.0 million senior unsecured obligations and bear interest at 4.125% per year, payable semiannually in arrears on February 15 and August 15, beginning on August 15, 2022. The 4.125% Senior Notes mature on February 15, 2032, unless redeemed early or repurchased. If we undergo a change in control, we must make an offer to repurchase all of the 4.125% Senior Notes then outstanding at a repurchase price equal to 101% of their aggregate principal amount, plus accrued and unpaid interest (if any) to, but not including, the repurchase date.  </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">The Company may redeem the 4.125% Senior Notes, in whole or in part, at any time on or after October 15, 2026 at the redemption prices specified in the notes plus accrued and unpaid interest if redeemed during the 12 month period commencing on October 15 of the years set for: 2026 – 102.063%, 2027 – 101.375%, 2028 – 100.688%, 2029 and thereafter – 100.000%. The Company may also redeem a make-whole redemption of the 4.125% Senior Notes at any time prior to October 15, 2026 at the treasury rate plus 50 basis points. Additionally, the Company may redeem up to 40% of the aggregate principal amount of the 4.125% Senior Notes prior to October 15, 2024 with the net cash proceeds of certain sales of its capital stock at 104.125% of the principal amount of the notes, plus accrued and unpaid interest, if any, to the date of redemption only if, after the redemption, at least 60% of the aggregate principal amount of the notes originally issued remains outstanding.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><i style="font-style:italic;">Equipment Notes</i> </p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:10pt;">We did not issue equipment notes during the six months ended June 30, 2024. The balance of equipment notes, which were issued for the purpose of financing vehicles and equipment, was </span><span style="font-size:10pt;">$0.7</span><span style="font-size:10pt;"> million as of June 30, 2024. The Company’s equipment notes each have a </span><span style="font-size:10pt;">five-year</span><span style="font-size:10pt;"> term maturing in 2024 and bear interest at fixed rates between </span><span style="font-size:10pt;">2.8%</span><span style="font-size:10pt;"> and </span><span style="font-size:10pt;">4.4%</span><span style="font-size:10pt;">. </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:1pt;line-height:1.28;margin:0pt 0pt 8pt 0pt;">  <i style="font-size:10pt;font-style:italic;">Covenant Compliance</i><span style="font-size:10pt;"> </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">The indentures governing our 3.625% Senior Notes and our 4.125% Senior Notes (together, our “Senior Notes”) contain restrictive covenants that, among other things, generally limit the ability of the Company and certain of its subsidiaries (subject to certain exceptions) to (i) create liens, (ii) pay dividends, acquire shares of capital stock and make payments on subordinated debt, (iii) place limitations on distributions from certain subsidiaries, (iv) issue or sell the capital stock of certain subsidiaries, (v) sell assets, (vi) enter into transactions with affiliates, and (vii) effect mergers. The indentures provide for customary events of default which include (subject in certain cases to customary grace and cure periods), among others: nonpayment of principal or interest; breach of covenants or other agreements in the indenture; defaults in failure to pay certain other indebtedness; and certain events of bankruptcy or insolvency. Generally, if an event of default occurs and is continuing under the indenture, the trustee or the holders of at least 30% in aggregate principal amount of each of our Senior Notes then outstanding may declare the principal of, premium, if any, and accrued interest on the Senior Notes subject to such declaration immediately due and payable. The Senior Notes and related guarantees have not been registered under the Securities Act of 1933, and we are not required to register either the Senior Notes or the guarantees in the future. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">The Credit Agreement contains certain covenants that limit, among other things, the ability of the Company to incur additional indebtedness or liens; to make certain investments or loans; to make certain restricted payments; to enter into consolidations, mergers, sales of material assets, and other fundamental changes; to transact with affiliates; to enter into agreements restricting the ability of subsidiaries to incur liens or pay dividends; or to make certain accounting changes.  The Credit Agreement contains customary affirmative covenants and events of default. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">The Credit Agreement requires that we maintain a Net Leverage Ratio and minimum Interest Coverage Ratio throughout the term of the agreement. The following table outlines the key financial covenants effective for the period covered by this Quarterly Report:</p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:75.81%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:22.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:75.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:22.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">As of June 30, 2024</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:75.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Maximum Net Leverage Ratio</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:22.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;">3.50:1.00</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:75.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Minimum Interest Coverage Ratio</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:22.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;">3.00:1.00</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:75.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Compliance as of period end</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:22.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;">In Compliance</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:11pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">The following table reconciles the principal balances of our outstanding debt to our condensed consolidated balance sheets, in thousands:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:6pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:66.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:31.67%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">As of</b></p></td></tr><tr><td style="vertical-align:bottom;width:66.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.82%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">June 30, 2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.99%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31, 2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:66.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">3.625% Senior Notes due 2029</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 400,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 400,000</p></td></tr><tr><td style="vertical-align:bottom;width:66.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">4.125% Senior Notes due 2032</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 500,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 500,000</p></td></tr><tr><td style="vertical-align:bottom;width:66.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Term loan due 2026</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 510,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 532,500</p></td></tr><tr><td style="vertical-align:bottom;width:66.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Equipment notes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 665</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,039</p></td></tr><tr><td style="vertical-align:bottom;width:66.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Unamortized debt issuance costs</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (13,031)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.44%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (14,472)</p></td></tr><tr><td style="vertical-align:bottom;width:66.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Total debt, net of unamortized debt issuance costs</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,397,634</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,420,067</p></td></tr><tr><td style="vertical-align:bottom;width:66.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Less: current portion of long-term debt</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 45,665</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.44%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 47,039</p></td></tr><tr><td style="vertical-align:bottom;width:66.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Total long-term debt</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,351,969</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.44%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,373,028</p></td></tr></table> 0.03625 0.03625 400000000 400000000 0.04125 0.04125 500000000 500000000 510000000 532500000 665000 2039000 13031000 14472000 1397634000 1420067000 45665000 47039000 1351969000 1373028000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">The following table sets forth our remaining principal payments for our outstanding debt balances as of June 30, 2024, in thousands:</p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:22%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.65%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.83%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.83%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2025</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;width:9.86%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2026</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;width:9.86%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2027</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.05%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2028</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.86%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Thereafter</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.9%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:bottom;width:22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">3.625% Senior Notes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 400,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 400,000</p></td></tr><tr><td style="vertical-align:bottom;width:22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">4.125% Senior Notes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 500,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 500,000</p></td></tr><tr><td style="vertical-align:bottom;width:22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Term loan</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 22,500</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 48,750</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 438,750</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 510,000</p></td></tr><tr><td style="vertical-align:bottom;width:22%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Equipment notes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 665</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 665</p></td></tr><tr><td style="vertical-align:bottom;width:22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Total</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.44%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 23,165</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.44%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 48,750</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 438,750</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.65%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.45%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 900,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.4%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,410,665</p></td></tr></table> 0.03625 400000000 400000000 0.04125 500000000 500000000 22500000 48750000 438750000 510000000 665000 665000 23165000 48750000 438750000 900000000 1410665000 550000000.0 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">The following table outlines the key terms of the Credit Agreement (dollars in thousands):</p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:7pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:83.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:83.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Senior secured term loan facility</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 600,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:83.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:83.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Revolving facility (a)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 500,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:83.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Sublimit for issuance of letters of credit under revolving facility</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 100,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:83.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Sublimit for swingline loans under revolving facility</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 35,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:83.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:83.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Interest rate as of June 30, 2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 6.44</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">%</p></td></tr><tr><td style="vertical-align:bottom;width:83.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Scheduled maturity date</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-size:9pt;">10/7/2026</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.89%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr></table><div style="font-family:'Times New Roman','Times','serif';font-size:8.0pt;margin-bottom:0pt;min-height:1.19em;position:relative;width:100%;"><div style="background-color:#000000;height:1pt;position:relative;top:0.6em;width:25.0%;border:none;margin:0 auto 0 0;"></div></div><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:9pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">(a)</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;">Use of the sublimits for the issuance of letters of credit and swingline loans reduces the availability under the revolving facility.</span></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p> 600000000 500000000 100000000 35000000 0.0644 2026-10-07 0.0050 P1M 0.0100 0 0.0000 0.0150 0.0100 0.0250 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">The following table summarizes our availability under the revolving facility, in thousands:</p><p style="font-family:'Times New Roman','Times','serif';font-size:11pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:10pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:66.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:31.67%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">As of</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.82%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">June 30, 2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31, 2023</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Revolving facility</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 500,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 500,000</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Less: standby letters of credit</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (63,770)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (63,770)</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:66.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Availability under revolving facility</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.46%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.36%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 436,230</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.44%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 436,230</p></td></tr></table> 500000000 500000000 63770000 63770000 436230000 436230000 0.0015 0.00275 0.03625 0.03625 400000000.0 0.03625 0.03625 0.03625 1.01 0.03625 0.04125 0.04125 500000000.0 0.04125 0.04125 0.04125 1.01 0.04125 1.02063 1.01375 1.00688 1.00000 0.04125 0.0050 0.40 0.04125 1.04125 0.60 700000 P5Y 0.028 0.044 0.03625 0.04125 0.30 <p style="font-family:'Times New Roman','Times','serif';font-size:12pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:75.81%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:22.43%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:75.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:22.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">As of June 30, 2024</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:75.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Maximum Net Leverage Ratio</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:22.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;">3.50:1.00</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:75.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Minimum Interest Coverage Ratio</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:22.43%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;">3.00:1.00</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:75.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Compliance as of period end</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:22.43%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;">In Compliance</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:11pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p> 3.50 3.00 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.28;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;">6</b>.<b style="font-weight:bold;white-space:pre-wrap;"> FAIR VALUE MEASUREMENTS</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:11.0pt;text-align:justify;margin:0pt;">The carrying values of cash and cash equivalents, receivables, net, and accounts payable are considered to be representative of their respective fair values due to the short-term nature of these instruments. </p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;min-height:11.0pt;text-align:justify;margin:0pt;"><span style="line-height:1.19;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:11.0pt;text-align:justify;margin:0pt 0pt 6pt 0pt;">Fair value measurements were applied to our long-term debt portfolio.<span style="font-size:12pt;"> </span>We believe the carrying value of our term loan and equipment notes approximate their fair market value primarily due to the fact that the non-performance risk of servicing our debt obligations, as reflected in our business and credit risk profile, has not materially changed since we assumed our debt obligations under the Credit Agreement. In addition, due to the floating-rate nature of our term loan, the market value is not subject to variability solely due to changes in the general level of interest rates as is the case with a fixed-rate debt obligation.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.28;margin:0pt 0pt 8pt 0pt;"><span style="line-height:1.19;margin-bottom:0pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:11.0pt;text-align:justify;margin:0pt 0pt 6pt 0pt;">Based on market trades of our 3.625% Senior Notes and our 4.125% Senior Notes close to June 30, 2024 (Level 1 fair value measurement), we estimate the fair value of each in the table below:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:65.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;margin-bottom:0pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;margin-bottom:0pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;margin-bottom:0pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;margin-bottom:0pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;margin-bottom:0pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;margin-bottom:0pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:17.51%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;margin-bottom:0pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:65.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:33.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">As of June 30, 2024</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:65.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Fair Value</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:17.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Gross Carrying Value</b></p></td></tr><tr><td style="vertical-align:bottom;width:65.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;">3.625% Senior Notes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"> 361,440</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:17.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"> 400,000</p></td></tr><tr><td style="vertical-align:bottom;width:65.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;">4.125% Senior Notes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"> 441,450</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:17.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"> 500,000</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:1pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">​</span></p> 0.03625 0.04125 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;line-height:1.19;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:65.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;margin-bottom:0pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;margin-bottom:0pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;margin-bottom:0pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;margin-bottom:0pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;margin-bottom:0pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;margin-bottom:0pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:17.51%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;margin-bottom:0pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:65.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:33.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">As of June 30, 2024</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:65.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Fair Value</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:17.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Gross Carrying Value</b></p></td></tr><tr><td style="vertical-align:bottom;width:65.31%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;">3.625% Senior Notes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"> 361,440</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:17.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"> 400,000</p></td></tr><tr><td style="vertical-align:bottom;width:65.31%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;">4.125% Senior Notes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"> 441,450</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:17.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"> 500,000</p></td></tr></table> 0.03625 361440000 400000000 0.04125 441450000 500000000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><b style="font-weight:bold;">7.  SEGMENT INFORMATION</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">The following tables set forth our net sales and operating results by segment, in thousands:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:47.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:47.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:51.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended June 30, </b></p></td></tr><tr><td style="vertical-align:bottom;width:47.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td></tr><tr style="height:0pt;visibility:hidden;"><td colspan="13" style="padding:0pt;"></td></tr><tr><td style="vertical-align:bottom;width:47.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Net Sales</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Operating Profit (c)</b></p></td></tr><tr><td style="vertical-align:bottom;width:47.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Operations by segment (a):</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:47.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Installation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 850,983</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 809,055</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 170,718</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 172,278</p></td></tr><tr><td style="vertical-align:bottom;width:47.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Specialty Distribution</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 592,826</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 574,488</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 89,373</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 85,980</p></td></tr><tr><td style="vertical-align:bottom;width:47.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Intercompany eliminations (b)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (78,197)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (66,281)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (12,840)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (11,198)</p></td></tr><tr><td style="vertical-align:bottom;width:47.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 18pt;">Total</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,365,612</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,317,262</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 247,251</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 247,060</p></td></tr><tr><td style="vertical-align:bottom;width:47.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">General corporate expense, net (d)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (36,859)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (9,957)</p></td></tr><tr><td style="vertical-align:bottom;width:47.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 18pt;">Operating profit, as reported</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 210,392</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 237,103</p></td></tr><tr><td style="vertical-align:bottom;width:47.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Other expense, net </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (7,218)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (13,953)</p></td></tr><tr><td style="vertical-align:middle;width:47.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 18pt;">Income before income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 203,174</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 223,150</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:47.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.81%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:47.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:51.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Six Months Ended June 30, </b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:47.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td></tr><tr style="height:0pt;visibility:hidden;"><td colspan="13" style="padding:0pt;"></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:47.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Net Sales</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Operating Profit (c)</b></p></td></tr><tr><td style="vertical-align:bottom;width:47.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Operations by segment (a):</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:47.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Installation </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,649,726</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,576,145</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 327,475</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 319,176</p></td></tr><tr><td style="vertical-align:bottom;width:47.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Specialty Distribution</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,138,620</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,132,862</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 166,951</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 159,313</p></td></tr><tr><td style="vertical-align:bottom;width:47.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Intercompany eliminations (b)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (144,017)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (126,507)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (23,600)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.81%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (21,169)</p></td></tr><tr><td style="vertical-align:bottom;width:47.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 18pt;">Total</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,644,329</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,582,500</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 470,826</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 457,320</p></td></tr><tr><td style="vertical-align:bottom;width:47.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">General corporate expense, net (d)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (45,926)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.81%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (20,786)</p></td></tr><tr><td style="vertical-align:bottom;width:47.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 18pt;">Operating profit, as reported</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 424,900</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 436,534</p></td></tr><tr><td style="vertical-align:bottom;width:47.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Other expense, net </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (14,731)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.81%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (30,069)</p></td></tr><tr><td style="vertical-align:bottom;width:47.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 18pt;">Income before income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 410,169</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.81%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 406,465</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p><div style="font-family:'Times New Roman','Times','serif';font-size:8.0pt;margin-bottom:0pt;min-height:1.19em;position:relative;width:100%;"><div style="background-color:#000000;height:1pt;position:relative;top:0.6em;width:25.0%;border:none;margin:0 auto 0 0;"></div></div><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:9pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">(a)</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;">All of our operations are located primarily in the U.S. and to a lesser extent Canada.</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:9pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">(b)</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;">Intercompany net sales and operating profit resulted from sales made by Specialty Distribution to Installation which are eliminated in consolidation.</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:9pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">(c)</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;">Segment operating profit includes an allocation of general corporate expenses attributable to the operating segments which is based on direct benefit or usage (such as salaries of corporate employees who directly support the segment).</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:9pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">(d)</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;">General corporate expense, net includes expenses not specifically attributable to our segments for functions such as corporate human resources, finance, and legal, including salaries, benefits, and other related costs.  In our second quarter of 2024, we incurred an acquisition termination fee of </span><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;">$23.0</span><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;"> million (see </span><i style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:italic;font-weight:normal;">Note 12. Business </i><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;">Combinations).</span></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 0pt 18pt;"><span style="font-size:9pt;margin-left:0pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 0pt 18pt;"><span style="font-size:9pt;margin-left:0pt;visibility:hidden;">​</span></p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">The following tables set forth our net sales and operating results by segment, in thousands:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:47.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:47.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:51.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended June 30, </b></p></td></tr><tr><td style="vertical-align:bottom;width:47.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td></tr><tr style="height:0pt;visibility:hidden;"><td colspan="13" style="padding:0pt;"></td></tr><tr><td style="vertical-align:bottom;width:47.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Net Sales</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Operating Profit (c)</b></p></td></tr><tr><td style="vertical-align:bottom;width:47.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Operations by segment (a):</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:47.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Installation</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 850,983</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 809,055</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 170,718</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 172,278</p></td></tr><tr><td style="vertical-align:bottom;width:47.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Specialty Distribution</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 592,826</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 574,488</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 89,373</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 85,980</p></td></tr><tr><td style="vertical-align:bottom;width:47.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Intercompany eliminations (b)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (78,197)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (66,281)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (12,840)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (11,198)</p></td></tr><tr><td style="vertical-align:bottom;width:47.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 18pt;">Total</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,365,612</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,317,262</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 247,251</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 247,060</p></td></tr><tr><td style="vertical-align:bottom;width:47.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">General corporate expense, net (d)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (36,859)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (9,957)</p></td></tr><tr><td style="vertical-align:bottom;width:47.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 18pt;">Operating profit, as reported</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 210,392</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 237,103</p></td></tr><tr><td style="vertical-align:bottom;width:47.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Other expense, net </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (7,218)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (13,953)</p></td></tr><tr><td style="vertical-align:middle;width:47.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 18pt;">Income before income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 203,174</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.5%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 223,150</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:47.9%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.81%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:47.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:51.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Six Months Ended June 30, </b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:47.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td></tr><tr style="height:0pt;visibility:hidden;"><td colspan="13" style="padding:0pt;"></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:47.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Net Sales</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:25.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Operating Profit (c)</b></p></td></tr><tr><td style="vertical-align:bottom;width:47.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Operations by segment (a):</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:47.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Installation </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,649,726</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,576,145</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 327,475</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.81%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 319,176</p></td></tr><tr><td style="vertical-align:bottom;width:47.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Specialty Distribution</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,138,620</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,132,862</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 166,951</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 159,313</p></td></tr><tr><td style="vertical-align:bottom;width:47.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 6pt;">Intercompany eliminations (b)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (144,017)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (126,507)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (23,600)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.81%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (21,169)</p></td></tr><tr><td style="vertical-align:bottom;width:47.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 18pt;">Total</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,644,329</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,582,500</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 470,826</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 457,320</p></td></tr><tr><td style="vertical-align:bottom;width:47.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">General corporate expense, net (d)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (45,926)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.81%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (20,786)</p></td></tr><tr><td style="vertical-align:bottom;width:47.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 18pt;">Operating profit, as reported</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 424,900</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.81%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 436,534</p></td></tr><tr><td style="vertical-align:bottom;width:47.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Other expense, net </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (14,731)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.81%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (30,069)</p></td></tr><tr><td style="vertical-align:bottom;width:47.9%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 18pt;">Income before income taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.87%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 410,169</p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.59%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.81%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 406,465</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p><div style="font-family:'Times New Roman','Times','serif';font-size:8.0pt;margin-bottom:0pt;min-height:1.19em;position:relative;width:100%;"><div style="background-color:#000000;height:1pt;position:relative;top:0.6em;width:25.0%;border:none;margin:0 auto 0 0;"></div></div><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:9pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">(a)</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;">All of our operations are located primarily in the U.S. and to a lesser extent Canada.</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:9pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">(b)</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;">Intercompany net sales and operating profit resulted from sales made by Specialty Distribution to Installation which are eliminated in consolidation.</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:9pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">(c)</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;">Segment operating profit includes an allocation of general corporate expenses attributable to the operating segments which is based on direct benefit or usage (such as salaries of corporate employees who directly support the segment).</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:9pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">(d)</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;">General corporate expense, net includes expenses not specifically attributable to our segments for functions such as corporate human resources, finance, and legal, including salaries, benefits, and other related costs.  In our second quarter of 2024, we incurred an acquisition termination fee of </span><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;">$23.0</span><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;"> million (see </span><i style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:italic;font-weight:normal;">Note 12. Business </i><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;">Combinations).</span></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 0pt 18pt;"><span style="font-size:9pt;margin-left:0pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 0pt 18pt;"><span style="font-size:9pt;margin-left:0pt;visibility:hidden;">​</span></p> 850983000 809055000 170718000 172278000 592826000 574488000 89373000 85980000 -78197000 -66281000 -12840000 -11198000 1365612000 1317262000 247251000 247060000 -36859000 -9957000 210392000 237103000 -7218000 -13953000 203174000 223150000 1649726000 1576145000 327475000 319176000 1138620000 1132862000 166951000 159313000 -144017000 -126507000 -23600000 -21169000 2644329000 2582500000 470826000 457320000 -45926000 -20786000 424900000 436534000 -14731000 -30069000 410169000 406465000 23000000.0 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><b style="font-weight:bold;">8.  INCOME TAXES     </b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">Our effective tax rates were 25.8 percent and 26.1 percent for the three and six months ended June 30, 2024, respectively. The effective tax rates for the three and six months ended June 30, 2023, were 26.3 percent and 26.1 percent, respectively. The lower 2024 tax rate for the three months ended June 30, 2024, compared to the three months ended June 30, 2023, was primarily related to state tax adjustments.</p><p style="font-family:'Times New Roman','Times','serif';font-size:11pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:10pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">A tax expense of $2.1 million and $0.2 million related to share-based compensation was recognized in our condensed consolidated statements of operations as a discrete item in income tax expense for the six months ended June 30, 2024 and 2023, respectively. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p> 0.258 0.261 0.263 0.261 2100000 200000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;white-space:pre-wrap;">9. NET INCOME PER SHAR</b><b style="font-weight:bold;">E</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">Basic net income per share is calculated by dividing net income by the number of weighted average shares outstanding during the period, without consideration for common stock equivalents. Diluted net income per share is calculated by adjusting the number of weighted average shares outstanding for the dilutive effect of common stock equivalents outstanding for the period, determined using the treasury stock method.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">Basic and diluted net income per share were computed as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:38.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:38.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;width:29.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended June 30, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> </span></p></td><td colspan="5" style="vertical-align:bottom;width:29.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Six Months Ended June 30, </b></p></td></tr><tr><td style="vertical-align:bottom;width:38.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> </span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:38.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Net income (in thousands)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 150,723</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 164,400</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 303,104</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 300,270</p></td></tr><tr><td style="vertical-align:bottom;width:38.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:38.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Weighted average number of common shares outstanding - basic</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 31,324,833</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 31,599,744</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 31,483,144</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 31,575,337</p></td></tr><tr><td style="vertical-align:bottom;width:38.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:38.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Dilutive effect of common stock equivalents:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:38.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">RSAs with service-based conditions</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 34,973</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 25,052</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 38,083</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 23,848</p></td></tr><tr><td style="vertical-align:bottom;width:38.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">RSAs with market-based conditions</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 61,856</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 20,039</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 61,491</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 22,450</p></td></tr><tr><td style="vertical-align:bottom;width:38.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">RSAs with performance-based conditions</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10,885</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,974</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 17,474</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 15,503</p></td></tr><tr><td style="vertical-align:bottom;width:38.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Stock options</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 91,516</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 84,998</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 93,332</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 85,522</p></td></tr><tr><td style="vertical-align:bottom;width:38.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:38.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Weighted average number of common shares outstanding - diluted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 31,524,063</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 31,731,807</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 31,693,524</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 31,722,660</p></td></tr><tr><td style="vertical-align:bottom;width:38.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:38.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">Basic net income per common share</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4.81</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5.20</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9.63</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9.51</p></td></tr><tr><td style="vertical-align:bottom;width:38.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:38.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">Diluted net income per common share</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4.78</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5.18</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9.56</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9.47</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">The following table summarizes shares excluded from the calculation of diluted net income per share because their effect would have been anti-dilutive:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:37.62%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:37.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;width:28.75%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended June 30, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;"> </p></td><td colspan="5" style="vertical-align:bottom;width:28.75%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Six Months Ended June 30, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;"> </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.57%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;"> </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;"> </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.57%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Anti-dilutive common stock equivalents:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">RSAs with service-based conditions</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5,582</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">RSAs with market-based conditions</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,467</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">RSAs with performance-based conditions</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Stock options</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.96%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 14,801</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.96%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 18,541</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Total anti-dilutive common stock equivalents</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.96%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 14,801</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.96%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 28,590</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:38.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:38.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;width:29.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended June 30, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> </span></p></td><td colspan="5" style="vertical-align:bottom;width:29.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Six Months Ended June 30, </b></p></td></tr><tr><td style="vertical-align:bottom;width:38.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;"><span style="font-family:'Arial','Helvetica','sans-serif';"> </span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:38.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Net income (in thousands)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 150,723</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 164,400</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 303,104</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 300,270</p></td></tr><tr><td style="vertical-align:bottom;width:38.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:38.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Weighted average number of common shares outstanding - basic</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 31,324,833</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 31,599,744</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 31,483,144</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 31,575,337</p></td></tr><tr><td style="vertical-align:bottom;width:38.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:38.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Dilutive effect of common stock equivalents:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:38.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">RSAs with service-based conditions</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 34,973</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 25,052</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 38,083</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 23,848</p></td></tr><tr><td style="vertical-align:bottom;width:38.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">RSAs with market-based conditions</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 61,856</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 20,039</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 61,491</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 22,450</p></td></tr><tr><td style="vertical-align:bottom;width:38.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">RSAs with performance-based conditions</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10,885</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,974</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 17,474</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 15,503</p></td></tr><tr><td style="vertical-align:bottom;width:38.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Stock options</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 91,516</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 84,998</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 93,332</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 85,522</p></td></tr><tr><td style="vertical-align:bottom;width:38.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:38.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Weighted average number of common shares outstanding - diluted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 31,524,063</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 31,731,807</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 31,693,524</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 31,722,660</p></td></tr><tr><td style="vertical-align:bottom;width:38.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:38.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">Basic net income per common share</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4.81</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5.20</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9.63</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9.51</p></td></tr><tr><td style="vertical-align:bottom;width:38.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:38.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">Diluted net income per common share</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.64%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4.78</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5.18</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9.56</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.15%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9.47</p></td></tr></table> 150723000 164400000 303104000 300270000 31324833 31599744 31483144 31575337 34973 25052 38083 23848 61856 20039 61491 22450 10885 1974 17474 15503 91516 84998 93332 85522 31524063 31731807 31693524 31722660 4.81 5.20 9.63 9.51 4.78 5.18 9.56 9.47 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:37.62%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:37.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;width:28.75%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended June 30, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;"> </p></td><td colspan="5" style="vertical-align:bottom;width:28.75%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Six Months Ended June 30, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;"> </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.57%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;"> </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;"> </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.57%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Anti-dilutive common stock equivalents:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">RSAs with service-based conditions</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5,582</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">RSAs with market-based conditions</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,467</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">RSAs with performance-based conditions</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Stock options</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.96%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 14,801</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.96%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 18,541</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:37.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Total anti-dilutive common stock equivalents</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.96%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 14,801</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.94%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.96%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 28,590</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p> 5582 4467 14801 18541 14801 28590 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;white-space:pre-wrap;">10. SHARE-BASED COMPENSATION</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">Eligible employees participate in the 2015 LTIP, which authorizes the Board to grant stock options, stock appreciation rights, restricted shares, restricted share units, performance awards, and dividend equivalents. All grants are made by issuing new shares and no more than 4.0 million shares of common stock may be issued under the 2015 LTIP. As of June 30, 2024, we had 1.7 million shares remaining available for issuance under the 2015 LTIP. </p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">Share-based compensation expense is included in selling, general, and administrative expense. The income tax effect associated with share-based compensation awards is included in income tax expense.  </p><p style="font-family:'Times New Roman','Times','serif';font-size:12pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">The following table presents share-based compensation amounts recognized in our condensed consolidated statements of operations, in thousands: </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:40.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:40.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:28.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended June 30, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:28.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Six Months Ended June 30, </b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:40.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:40.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Share-based compensation expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,632</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 3,751</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9,759</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 6,886</p></td></tr><tr><td style="vertical-align:bottom;width:40.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Income tax expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (98)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (180)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (2,107)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (225)</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">The following table presents a summary of our share-based compensation activity for the six months ended June 30, 2024, in thousands, except per share amounts:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:21.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.12%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.12%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:21.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="4" style="vertical-align:bottom;white-space:nowrap;width:24.75%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">RSAs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="10" style="vertical-align:bottom;white-space:nowrap;width:51.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Stock Options</b></p></td></tr><tr><td style="vertical-align:bottom;width:21.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:10.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Number of Shares</b></p></td><td style="vertical-align:bottom;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">   </b></p></td><td colspan="2" style="vertical-align:bottom;width:12.67%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Weighted Average Grant Date Fair Value Per Share</b></p></td><td style="vertical-align:bottom;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">   </b></p></td><td style="vertical-align:bottom;width:10.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Number of Shares</b></p></td><td style="vertical-align:bottom;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">   </b></p></td><td colspan="2" style="vertical-align:bottom;width:12.67%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Weighted Average Grant Date Fair Value Per Share</b></p></td><td style="vertical-align:bottom;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">   </b></p></td><td colspan="2" style="vertical-align:bottom;width:11.83%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Weighted Average Exercise Price Per Share</b></p></td><td style="vertical-align:bottom;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">   </b></p></td><td colspan="2" style="vertical-align:bottom;width:11.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Aggregate</b><b style="font-weight:bold;"><br/></b><b style="font-weight:bold;">Intrinsic</b><b style="font-weight:bold;"><br/></b><b style="font-weight:bold;">Value</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:21.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Balance December 31, 2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 195.5</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 223.49</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 128.7</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 36.65</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 98.58</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 35,462.8</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:21.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Granted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;"><span style="font-size:9pt;margin-left:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 45.0</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 419.27</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:21.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Converted/Exercised</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;"><span style="font-size:9pt;margin-left:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (52.6)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 229.41</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (16.0)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 82.64</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 201.27</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 3,312.8</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:21.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Forfeited/Expired</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;"><span style="font-size:9pt;margin-left:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (2.7)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 281.40</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:21.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Balance June 30, 2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 185.2</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 268.77</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 112.7</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 30.10</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.45%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 83.97</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 33,930.3</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:21.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td colspan="3" style="vertical-align:bottom;white-space:nowrap;width:32.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Exercisable June 30, 2024 (a)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 112.7</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 30.10</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.45%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 83.97</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 33,930.3</p></td></tr></table><div style="font-family:'Times New Roman','Times','serif';font-size:8.0pt;margin-bottom:0pt;min-height:1.19em;position:relative;width:100%;"><div style="background-color:#000000;height:1pt;position:relative;top:0.6em;width:25.0%;border:none;margin:0 auto 0 0;"></div></div><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:9pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">(a)</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;">The weighted average remaining contractual term for vested stock options is approximately </span><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;">4.7</span><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;"> years.</span></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">We have unrecognized share-based compensation expense related to unvested awards as shown in the following table, dollars in thousands:</p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:59.7%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:17.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:17.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:59.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:38.78%;background:#ffffff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">As of June 30, 2024</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:59.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;width:18.62%;background:#ffffff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Unrecognized Compensation Expense </b><b style="font-weight:bold;"><br/></b><b style="font-weight:bold;">on Unvested Awards</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;width:18.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Weighted Average</b><b style="font-weight:bold;"><br/></b><b style="font-weight:bold;">Remaining</b><b style="font-weight:bold;"><br/></b><b style="font-weight:bold;">Compensation Expense Period</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:59.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">RSAs</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:17.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 27,675</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:17.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;"> 1.1</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:59.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Stock options</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:17.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:17.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:59.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Total unrecognized compensation expense related to unvested awards</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:17.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 27,675</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:17.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">Our RSAs with performance-based conditions are evaluated on a quarterly basis with adjustments to compensation expense based on the likelihood of the performance target being achieved or exceeded. The following table shows the range of payouts and the related expense for our outstanding RSAs with performance-based conditions, in thousands:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:41.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.88%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:41.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:45.86%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Payout Ranges and Related Expense</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:41.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">RSAs with Performance-Based Conditions</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;width:10.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Grant Date Fair Value</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;width:10.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">0%</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;width:10.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">25%</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;width:10.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">100%</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;width:10.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">200%</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:41.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">February 15, 2022</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,978</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 745</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,978</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5,956</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:41.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">February 21, 2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,037</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,009</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,037</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 8,074</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:41.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">February 21, 2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,824</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,206</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,824</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9,648</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">During the first quarter of 2024, RSAs with performance-based conditions that were granted on February 16, 2021 vested based on cumulative three-year achievement of 200%. Total compensation expense recognized over the three-year performance period, net of forfeitures, was $4.4 million.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">The fair value of our RSAs with a market-based condition granted under the 2015 LTIP was determined using a Monte Carlo simulation. The following are key inputs in the Monte Carlo analysis for awards granted in 2024, 2023, and 2022:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:64.77%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.99%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:64.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:64.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Measurement period (years)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-size:9pt;"> 2.86</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-size:9pt;"> 2.86</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-size:9pt;"> 2.87</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:64.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Risk free interest rate</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4.36</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4.42</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1.76</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">%</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:64.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Dividend yield</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 0.00</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 0.00</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 0.00</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">%</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:64.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Estimated fair value of market-based RSAs at grant date</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 503.68</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 270.64</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 298.20</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p> 4000000.0 1700000 <p style="font-family:'Times New Roman','Times','serif';font-size:12pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:10pt;margin-bottom:5pt;margin-top:5pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">The following table presents share-based compensation amounts recognized in our condensed consolidated statements of operations, in thousands: </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:40.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:40.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:28.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended June 30, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:28.01%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Six Months Ended June 30, </b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:40.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:40.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Share-based compensation expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,632</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 3,751</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9,759</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 6,886</p></td></tr><tr><td style="vertical-align:bottom;width:40.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Income tax expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (98)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (180)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (2,107)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (225)</p></td></tr></table> 4632000 3751000 9759000 6886000 98000 180000 2107000 225000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">The following table presents a summary of our share-based compensation activity for the six months ended June 30, 2024, in thousands, except per share amounts:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:21.01%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.12%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.12%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:21.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="4" style="vertical-align:bottom;white-space:nowrap;width:24.75%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">RSAs</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="10" style="vertical-align:bottom;white-space:nowrap;width:51.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Stock Options</b></p></td></tr><tr><td style="vertical-align:bottom;width:21.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:10.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Number of Shares</b></p></td><td style="vertical-align:bottom;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">   </b></p></td><td colspan="2" style="vertical-align:bottom;width:12.67%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Weighted Average Grant Date Fair Value Per Share</b></p></td><td style="vertical-align:bottom;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">   </b></p></td><td style="vertical-align:bottom;width:10.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Number of Shares</b></p></td><td style="vertical-align:bottom;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">   </b></p></td><td colspan="2" style="vertical-align:bottom;width:12.67%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Weighted Average Grant Date Fair Value Per Share</b></p></td><td style="vertical-align:bottom;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">   </b></p></td><td colspan="2" style="vertical-align:bottom;width:11.83%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Weighted Average Exercise Price Per Share</b></p></td><td style="vertical-align:bottom;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;"><b style="font-family:'Arial','Helvetica','sans-serif';font-weight:bold;">   </b></p></td><td colspan="2" style="vertical-align:bottom;width:11.72%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Aggregate</b><b style="font-weight:bold;"><br/></b><b style="font-weight:bold;">Intrinsic</b><b style="font-weight:bold;"><br/></b><b style="font-weight:bold;">Value</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:21.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Balance December 31, 2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 195.5</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 223.49</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 128.7</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 36.65</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 98.58</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 35,462.8</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:21.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Granted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;"><span style="font-size:9pt;margin-left:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 45.0</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 419.27</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:21.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Converted/Exercised</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;"><span style="font-size:9pt;margin-left:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (52.6)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 229.41</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (16.0)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 82.64</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.45%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 201.27</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 3,312.8</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:21.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Forfeited/Expired</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;"><span style="font-size:9pt;margin-left:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt;"> (2.7)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 281.40</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:21.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Balance June 30, 2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 185.2</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 268.77</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 112.7</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 30.10</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.45%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 83.97</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 33,930.3</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:21.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.45%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td colspan="3" style="vertical-align:bottom;white-space:nowrap;width:32.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Exercisable June 30, 2024 (a)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.12%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.52%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 112.7</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.12%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 30.10</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.38%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.45%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 83.97</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.3%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 33,930.3</p></td></tr></table><div style="font-family:'Times New Roman','Times','serif';font-size:8.0pt;margin-bottom:0pt;min-height:1.19em;position:relative;width:100%;"><div style="background-color:#000000;height:1pt;position:relative;top:0.6em;width:25.0%;border:none;margin:0 auto 0 0;"></div></div><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:9pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">(a)</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;">The weighted average remaining contractual term for vested stock options is approximately </span><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;">4.7</span><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;"> years.</span></td></tr></table> 195500 223.49 128700 36.65 98.58 35462800 45000.0 419.27 52600 229.41 16000.0 82.64 201.27 3312800 2700 281.40 185200 268.77 112700 30.10 83.97 33930300 112700 30.10 83.97 33930300 P4Y8M12D <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">We have unrecognized share-based compensation expense related to unvested awards as shown in the following table, dollars in thousands:</p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:59.7%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:17.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:17.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:59.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:38.78%;background:#ffffff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">As of June 30, 2024</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:59.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;width:18.62%;background:#ffffff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Unrecognized Compensation Expense </b><b style="font-weight:bold;"><br/></b><b style="font-weight:bold;">on Unvested Awards</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;width:18.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Weighted Average</b><b style="font-weight:bold;"><br/></b><b style="font-weight:bold;">Remaining</b><b style="font-weight:bold;"><br/></b><b style="font-weight:bold;">Compensation Expense Period</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:59.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">RSAs</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:17.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 27,675</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:17.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;"> 1.1</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:59.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt 0pt 0pt 12pt;">Stock options</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:17.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:17.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:59.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Total unrecognized compensation expense related to unvested awards</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:17.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 27,675</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:17.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr></table> 27675000 P1Y1M6D 27675000 The following table shows the range of payouts and the related expense for our outstanding RSAs with performance-based conditions, in thousands:<p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:41.14%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.88%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:41.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:45.86%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Payout Ranges and Related Expense</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:41.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;">RSAs with Performance-Based Conditions</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;width:10.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Grant Date Fair Value</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;width:10.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">0%</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;width:10.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">25%</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;width:10.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">100%</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;width:10.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">200%</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:41.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">February 15, 2022</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,978</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 745</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,978</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5,956</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:41.14%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">February 21, 2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,037</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,009</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,037</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.88%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 8,074</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:41.14%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">February 21, 2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,824</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> -</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,206</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,824</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.88%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9,648</p></td></tr></table> 0 0 0 0.25 0.25 0.25 1 1 1 2 2 2 2978000 745000 2978000 5956000 4037000 1009000 4037000 8074000 4824000 1206000 4824000 9648000 P3Y 2 P3Y 4400000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:64.77%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.99%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:64.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.08%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:64.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Measurement period (years)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-size:9pt;"> 2.86</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-size:9pt;"> 2.86</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"><span style="font-size:9pt;"> 2.87</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:64.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Risk free interest rate</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4.36</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4.42</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1.76</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">%</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:64.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Dividend yield</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 0.00</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 0.00</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 0.00</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">%</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:64.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Estimated fair value of market-based RSAs at grant date</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 503.68</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 270.64</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 298.20</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p> P2Y10M9D P2Y10M9D P2Y10M13D 0.0436 0.0442 0.0176 0.0000 0.0000 0.0000 503.68 270.64 298.20 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.27;margin:0pt 0pt 8pt 0pt;"><b style="font-weight:bold;white-space:pre-wrap;">11. SHARE REPURCHASE PROGRAM</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">On July 25, 2022, our Board authorized the 2022 Repurchase Program, pursuant to which the Company may purchase up to $200 million of our common stock. During the second quarter of 2024, the Company utilized the remaining amount authorized under the program of $154.4 million. We repurchased a total of 677,657 shares of our common stock under the 2022 Repurchase Program at an average price of $295.13.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="background:#ffffff;">On May 3, 2024, our Board authorized the 2024 Repurchase Program, pursuant to which the Company may purchase up to </span><span style="background:#ffffff;">$1.0</span><span style="background:#ffffff;"> billion of our common stock. Share repurchases may be executed through various means including open market purchases, privately negotiated transactions, accelerated share repurchase transactions, or other available means.  The 2024 Repurchase Program does not obligate the Company to purchase any shares and has no expiration date.  Authorization for the 2024 Repurchase Program may be terminated, increased, or decreased by the Board at its discretion at any time. During the second quarter, the Company began repurchasing shares and, as of June 30, 2024, the Company has </span><span style="background:#ffffff;">$649.2</span><span style="background:#ffffff;"> million remaining under the 2024 Share Repurchase Program.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;background:#ffffff;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="background:#ffffff;">Effective January 1, 2023, the Inflation Reduction Act of 2022 mandated a 1% excise tax on all share repurchases. Excise tax obligations that result from our share repurchases are included in the cost of treasury stock. As of June 30, 2024, the Company had an estimated excise tax liability of </span><span style="background:#ffffff;">$5.2</span><span style="background:#ffffff;"> million for stock repurchases during the three months ended June 30, 2024, which is included in “Accrued liabilities” in our Condensed Consolidated Balance Sheet.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 2pt 0pt;">The following table sets forth our share repurchases under the share repurchases programs in 2024. No shares were repurchased during 2023.</p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:62.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:33.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:62.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:34.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three and Six Months Ended</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:62.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:34.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;"> June 30, 2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:62.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Number of shares repurchased</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:33.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,246,182</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:62.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Share repurchase cost (in thousands) (a)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:33.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 510,443</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">    </p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:2pt 0pt 2pt 0pt;"><span style="font-size:3pt;margin-bottom:0pt;visibility:hidden;">​</span></p><div style="margin-top:2pt;"></div><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:9pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">(a)</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;">Includes </span><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;">$5.2</span><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;"> million of excise taxes</span></td></tr></table><div style="margin-top:2pt;"></div><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p> 200000000 154400000 677657 295.13 1000000000.0 649200000 5200000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 2pt 0pt;">The following table sets forth our share repurchases under the share repurchases programs in 2024. No shares were repurchased during 2023.</p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:62.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:33.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:62.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:center;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:34.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three and Six Months Ended</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:62.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:34.11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0pt;"><b style="font-weight:bold;"> June 30, 2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:62.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Number of shares repurchased</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:33.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,246,182</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:62.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">Share repurchase cost (in thousands) (a)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-size:9pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:33.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0pt 3pt 0pt 0pt;"> 510,443</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.86%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0pt;">    </p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:2pt 0pt 2pt 0pt;"><span style="font-size:3pt;margin-bottom:0pt;visibility:hidden;">​</span></p><div style="margin-top:2pt;"></div><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="font-family:'Times New Roman','Times','serif';font-size:9pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">(a)</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;">Includes </span><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;">$5.2</span><span style="font-family:'Times New Roman','Times','serif';font-size:9pt;font-style:normal;font-weight:normal;"> million of excise taxes</span></td></tr></table><div style="margin-top:2pt;"></div><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p> 0 1246182 510443000 5200000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><b style="font-weight:bold;white-space:pre-wrap;">12. BUSINESS COMBINATIONS</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">Acquiring businesses is a key part of our ongoing strategy to grow our company and expand our offerings. Each acquisition has been accounted for as a business combination under ASC 805, “Business Combinations.” Acquisition related costs were $26.3 million and $26.8 million in the three and six months ended June 30, 2024, respectively, which includes $23.0 million paid in the second quarter in connection with the mutual termination of our previous agreement to acquire SPI. Acquisition related costs were $1.1 million and $2.8 million for the three and six months ended June 30, 2023, respectively. Acquisition related costs are included in selling, general, and administrative expense in our condensed consolidated statements of operations.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">On February 15, 2024, we acquired the assets of the residential and light commercial insulation business Brabble. This installation acquisition enhanced our presence in North Carolina. The purchase price of $5.4 million was funded by cash on hand and we recognized $3.0 million of goodwill in connection with this acquisition.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">On March 1, 2024, we acquired the assets of the residential insulation business Morris Black. This installation acquisition enhanced our presence in Pennsylvania. The purchase price of $3.6 million was funded by cash on hand and we recognized $2.1 million of goodwill in connection with this acquisition.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">On March 1, 2024, we acquired the assets of the customized insulation products and accessories business PCI. This specialty distribution acquisition has a national customer base focused on the domestic pest control industry. The purchase </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">price of $13.8 million was funded by cash on hand and we recognized $5.7 million of goodwill in connection with this acquisition. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="background:#ffffff;">On April 18, 2024, we acquired the assets of the residential and light commercial insulation business Green Space. This installation acquisition enhanced our presence in Missouri and neighboring states. The purchase price of approximately </span><span style="background:#ffffff;">$4.3</span><span style="background:#ffffff;"> million was funded by cash on hand and we recognized </span><span style="background:#ffffff;">$2.6</span><span style="background:#ffffff;"> million of goodwill in connection with this acquisition.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="background:#ffffff;">On May 16, 2024, we acquired the assets of the residential and light commercial insulation business Insulation Works. This installation acquisition enhanced our presence in Arkansas and extended our expertise to the agricultural business. The purchase price of approximately </span><span style="background:#ffffff;">$25.2</span><span style="background:#ffffff;"> million was funded by cash on hand and we recognized </span><span style="background:#ffffff;">$14.3</span><span style="background:#ffffff;"> million of goodwill in connection with this acquisition. </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="background:#ffffff;">On May 31, 2024, we acquired the assets of the residential and light commercial insulation business Texas Insulation. This installation acquisition enhanced our presence in Texas. The purchase price of approximately </span><span style="background:#ffffff;">$35.9</span><span style="background:#ffffff;"> million was funded by cash on hand and we recognized </span><span style="background:#ffffff;">$22.7</span><span style="background:#ffffff;"> million of goodwill in connection with this acquisition. </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">The estimate of acquired customer relationships related to our 2024 acquisitions was $29.2 million and the weighted average useful life is 12 years.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;background:#ffffff;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="background:#ffffff;">As third-party or internal valuations are finalized, certain tax aspects of the foregoing transactions are completed, and customer post-closing reviews are concluded, adjustments may be made to the fair value of assets acquired, and in some cases total purchase price, through the end of each measurement period, generally one year following the applicable acquisition date.  </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">During the six months ended June 30, 2023, we acquired SRI. The purchase price of $45.3 was funded by cash on hand and we recognized goodwill of $23.1 million in connection with this acquisition.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt 0pt 12pt 0pt;">Goodwill to be recognized in connection with acquisitions is attributable to the synergies expected to be realized and improvements in the businesses after the acquisitions. Primarily all of the $50.3 million and $23.1 million of goodwill recorded from acquisitions completed in the six months ended June 30, 2024 and 2023, respectively, is expected to be deductible for income tax purposes.</p> 26300000 26800000 23000000.0 1100000 2800000 5400000 3000000.0 3600000 2100000 13800000 5700000 4300000 2600000 25200000 14300000 35900000 22700000 29200000 P12Y 45300000 23100000 50300000 23100000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:6pt 0pt 0pt 0pt;"><b style="font-weight:bold;">13.  ACCRUED LIABILITIES</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">The following table sets forth the components of accrued liabilities, in thousands:</p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:66.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;margin-bottom:0pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;margin-bottom:0pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;margin-bottom:0pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;margin-bottom:0pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;margin-bottom:0pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;margin-bottom:0pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:14.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;margin-bottom:0pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:66.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;font-weight:bold;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:31.86%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">As of</b></p></td></tr><tr><td style="vertical-align:bottom;width:66.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;font-weight:bold;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">June 30, 2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December 31, 2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:66.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;">Accrued liabilities: </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;font-weight:bold;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;font-weight:bold;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;font-weight:bold;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;font-weight:bold;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:66.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 12pt;">Salaries, wages, and bonus/commissions</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"> 62,862</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"> 67,471</p></td></tr><tr><td style="vertical-align:bottom;width:66.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 12pt;">Insurance liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"> 31,417</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"> 29,920</p></td></tr><tr><td style="vertical-align:bottom;width:66.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 12pt;">Sales, property, and excise taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"> 21,206</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"> 17,002</p></td></tr><tr><td style="vertical-align:bottom;width:66.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 12pt;">Deferred revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"> 15,981</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"> 18,365</p></td></tr><tr><td style="vertical-align:bottom;width:66.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 12pt;">Customer rebates</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"> 12,306</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"> 17,326</p></td></tr><tr><td style="vertical-align:bottom;width:66.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 12pt;">Interest payable on long-term debt</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"> 12,138</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"> 12,139</p></td></tr><tr><td style="vertical-align:bottom;width:66.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 12pt;">Other</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"> 20,843</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"> 24,994</p></td></tr><tr><td style="vertical-align:bottom;width:66.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 12pt;">Total accrued liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.09%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"> 176,753</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"> 187,217</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;">See <i style="font-style:italic;">Note 3 – Revenue Recognition </i>for discussion of our deferred revenue balances.<b style="font-weight:bold;"> </b></p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">The following table sets forth the components of accrued liabilities, in thousands:</p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:66.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;margin-bottom:0pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;margin-bottom:0pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;margin-bottom:0pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;margin-bottom:0pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;margin-bottom:0pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;margin-bottom:0pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:14.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;margin-bottom:0pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:66.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;font-weight:bold;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:31.86%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">As of</b></p></td></tr><tr><td style="vertical-align:bottom;width:66.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;font-weight:bold;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">June 30, 2024</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:center;margin:0.05pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December 31, 2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:66.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;">Accrued liabilities: </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;font-weight:bold;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;font-weight:bold;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;font-weight:bold;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;font-weight:bold;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:right;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:66.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 12pt;">Salaries, wages, and bonus/commissions</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"> 62,862</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"> 67,471</p></td></tr><tr><td style="vertical-align:bottom;width:66.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 12pt;">Insurance liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"> 31,417</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"> 29,920</p></td></tr><tr><td style="vertical-align:bottom;width:66.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 12pt;">Sales, property, and excise taxes</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"> 21,206</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"> 17,002</p></td></tr><tr><td style="vertical-align:bottom;width:66.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 12pt;">Deferred revenue</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"> 15,981</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"> 18,365</p></td></tr><tr><td style="vertical-align:bottom;width:66.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 12pt;">Customer rebates</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"> 12,306</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"> 17,326</p></td></tr><tr><td style="vertical-align:bottom;width:66.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 12pt;">Interest payable on long-term debt</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.09%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"> 12,138</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"> 12,139</p></td></tr><tr><td style="vertical-align:bottom;width:66.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 12pt;">Other</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"> 20,843</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"> 24,994</p></td></tr><tr><td style="vertical-align:bottom;width:66.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 12pt;">Total accrued liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.09%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"> 176,753</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;"><span style="font-size:9pt;margin-bottom:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.47%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;margin:0.05pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:14.03%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;line-height:1.19;text-align:right;margin:0.05pt 3pt 0.05pt 0pt;"> 187,217</p></td></tr></table> 62862000 67471000 31417000 29920000 21206000 17002000 15981000 18365000 12306000 17326000 12138000 12139000 20843000 24994000 176753000 187217000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><b style="font-weight:bold;">14.  OTHER COMMITMENTS AND CONTINGENCIES</b></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="font-weight:bold;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-style:italic;font-weight:bold;">Litigation</span>. We are subject to certain claims, charges, litigation, and other proceedings in the ordinary course of our business, including those arising from or related to contractual matters, intellectual property, personal injury, environmental matters, product liability, product recalls, construction defects, insurance coverage, personnel and employment disputes, antitrust, and other matters, including class actions. We believe we have adequate defenses in these matters, and we do not believe that the ultimate outcome of these matters will have a material adverse effect on us. However, there is no assurance that we will prevail in any of these pending matters, and we could in the future incur judgments, enter into settlements of claims, or revise our expectations regarding the outcome of these matters, which could materially impact our liquidity and our results of operations.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-style:italic;font-weight:bold;">Other Matters</span>. We enter into contracts, which include customary indemnities that are standard for the industries in which we operate. Such indemnities include, among other things, claims against our builder customers for issues relating to our workmanship. We generally exclude from our contracts with builder customers indemnity relating to product quality and warranty claims, as we pass such claims directly to the manufacturers of the products we install or distribute. In conjunction with divestitures and other transactions, we occasionally provide customary indemnities relating to various items including, among others, the enforceability of trademarks, legal and environmental issues, and asset valuations. We evaluate the probability that we may incur liabilities under these customary indemnities and appropriately record an estimated liability when deemed probable.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;">We also maintain indemnification agreements with our directors and officers that may require us to indemnify them against liabilities that arise by reason of their status or service as directors or officers, except as prohibited by applicable law.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;line-height:1.19;text-align:justify;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p> false false false false