<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:dei="http://xbrl.sec.gov/dei/2019-01-31"
  xmlns:fix="http://www.comfortsystemsusa.com/20200427"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:srt="http://fasb.org/srt/2019-01-31"
  xmlns:us-gaap="http://fasb.org/us-gaap/2019-01-31"
  xmlns:xbrldi="http://xbrl.org/2006/xbrldi"
  xmlns:xlink="http://www.w3.org/1999/xlink"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <link:schemaRef xlink:href="fix-20200427.xsd" xlink:type="simple"/>
    <context id="Duration_7_1_2019_To_9_30_2019_Sacf1d0C9E2Ntd8sbwANfg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
        </entity>
        <period>
            <startDate>2019-07-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2018_To_12_31_2018_MAefOarMgkeKE3YpNlc7HA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
        </entity>
        <period>
            <startDate>2018-01-01</startDate>
            <endDate>2018-12-31</endDate>
        </period>
    </context>
    <context id="Duration_3_29_2007_To_3_31_2020_us-gaap_PlanNameAxis_fix_StockRepurchaseProgram2007Member_QkS2SijR5k2QPnWzMkdX8A">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">fix:StockRepurchaseProgram2007Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2007-03-29</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="As_Of_3_31_2020_us-gaap_PlanNameAxis_fix_StockRepurchaseProgram2007Member_Sv8LPl1Miku2yfI0nthjAQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">fix:StockRepurchaseProgram2007Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="As_Of_11_19_2019_us-gaap_PlanNameAxis_fix_StockRepurchaseProgram2007Member_Iq6uPmfvbEqWkQpEl1HaCg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">fix:StockRepurchaseProgram2007Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-11-19</instant>
        </period>
    </context>
    <context id="As_Of_3_29_2007_us-gaap_PlanNameAxis_fix_StockRepurchaseProgram2007Member_-cPh-ODN9E2Ts3RG_xpE4g">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">fix:StockRepurchaseProgram2007Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2007-03-29</instant>
        </period>
    </context>
    <context id="As_Of_3_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember_TVci-EwhUUqzthnmDVZciw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="As_Of_3_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_xoHjEOke6EuwnYV_Hfsx5w">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember_VnEms-moJUSCfIu1rrYCiA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_4aBzPhdn2UGKULm5KWMDZQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_e9KF6s8LeEihVD_OV46A-Q">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="As_Of_3_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember_v3_Hkd-NSkiVjPjPX-MBJw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-03-31</instant>
        </period>
    </context>
    <context id="As_Of_3_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_Qc8_IjW1yEKuteVQ3yjiZw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-03-31</instant>
        </period>
    </context>
    <context id="As_Of_3_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_JbiPlDJczEq4YGW_FpLUgw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-03-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2018_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember_S8OZ3byP8U25oZT-cghiDA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2018_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_W04MF3El0EaWyIuyj7B25w">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2018_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_lnywiinjBU-TvJg4kQvrWQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="As_Of_3_31_2020_srt_RangeAxis_srt_MinimumMember_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_fix_cnst_2019-04-01_hV0wJBc9t0iCkEPN0HgXsg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis">
                    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2019-04-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>
                </xbrldi:typedMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="As_Of_3_31_2020_srt_RangeAxis_srt_MaximumMember_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_fix_cnst_2019-04-01_YxPxe2CwAUKWmbh52T48-Q">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis">
                    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2019-04-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>
                </xbrldi:typedMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="As_Of_3_31_2020_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_fix_cnst_2019-04-01_WstwGY5Y-kq_idqJNdFhKw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis">
                    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>2019-04-01</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain>
                </xbrldi:typedMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="Duration_12_20_2019_To_12_31_2019_us-gaap_DebtInstrumentAxis_fix_AmendedSeniorRevolvingCreditFacilityMember_aG3dtNKf2EKfQ1_OnNOqtA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">fix:AmendedSeniorRevolvingCreditFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-20</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_us-gaap_PlanNameAxis_fix_StockRepurchaseProgram2007Member_Uo7cI1VSUUeoN4X3FembUQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">fix:StockRepurchaseProgram2007Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="As_Of_3_31_2020_us-gaap_BusinessAcquisitionAxis_fix_FiveImmaterialAcquisitionMember_us-gaap_DebtInstrumentAxis_us-gaap_LoansPayableMember_W5kWRoDx8k6d_Kel91Lk2g">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">fix:FiveImmaterialAcquisitionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">us-gaap:LoansPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2019_us-gaap_DebtInstrumentAxis_fix_SubordinateDebtAndPromissoryNoteMember_SQSxMqZA1EKe9AZ99xUeWg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">fix:SubordinateDebtAndPromissoryNoteMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2019_us-gaap_DebtInstrumentAxis_us-gaap_LetterOfCreditMember_jM8o10PfAEKWH-KW7Knw_Q">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">us-gaap:LetterOfCreditMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="As_Of_3_31_2020_srt_RangeAxis_srt_MinimumMember_xbL3zUngb0uEq1MOhhYDCA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="As_Of_3_31_2020_srt_RangeAxis_srt_MaximumMember_cS_kip8l3EePL86y5bnWXg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_fix_MechanicalServicesIndustryMember_42pYSpuy_EKSH907UmmyDg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fix:MechanicalServicesIndustryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_fix_ElectricalServicesIndustryMember_crI6GS-HL02Lpb92Gy9F4g">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fix:ElectricalServicesIndustryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2019_To_3_31_2019_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_fix_MechanicalServicesIndustryMember_Dtp_wzTGwEWnhFvB8-C8MA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fix:MechanicalServicesIndustryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2019_To_3_31_2019_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_fix_ElectricalServicesIndustryMember_S5zs5mEBpECb7U7_T3GfTg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fix:ElectricalServicesIndustryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_us-gaap_StatementBusinessSegmentsAxis_fix_MechanicalServicesIndustryMember_12WpI1Yt5UuwprcjVQ_z4A">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fix:MechanicalServicesIndustryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_us-gaap_StatementBusinessSegmentsAxis_fix_ElectricalServicesIndustryMember_1vhH_EMH90SDXJB6a4Ns4A">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fix:ElectricalServicesIndustryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2019_To_12_31_2019_us-gaap_StatementBusinessSegmentsAxis_fix_MechanicalServicesIndustryMember_pdlTmeMkE0KuNxSvJfx44w">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fix:MechanicalServicesIndustryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2019_To_12_31_2019_us-gaap_StatementBusinessSegmentsAxis_fix_ElectricalServicesIndustryMember_4CX3jc-grkKdd7Hoj-HT-Q">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fix:ElectricalServicesIndustryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="As_Of_3_31_2020_dei_LegalEntityAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_HWvDFf5K_EqUUwDNkjYHbw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">fix:WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="As_Of_3_31_2020_us-gaap_StatementBusinessSegmentsAxis_fix_MechanicalServicesIndustryMember_HTmtp9ZmGU-3xNJOeczKUg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fix:MechanicalServicesIndustryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="As_Of_3_31_2020_us-gaap_StatementBusinessSegmentsAxis_fix_ElectricalServicesIndustryMember_EpTmwGmQHkCj6uzb9eVk7w">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fix:ElectricalServicesIndustryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2019_us-gaap_StatementBusinessSegmentsAxis_fix_MechanicalServicesIndustryMember_9X4qTxC2xUWNkwrJ6wg8ZQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fix:MechanicalServicesIndustryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2019_us-gaap_StatementBusinessSegmentsAxis_fix_ElectricalServicesIndustryMember_R8ovLt1yk0SesoE0c36-NA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fix:ElectricalServicesIndustryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2018_us-gaap_StatementBusinessSegmentsAxis_fix_MechanicalServicesIndustryMember_8Ab63lN8n0-n6m-5gLgHjg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fix:MechanicalServicesIndustryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="As_Of_3_31_2020_us-gaap_FairValueByLiabilityClassAxis_fix_ContingentConsiderationObligationsMember_MGStRyD8z0qKcYexJ-46ZA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByLiabilityClassAxis">fix:ContingentConsiderationObligationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2019_us-gaap_FairValueByLiabilityClassAxis_fix_ContingentConsiderationObligationsMember_cvRtKBwCYk6ywrHt8o3heg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByLiabilityClassAxis">fix:ContingentConsiderationObligationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_us-gaap_FairValueByLiabilityClassAxis_fix_ContingentConsiderationObligationsMember_ABl6AHxTAUSKbCRzXVEEjA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByLiabilityClassAxis">fix:ContingentConsiderationObligationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_xWQrDQGIOUqWl40CddVaFQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2019_To_3_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_8pcXqADE2EmqT36eiYHy5g">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-03-31</endDate>
        </period>
    </context>
    <context id="As_Of_11_30_2021_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_InterestRateSwapMember_us-gaap_SubsequentEventTypeAxis_us-gaap_SubsequentEventMember_v-jNcOSFLUGA3_fOrF7wbw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-11-30</instant>
        </period>
    </context>
    <context id="As_Of_4_1_2020_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_InterestRateSwapMember_us-gaap_SubsequentEventTypeAxis_us-gaap_SubsequentEventMember_D1Rm_hzWU0umekkHb1Fq7Q">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:InterestRateSwapMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-04-01</instant>
        </period>
    </context>
    <context id="As_Of_3_31_2020_srt_RangeAxis_srt_MinimumMember_us-gaap_BusinessAcquisitionAxis_fix_FiveImmaterialAcquisitionMember_us-gaap_DebtInstrumentAxis_us-gaap_LoansPayableMember_-lxl9owNREORUPf88RBPpw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">fix:FiveImmaterialAcquisitionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">us-gaap:LoansPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="As_Of_3_31_2020_srt_RangeAxis_srt_MaximumMember_us-gaap_BusinessAcquisitionAxis_fix_FiveImmaterialAcquisitionMember_us-gaap_DebtInstrumentAxis_us-gaap_LoansPayableMember_aIvAIAVdiUy7mT4fIlm7Gg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">fix:FiveImmaterialAcquisitionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">us-gaap:LoansPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="As_Of_3_31_2020_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_us-gaap_DebtInstrumentAxis_us-gaap_LoansPayableMember_r9A6DM2BiUipEdZLhw977g">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">fix:WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">us-gaap:LoansPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="As_Of_3_31_2020_us-gaap_BusinessAcquisitionAxis_fix_ElectricalContractorNorthCarolinaMember_us-gaap_DebtInstrumentAxis_us-gaap_LoansPayableMember_1Lljb1sRk026YzVzcbAf6Q">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">fix:ElectricalContractorNorthCarolinaMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">us-gaap:LoansPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="As_Of_3_31_2020_us-gaap_BusinessAcquisitionAxis_fix_BchHoldingsIncMember_us-gaap_DebtInstrumentAxis_us-gaap_LoansPayableMember_bRXUDwmR5E6ns4ZHMiudjw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">fix:BchHoldingsIncMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">us-gaap:LoansPayableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="As_Of_3_31_2020_us-gaap_DebtInstrumentAxis_fix_TermLoanMember_KE-m-eiSwUqZA1NO6AYrtQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">fix:TermLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2019_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_bNyAXSAlZEavI9xwqeeYlA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2019_us-gaap_DebtInstrumentAxis_fix_TermLoanMember_BrIsakRke0q2qV2lZetOHg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">fix:TermLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_19_2019_us-gaap_DebtInstrumentAxis_fix_AmendedSeniorRevolvingCreditFacilityMember_NOfhy_mRjUebfmvykajoCA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">fix:AmendedSeniorRevolvingCreditFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-19</instant>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_fix_DebtCovenantRatioAxis_fix_DebtCovenantRatioRangeTwoMember_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_EurodollarMember_3zZ7xMXMY0-2A1VwfWB04g">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:EurodollarMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="fix:DebtCovenantRatioAxis">fix:DebtCovenantRatioRangeTwoMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_fix_DebtCovenantRatioAxis_fix_DebtCovenantRatioRangeTwoMember_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_BaseRateMember_EBmqM5h0hUaknF_CeNNDTw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="fix:DebtCovenantRatioAxis">fix:DebtCovenantRatioRangeTwoMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_fix_DebtCovenantRatioAxis_fix_DebtCovenantRatioRangeThreeMember_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_EurodollarMember_wPezgpMrSUm9hk8xhoqHLA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:EurodollarMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="fix:DebtCovenantRatioAxis">fix:DebtCovenantRatioRangeThreeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_fix_DebtCovenantRatioAxis_fix_DebtCovenantRatioRangeThreeMember_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_BaseRateMember_JlaNi7DdNEqlv9VHSasSZQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="fix:DebtCovenantRatioAxis">fix:DebtCovenantRatioRangeThreeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_fix_DebtCovenantRatioAxis_fix_DebtCovenantRatioRangeOneMember_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_EurodollarMember_oHimJ3ER-0KOm3-fViyVpA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:EurodollarMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="fix:DebtCovenantRatioAxis">fix:DebtCovenantRatioRangeOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_fix_DebtCovenantRatioAxis_fix_DebtCovenantRatioRangeOneMember_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_BaseRateMember_KkjYWfVoAU-Ac9n7Ko3ghQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="fix:DebtCovenantRatioAxis">fix:DebtCovenantRatioRangeOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_fix_DebtCovenantRatioAxis_fix_DebtCovenantRatioRangeFourMember_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_EurodollarMember_40uDpPdyVkOv6mY5pchHtw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:EurodollarMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="fix:DebtCovenantRatioAxis">fix:DebtCovenantRatioRangeFourMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_fix_DebtCovenantRatioAxis_fix_DebtCovenantRatioRangeFourMember_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_BaseRateMember_Lu0G_yjauEqkbrNf13njzQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="fix:DebtCovenantRatioAxis">fix:DebtCovenantRatioRangeFourMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="As_Of_3_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_MPpSJWfYi0y2XeYBTwuATg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="As_Of_1_1_2020_srt_RestatementAxis_srt_RestatementAdjustmentMember_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201613Member_whrOsgontU-FeCWeA-9vMw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RestatementAdjustmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">us-gaap:AccountingStandardsUpdate201613Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-01-01</instant>
        </period>
    </context>
    <context id="Duration_1_1_2019_To_3_31_2019_us-gaap_InitialApplicationPeriodCumulativeEffectTransitionAxis_us-gaap_CalculatedUnderRevenueGuidanceInEffectBeforeTopic606Member_b1IpMxaSUka4k9KGHHuM3g">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:InitialApplicationPeriodCumulativeEffectTransitionAxis">us-gaap:CalculatedUnderRevenueGuidanceInEffectBeforeTopic606Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-03-31</endDate>
        </period>
    </context>
    <context id="As_Of_3_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Xs-ggSHckEuJaBNyAkaAXw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_nTMtDWgVu025geeG8JwNvA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="As_Of_3_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_O8uE48Dga0GbQS4sS7OSKA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-03-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2018_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_jS_jeq_euEOHwQX6WTIu6Q">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="As_Of_3_31_2020_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember_gkKG-iM6bU6h4FWho5Tsag">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2019_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember_vwdO0OB8Gk2avABteoKzKw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="As_Of_3_31_2019_Da6SU3sKbkaqGenTlya3Zw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
        </entity>
        <period>
            <instant>2019-03-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2018_kVfJ9VO0mku_31JRqsvE7Q">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="As_Of_3_31_2020_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel1Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember_i42WQjTXpE6KyjHnzPLMNg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2019_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel1Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember_Kew9JJfYiU2y5_DRdboGiQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="As_Of_4_1_2019_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember_HkEZoMESiky6YE8d_11uvQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">fix:WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-04-01</instant>
        </period>
    </context>
    <context id="As_Of_4_1_2019_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_OrderOrProductionBacklogMember_24tK87nk3Ee75Z5HnnEvWA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">fix:WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OrderOrProductionBacklogMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-04-01</instant>
        </period>
    </context>
    <context id="As_Of_4_1_2019_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember_2VQz3OxzEkeyv4vcT_FUcQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">fix:WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-04-01</instant>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_us-gaap_BusinessAcquisitionAxis_fix_StarrMember_Hti2NmMkT0CUklxHCs3gJg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">fix:StarrMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_srt_RangeAxis_srt_MaximumMember_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_fix_EmployeeAndNonemployeeStockOptionMember_3GGRUzf8IkSrTigsZC86cA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">fix:EmployeeAndNonemployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2019_To_3_31_2019_srt_RangeAxis_srt_MaximumMember_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_fix_EmployeeAndNonemployeeStockOptionMember_HURh1lTisES4icDeODvwsw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">fix:EmployeeAndNonemployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_1_1_2020_srt_RestatementAxis_srt_RestatementAdjustmentMember_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201613Member_0DXS7brEcEepGp1b1XHdZQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RestatementAdjustmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AdjustmentsForNewAccountingPronouncementsAxis">us-gaap:AccountingStandardsUpdate201613Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-01-01</endDate>
        </period>
    </context>
    <context id="As_Of_3_31_2020_srt_ProductOrServiceAxis_us-gaap_ProductAndServiceOtherMember_UbF5sHhva0aUkvHmGjx5bA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductAndServiceOtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="As_Of_3_31_2020_srt_ProductOrServiceAxis_fix_ServicesActivityMember_IAnI8OIlE0Oc1_d2tANuhw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fix:ServicesActivityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="As_Of_3_31_2020_srt_ProductOrServiceAxis_fix_ConstructionActivitiesMember_OH02noIrqkybLCmrRCGKUQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fix:ConstructionActivitiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2019_srt_ProductOrServiceAxis_us-gaap_ProductAndServiceOtherMember__Dzyf-SG00WEGnAxSvYaGQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductAndServiceOtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2019_srt_ProductOrServiceAxis_fix_ServicesActivityMember_e5ZZPpP3_0Gr862TJ62DIQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fix:ServicesActivityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2019_srt_ProductOrServiceAxis_fix_ConstructionActivitiesMember_tVDDavcEKUW680eK4kA3cg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fix:ConstructionActivitiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="Duration_4_1_2019_To_4_1_2019_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember_wsie2p5VR0a-mQ605k-F-w">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">fix:WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-04-01</startDate>
            <endDate>2019-04-01</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2019_To_4_1_2019_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_OrderOrProductionBacklogMember_79z28o2CJEW4PZZ1hWmHNw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">fix:WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OrderOrProductionBacklogMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-04-01</startDate>
            <endDate>2019-04-01</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2019_To_4_1_2019_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember_7oImh-t100uySXU28wBmPA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">fix:WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-04-01</startDate>
            <endDate>2019-04-01</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_srt_ProductOrServiceAxis_fix_ServicesActivityMember_nXLENef_9USAhg4HBp6ifg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fix:ServicesActivityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_srt_RangeAxis_srt_MaximumMember_2YspZCznYUWCTx7PnKPCxA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_bo2rDcyZU06i40vVTlBT7g">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2019_To_3_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_oPT9yjgPG0eI15q8MdEUFw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember_lTCgV7MZS0CYhtdSMxAc5Q">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2019_To_3_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember_lrje_piWIUaPLBdc1eRDyg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-03-31</endDate>
        </period>
    </context>
    <context id="Duration_12_20_2019_To_12_20_2019_us-gaap_DebtInstrumentAxis_fix_AmendedSeniorRevolvingCreditFacilityMember_1xR4l-bWJkyz_AhZLCcOkw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">fix:AmendedSeniorRevolvingCreditFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-20</startDate>
            <endDate>2019-12-20</endDate>
        </period>
    </context>
    <context id="Duration_12_19_2019_To_12_19_2019_us-gaap_DebtInstrumentAxis_fix_AmendedSeniorRevolvingCreditFacilityMember_Myj6LWuIqE6ip0xT-86XXg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">fix:AmendedSeniorRevolvingCreditFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-19</startDate>
            <endDate>2019-12-19</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_srt_ProductOrServiceAxis_us-gaap_ProductAndServiceOtherMember_f0cP5U3JOUy4PQ-xH8TnnA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductAndServiceOtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_srt_MajorCustomersAxis_us-gaap_OtherCustomerMember__YHMM4PKfUqr3SVjchV0BQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">us-gaap:OtherCustomerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_us-gaap_StatementBusinessSegmentsAxis_fix_ServiceProjectsMember_yY70glVyEUyDDxXRh9wq3g">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fix:ServiceProjectsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_us-gaap_StatementBusinessSegmentsAxis_fix_ServiceCallsMaintenanceAndMonitoringMember_Aptz5T5zyE-QZf_zEYJ49w">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fix:ServiceCallsMaintenanceAndMonitoringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_srt_MajorCustomersAxis_fix_RetailRestaurantsAndEntertainmentMember_4kd_TTQBZUCvUS3LQ-g8IQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">fix:RetailRestaurantsAndEntertainmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_srt_MajorCustomersAxis_fix_OfficeBuildingCustomerMember_zufzD7XdekaigP0Rwi4jzw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">fix:OfficeBuildingCustomerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_us-gaap_StatementBusinessSegmentsAxis_fix_NewConstructionMember_vYBtU9R2bk2Vx6VGxlDRrQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fix:NewConstructionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_srt_MajorCustomersAxis_fix_MultiFamilyAndResidentialMember_WBi-o7KgikG-S5nxoSC8ew">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">fix:MultiFamilyAndResidentialMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_srt_ProductOrServiceAxis_fix_MechanicalServicesMember_UNZ9WqtO8kmCNzgmis_kHw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fix:MechanicalServicesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_srt_MajorCustomersAxis_fix_IndustrialPropertyCustomerMember_9Lejv0ygm0KWJkFjdQdMfQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">fix:IndustrialPropertyCustomerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_srt_MajorCustomersAxis_fix_HealthcareSectorCustomerMember_eWlv5X6F6EOGj-jS0vK_7g">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">fix:HealthcareSectorCustomerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_srt_MajorCustomersAxis_fix_GovernmentCustomerMember_GHEUDp2A4Ey-kvFvKsEkPw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">fix:GovernmentCustomerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_us-gaap_StatementBusinessSegmentsAxis_fix_ExistingBuildingConstructionMember_RAlfI7R0YECJqpBzUbSoWA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fix:ExistingBuildingConstructionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_srt_ProductOrServiceAxis_fix_ElectricalServicesMember_lWfQQ7DHLUerGVUsb2dxhA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fix:ElectricalServicesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_srt_MajorCustomersAxis_fix_EducationMember_RTxhzVrlYkSTCp8TG4taOw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">fix:EducationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2019_To_3_31_2019_srt_MajorCustomersAxis_us-gaap_OtherCustomerMember__zVy1dkoL0Wv9-6W9HLXvw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">us-gaap:OtherCustomerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2019_To_3_31_2019_us-gaap_StatementBusinessSegmentsAxis_fix_ServiceProjectsMember_UMzmkthBlUG73CeiCbgEwQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fix:ServiceProjectsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2019_To_3_31_2019_us-gaap_StatementBusinessSegmentsAxis_fix_ServiceCallsMaintenanceAndMonitoringMember_I1bFFY7GaEKWV4j11ODYJw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fix:ServiceCallsMaintenanceAndMonitoringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2019_To_3_31_2019_srt_MajorCustomersAxis_fix_RetailRestaurantsAndEntertainmentMember_Cs5zY083cUe01Xu3t9r3BQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">fix:RetailRestaurantsAndEntertainmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2019_To_3_31_2019_srt_MajorCustomersAxis_fix_OfficeBuildingCustomerMember_g0t7_CJ76USTTP_hFNxKag">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">fix:OfficeBuildingCustomerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2019_To_3_31_2019_us-gaap_StatementBusinessSegmentsAxis_fix_NewConstructionMember_9ohFulvOKUqeUDKGsKwifQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fix:NewConstructionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2019_To_3_31_2019_srt_MajorCustomersAxis_fix_MultiFamilyAndResidentialMember_-Ag0udIJfE6aers8bpBHIg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">fix:MultiFamilyAndResidentialMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2019_To_3_31_2019_srt_ProductOrServiceAxis_fix_MechanicalServicesMember_qg0cB-QyA0-3cqya6547Ww">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fix:MechanicalServicesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2019_To_3_31_2019_srt_MajorCustomersAxis_fix_IndustrialPropertyCustomerMember_xrU_zKo6EkaSiM4yCfm_OQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">fix:IndustrialPropertyCustomerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2019_To_3_31_2019_srt_MajorCustomersAxis_fix_HealthcareSectorCustomerMember_aAYku7RgpEu0vZ0orcIn8A">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">fix:HealthcareSectorCustomerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2019_To_3_31_2019_srt_MajorCustomersAxis_fix_GovernmentCustomerMember_AkHCssyKxUiD1UK9HaQEEg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">fix:GovernmentCustomerMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2019_To_3_31_2019_us-gaap_StatementBusinessSegmentsAxis_fix_ExistingBuildingConstructionMember_TaSZTS5FyUK-LxJkJ-C2ZQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">fix:ExistingBuildingConstructionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2019_To_3_31_2019_srt_ProductOrServiceAxis_fix_ElectricalServicesMember_dqTTpjZ_wkWP8CuO8K0SgA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fix:ElectricalServicesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2019_To_3_31_2019_srt_MajorCustomersAxis_fix_EducationMember_6HHGAQVx9EC-fUp4kxgg7w">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">fix:EducationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-03-31</endDate>
        </period>
    </context>
    <context id="Duration_10_1_2019_To_12_31_2019_srt_RangeAxis_srt_MinimumMember_kD228fxd5EWY3ScBcEeoNg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-10-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="Duration_10_1_2019_To_12_31_2019_dei_LegalEntityAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_7Y6pcVHpxUWw8V1PumdwYQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">fix:WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-10-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_dei_LegalEntityAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_VjcvyOVwMEeZ2eOdHMd38A">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">fix:WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_srt_RangeAxis_srt_MinimumMember_us-gaap_LossContingenciesByNatureOfContingencyAxis_us-gaap_SuretyBondMember_YAUoQXVmlkajB0mIN6a4jg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LossContingenciesByNatureOfContingencyAxis">us-gaap:SuretyBondMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_srt_RangeAxis_srt_MaximumMember_us-gaap_LossContingenciesByNatureOfContingencyAxis_us-gaap_SuretyBondMember_Zu1dBMl8ykOmqwv31gSVvg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LossContingenciesByNatureOfContingencyAxis">us-gaap:SuretyBondMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="Duration_12_20_2019_To_12_31_2019_us-gaap_DebtInstrumentAxis_fix_TermLoanMember_NElvW6Ezd02ePJyBXHtr7g">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">fix:TermLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-20</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="Duration_12_20_2019_To_12_31_2019_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_8p7nmf53vEKSw7cUTmPneQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-12-20</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="Duration_10_1_2019_To_12_31_2019_6zGG0uzILk6yoW7Ho_C8eA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
        </entity>
        <period>
            <startDate>2019-10-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_srt_RangeAxis_srt_MinimumMember_s1XmG36v3EiCuksGz73-eA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="As_Of_12_31_2019_us-gaap_DebtInstrumentAxis_fix_AmendedSeniorRevolvingCreditFacilityMember_ZMK3qCKhz0epZrdQfA9GWg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">fix:AmendedSeniorRevolvingCreditFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_srt_RangeAxis_srt_MinimumMember_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_q_ItQzSqNkG7fdN7JQMPog">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_srt_RangeAxis_srt_MaximumMember_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_Pu01146Krky7z31jyzL9ZQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="As_Of_3_31_2020_srt_RangeAxis_srt_MinimumMember_srt_StatementScenarioAxis_fix_ScenarioCovenantRequirementMember_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_zOhM2wZ5AEGxrCWqCls62w">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">fix:ScenarioCovenantRequirementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="As_Of_3_31_2020_srt_RangeAxis_srt_MaximumMember_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_a8m1kh76wE6DrWvHOu35EA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="As_Of_3_31_2020_fix_DebtCovenantEffectiveDateAxis_fix_ThroughMaturityMember_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_Fjs6Wm3jXUSOWUu6sauO3Q">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="fix:DebtCovenantEffectiveDateAxis">fix:ThroughMaturityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="As_Of_3_31_2020_srt_RangeAxis_srt_MinimumMember_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_IMotodu08ECA4IqoK_p6Qg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="As_Of_3_31_2020_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_lds0aPig7UOFzewjJIcSZA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_YMNqvhAqpE2hLaFjlBcXkA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="As_Of_3_31_2020_us-gaap_DebtInstrumentAxis_fix_SubordinateDebtAndPromissoryNoteMember_b-xJfIzcM0SD3FWM_8Mwyg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">fix:SubordinateDebtAndPromissoryNoteMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="Duration_1_1_2019_To_12_31_2019_mifjwy6BiUKM2xZgEf4c5Q">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-03-31</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2019_To_4_1_2019_srt_RangeAxis_srt_MinimumMember_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_V-Jpmxlbs0CHefxpJpkEKg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">fix:WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-04-01</startDate>
            <endDate>2019-04-01</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2019_To_4_1_2019_srt_RangeAxis_srt_MaximumMember_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_te-2QeeTJEa1Ox-oosByfQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">fix:WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-04-01</startDate>
            <endDate>2019-04-01</endDate>
        </period>
    </context>
    <context id="As_Of_4_1_2019_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_BUDA2tX0_UWbws34Aj4cwQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">fix:WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-04-01</instant>
        </period>
    </context>
    <context id="Duration_4_1_2019_To_4_1_2019_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_MyvZYHpptUOXiRIlnCj8xw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">fix:WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-04-01</startDate>
            <endDate>2019-04-01</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2020_To_12_31_2020_srt_RangeAxis_srt_MinimumMember_us-gaap_BusinessAcquisitionAxis_fix_TasEnergyMember_us-gaap_SubsequentEventTypeAxis_us-gaap_SubsequentEventMember_ervGwZ2FAE2O97ACCSTHJQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">fix:TasEnergyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-04-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Duration_4_1_2020_To_12_31_2020_srt_RangeAxis_srt_MaximumMember_us-gaap_BusinessAcquisitionAxis_fix_TasEnergyMember_us-gaap_SubsequentEventTypeAxis_us-gaap_SubsequentEventMember_4MUmg8PYNku1_-gCYoEbgw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">fix:TasEnergyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-04-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="As_Of_3_31_2020_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember_p5XNKbiVxUe88z-at-e_qQ">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="As_Of_3_31_2020_us-gaap_FairValueByMeasurementBasisAxis_us-gaap_EstimateOfFairValueFairValueDisclosureMember_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember_Ve-j_HFhvEy4HBtYHtMFKg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementBasisAxis">us-gaap:EstimateOfFairValueFairValueDisclosureMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2019_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember_PmPQllGlqk2MTa6ScZAAnw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="As_Of_12_31_2019_us-gaap_FairValueByMeasurementBasisAxis_us-gaap_EstimateOfFairValueFairValueDisclosureMember_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember_dykmqKRxNEeDtunFtnHYLw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementBasisAxis">us-gaap:EstimateOfFairValueFairValueDisclosureMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_srt_ProductOrServiceAxis_fix_ConstructionActivitiesMember_cwSX7TuvZU2UURMcDRwdSg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fix:ConstructionActivitiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="As_Of_4_22_2020_PrYX9ztk-kuJ7HbPWJrrZg">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
        </entity>
        <period>
            <instant>2020-04-22</instant>
        </period>
    </context>
    <context id="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <unit id="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">
        <measure>shares</measure>
    </unit>
    <unit id="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">
        <measure>pure</measure>
    </unit>
    <unit id="Unit_Standard_item_j1HsmHPAlEajrX_a6hBAIA">
        <measure>fix:item</measure>
    </unit>
    <unit id="Unit_Standard_Option_VO49u7wtREaLKaISqOOi2A">
        <measure>fix:Option</measure>
    </unit>
    <unit id="Unit_Divide_USD_shares_Pr27T94MxEaOLB-gD6gNcw">
        <divide>
            <unitNumerator>
                <measure>iso4217:USD</measure>
            </unitNumerator>
            <unitDenominator>
                <measure>shares</measure>
            </unitDenominator>
        </divide>
    </unit>
    <unit id="Unit_Standard_segment_Y0pRJOiqTkW3aw1y5jxc_A">
        <measure>fix:segment</measure>
    </unit>
    <us-gaap:CommitmentsAndContingencies
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      id="Hidden_UOzm551kdE6SSEpbD79clQ"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA"
      xsi:nil="true"/>
    <us-gaap:CommitmentsAndContingencies
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      id="Hidden_f06MjHlQVUOx4lCuMZ2mpw"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA"
      xsi:nil="true"/>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="INF"
      id="Hidden_0qNllCt5RUqyE7_BrtM86A"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="INF"
      id="Hidden_Tt3wTPLNtESMhxduYactGA"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">0</us-gaap:PreferredStockSharesOutstanding>
    <dei:EntityCentralIndexKey
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tc_EaIjoVFCdU2jqovA1rOKdA_2_1">0001035983</dei:EntityCentralIndexKey>
    <dei:CurrentFiscalYearEndDate
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tc_f4BYFSFtxUCI5wZsnonLMg_3_1">--12-31</dei:CurrentFiscalYearEndDate>
    <dei:DocumentFiscalYearFocus
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tc_n5Y8jSGqY0aJ4J_RySUYDg_4_1">2020</dei:DocumentFiscalYearFocus>
    <dei:DocumentFiscalPeriodFocus
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tc_1UbwYvedrUyCKyQkpXVCQA_5_1">Q1</dei:DocumentFiscalPeriodFocus>
    <dei:AmendmentFlag
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tc_jGy-YNPPrUmveUFBg3JSUQ_7_1">false</dei:AmendmentFlag>
    <us-gaap:PreferredStockValue
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      id="Hidden_BjRu0zer8UqWc91GyuOGOQ"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA"
      xsi:nil="true"/>
    <us-gaap:PreferredStockValue
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      id="Hidden_SZIpX8R5w0WxMXEMFa6dkA"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA"
      xsi:nil="true"/>
    <us-gaap:LesseeOperatingLeaseTermOfContract
      contextRef="As_Of_3_31_2020_srt_RangeAxis_srt_MinimumMember_xbL3zUngb0uEq1MOhhYDCA"
      id="Hidden_-nS0JbAjwkm6CU1gvSV6wA">P3Y</us-gaap:LesseeOperatingLeaseTermOfContract>
    <us-gaap:LesseeOperatingLeaseExistenceOfOptionToExtend
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Hidden_HkW9XKKmCkidnlpjk4bKxw">true</us-gaap:LesseeOperatingLeaseExistenceOfOptionToExtend>
    <us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      id="Hidden_cHMJT5Ao6U2gVPc4lPA8KA">us-gaap:OtherLiabilitiesCurrent</us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList>
    <dei:DocumentType
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Narr_1o9zcfWurkaH7UnIjJQKsg">10-Q</dei:DocumentType>
    <dei:DocumentQuarterlyReport
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tc_htN5pekaMUiHp-P5jiWTqQ_2_0">true</dei:DocumentQuarterlyReport>
    <dei:DocumentPeriodEndDate
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Narr__AHw3J4kbkS5XwXF4DZZQQ">2020-03-31</dei:DocumentPeriodEndDate>
    <dei:DocumentTransitionReport
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tc_5-P6lkYuwkaLZB4vHRFJhg_5_0">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Narr_dltsHiArhUqbO1O6YXLtAg">1-13011</dei:EntityFileNumber>
    <dei:EntityRegistrantName
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Narr_YVs-zEYjyU6AcYJ7VkqsJQ">COMFORT SYSTEMS USA,&#160;INC.</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Narr_BH3e5T7ZYEK4AI7p5ZApxQ">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Narr_7F6DSOmyGEqYp7lUvLSPUQ">76-0526487</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Narr_tlyCK95Dj0S9GFW01NJDZg">675 Bering Drive</dei:EntityAddressAddressLine1>
    <dei:EntityAddressAddressLine2
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Narr_4KRZHL7qiUW0QCf5o_zCdw">Suite&#160;400</dei:EntityAddressAddressLine2>
    <dei:EntityAddressCityOrTown
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Narr_CqM--spfm0mKFW9pQxdq4Q">Houston</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Narr_7T8JFhMHpUmKzsUxspQYcA">TX</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Narr_vTRezl0GH0isTUFr8bXDpA">77057</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Narr_aLEPF3SiPUGjzkBoFZ9mFQ">713</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Narr_pI7NaRI1eUSUdphUylOjiQ">830-9600</dei:LocalPhoneNumber>
    <dei:Security12bTitle
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tc_2hRB25_PM0y0a0s2HpRXwA_2_0">Common Stock, $0.01 par value</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tc_oayjihugakCBh-Vl7onFIQ_2_1">FIX</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tc_jPzDsTdRHEmi2XHKPelyiw_2_2">NYSE</dei:SecurityExchangeName>
    <dei:EntityCurrentReportingStatus
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Narr_9Po4qv_JlEaUPCXG76iE8w">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Narr_PME0OM1SDUiBDb3iGcojQw">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Narr_6e5LPcUtREiVfS820Z5CdA">Large Accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Narr_VdgmTHd3JEe6wYkiYrFe-w">false</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Narr_Skf-tg6DgUKJhXraTklVHg">false</dei:EntityEmergingGrowthCompany>
    <dei:EntityShellCompany
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Narr_p8-mxTH0dk-NNSZfhySyDw">false</dei:EntityShellCompany>
    <dei:EntityCommonStockSharesOutstanding
      contextRef="As_Of_4_22_2020_PrYX9ztk-kuJ7HbPWJrrZg"
      decimals="INF"
      id="Narr_B0Hw4qBYP0uKuVwh9wVzIQ"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">36471001</dei:EntityCommonStockSharesOutstanding>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_9S-km2bTC0KwkZpvhbZ0zg_6_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">133264000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_s3lgAyCu60yL2f3abJEOsg_6_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">50788000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <fix:BilledAccountsReceivableAllowanceForCreditLoss
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Narr_BlQJVkBU9UmMjgDrCjCORQ"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">10337000</fix:BilledAccountsReceivableAllowanceForCreditLoss>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Narr_BLvEA-31QUyz_WwI28vRbw"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">6907000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:BilledContractReceivables
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_QSndtNCXVUSIos7tO694-Q_7_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">643748000</us-gaap:BilledContractReceivables>
    <us-gaap:BilledContractReceivables
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_zlmJ6E_6BUqOJMKYYtZr6g_7_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">619037000</us-gaap:BilledContractReceivables>
    <fix:UnbilledAccountsReceivableAllowanceForCreditLoss
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Narr_Ky_bl7FzykKQxxq7eg2Hgw"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">785000</fix:UnbilledAccountsReceivableAllowanceForCreditLoss>
    <fix:UnbilledAccountsReceivableAllowanceForCreditLoss
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Narr_DYBmiPFZh0q05AVqSo-RGQ"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">0</fix:UnbilledAccountsReceivableAllowanceForCreditLoss>
    <us-gaap:UnbilledContractsReceivable
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_L9dgtQ_2AUe_FfcwAeQFuQ_8_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">51058000</us-gaap:UnbilledContractsReceivable>
    <us-gaap:UnbilledContractsReceivable
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_rRd24ySVakiPEr_pEMg-Cw_8_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">55542000</us-gaap:UnbilledContractsReceivable>
    <fix:OtherReceivablesAllowanceForCreditLoss
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Narr_zetAWvwh5UebkuO2_PBjrg"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">875000</fix:OtherReceivablesAllowanceForCreditLoss>
    <fix:OtherReceivablesAllowanceForCreditLoss
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Narr_5_0rskcUM0KYJ0w52XyqUQ"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">0</fix:OtherReceivablesAllowanceForCreditLoss>
    <us-gaap:NontradeReceivablesCurrent
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_w-4vAhO4Y069fdL05nKQXA_9_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">17908000</us-gaap:NontradeReceivablesCurrent>
    <us-gaap:NontradeReceivablesCurrent
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_YBw6emL4OEGnRuJy9eddgA_9_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">37632000</us-gaap:NontradeReceivablesCurrent>
    <us-gaap:InventoryNet
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_c2ssnd2MokGYNKX-2Wdp0Q_10_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">10312000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_45xXfNh0Z0mXOf5GnygOcg_10_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">10053000</us-gaap:InventoryNet>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_QALG7r_XvUSJTg8lEQ7Fog_11_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">14612000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_O8AH8V0KD0is3zkEnITntQ_11_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">14396000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <fix:CostsInExcessOfBillingsAllowanceForCreditLosses
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Narr_kHu81XvnIUa81wJRACHzLA"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">25000</fix:CostsInExcessOfBillingsAllowanceForCreditLosses>
    <fix:CostsInExcessOfBillingsAllowanceForCreditLosses
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Narr_kODCow6-LE2uGkhtdbN0Kw"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">0</fix:CostsInExcessOfBillingsAllowanceForCreditLosses>
    <us-gaap:ContractWithCustomerAssetNetCurrent
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_u9p6bH_qaEGUOJoTXqTdkA_12_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">7541000</us-gaap:ContractWithCustomerAssetNetCurrent>
    <us-gaap:ContractWithCustomerAssetNetCurrent
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_uAX7CHpnckKG4K3rOOdVyQ_12_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">2736000</us-gaap:ContractWithCustomerAssetNetCurrent>
    <us-gaap:AssetsCurrent
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_6Qz5Fr4wOEGj5rV_kQoaqw_13_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">878443000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_r3emIpwzE0OMT2NktGOumw_13_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">790184000</us-gaap:AssetsCurrent>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_r7d-4PGrPUGTQPl0p7f6Rw_14_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">113974000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_DNqSWVLSNEuq_xBgBXEQ4A_14_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">109796000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_X6tvUi4HwkumZ-IvDSuWQg_15_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">82301000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_i5-eXuCoa0mh1oVOVMNJ1A_15_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">84073000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:Goodwill
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_ftPjYWO6qken82I6AaLTDQ_16_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">347391000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_rUJ-vQ5NDUWSntNarqHnLA_16_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">332447000</us-gaap:Goodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_9Yj3RRck7kqRNZvBgf-hww_17_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">167675000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_mrqOqEpMik6ZIJRo5exweQ_17_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">159974000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_waV2jc_MU0KLNGKxDex6kA_18_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">21803000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_oH4Q89OGSkS4YXxs9iph7w_18_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">21923000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_rFRuVvPPzkqKDDstDfveMA_19_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">6480000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_-yyKMUgI-0iUVeSF8lOldA_19_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">6615000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:Assets
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_3QPJd9X43U--6gcbBdhVOA_20_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">1618067000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_1APMNh956k6onhWzUAhZZg_20_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">1505012000</us-gaap:Assets>
    <us-gaap:LongTermDebtCurrent
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_H3pGFCjtEESYZROli83fsA_23_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">850000</us-gaap:LongTermDebtCurrent>
    <us-gaap:LongTermDebtCurrent
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_U1QlwzfuHEqZ-1yHgm8BFg_23_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">20817000</us-gaap:LongTermDebtCurrent>
    <us-gaap:AccountsPayableCurrent
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_BLYjW2Xo0Uq-cFOH-Nb9Bw_24_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">184627000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_ryxbsqRHE02FPRdKQLq4Dw_24_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">196195000</us-gaap:AccountsPayableCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_ZcLOSQqN8ECT6FJMHbVDAw_25_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">81305000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_cHlGImlIVUC2n7kXMFS3Ig_25_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">102891000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_Nex6zvJE2Ey1eiWeduuf9g_26_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">215106000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_3h_xrJ8fqkCN7WAIQAW9Cg_26_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">166918000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:SelfInsuranceReserveCurrent
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_AW06kohUFEem_O9CGzsNkA_27_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">42027000</us-gaap:SelfInsuranceReserveCurrent>
    <us-gaap:SelfInsuranceReserveCurrent
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_EQFpEuQumkqPuqcNHgFb9A_27_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">39546000</us-gaap:SelfInsuranceReserveCurrent>
    <us-gaap:OtherLiabilitiesCurrent
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_GQbmX5ga006y7HzmjHUv2Q_28_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">75710000</us-gaap:OtherLiabilitiesCurrent>
    <us-gaap:OtherLiabilitiesCurrent
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_HrAdVndfu0OUY_ToDdnnXQ_28_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">81630000</us-gaap:OtherLiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_kSIqNb9HLUOxnyBJpZrt4Q_29_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">599625000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_mjT7cI_EJkKImHhzrpL0NQ_29_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">607997000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_CUBXNrv0FkSziYmLBdXdrw_30_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">333113000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_X87iW8zgWE6aiLYwvEUXQg_30_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">205318000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_NpNv5CFoE0CLsKPDzUxdxg_31_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">70410000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_8G8OKTSVpUSCo-GXWBP_0Q_31_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">72697000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_xpiyZEK26k2TEj6i1KEi4g_32_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">1425000</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_rZz62NUNtkmcs81d_eojuw_32_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">1425000</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_kkZzttiOZ0WAgxOKsCqSpQ_33_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">20451000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_8TiMNgIAwE-LCkF5fKoZqg_33_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">32271000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:Liabilities
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_20CUqHSOxkqk-zLHJUX0mQ_34_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">1025024000</us-gaap:Liabilities>
    <us-gaap:Liabilities
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_EzGUX0ioFEaeyNa7704Aig_34_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">919708000</us-gaap:Liabilities>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="INF"
      id="Narr_4cqu66H7EkykPCwv51TeLg"
      unitRef="Unit_Divide_USD_shares_Pr27T94MxEaOLB-gD6gNcw">0.01</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="INF"
      id="Narr_zHTo2lgF-k2hPtD418EMyQ"
      unitRef="Unit_Divide_USD_shares_Pr27T94MxEaOLB-gD6gNcw">0.01</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="INF"
      id="Narr_CFeIm7o35UqZG9EDbecZhw"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">5000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="INF"
      id="Narr_wW3B2PW9PU-pL4k2Dm91yA"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">5000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesIssued
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="INF"
      id="Narr_wJ-DS1sTY06meXWOZZcX1g"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesIssued
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="INF"
      id="Narr_1cZExeI9G0qnvdJt89Y-xA"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="INF"
      id="Narr_V6qwmOtqpkC7xWrMopNUFw"
      unitRef="Unit_Divide_USD_shares_Pr27T94MxEaOLB-gD6gNcw">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="INF"
      id="Narr_09PoqRV1hE65uO_Jg8T8Ig"
      unitRef="Unit_Divide_USD_shares_Pr27T94MxEaOLB-gD6gNcw">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="INF"
      id="Narr_3L3n2u0kj02kHY8Hq1cZFw"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">102969912</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="INF"
      id="Narr_W8scXjr7y0CdTIO31CaXZw"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">102969912</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesIssued
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="INF"
      id="Narr_zEXXzsW5g0ek7H-DQ_DgSg"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">41123365</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesIssued
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="INF"
      id="Narr_6xpE_yDX7US4xaSs_wKr-Q"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">41123365</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockValue
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_0dZm2F6kTUCq9WrBy-bWUQ_38_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">411000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_-L_cWWwc1EOq2ztWSaNANg_38_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">411000</us-gaap:CommonStockValue>
    <us-gaap:TreasuryStockShares
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="INF"
      id="Narr_PdKCvRRMDk64YrBonE10Wg"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">4673627</us-gaap:TreasuryStockShares>
    <us-gaap:TreasuryStockShares
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="INF"
      id="Narr_G4-a6Q8t_UyIQP5wikz2zA"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">4465448</us-gaap:TreasuryStockShares>
    <us-gaap:TreasuryStockValue
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_oYE7vw_zYESaDifRK8Ot1w_39_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">112513000</us-gaap:TreasuryStockValue>
    <us-gaap:TreasuryStockValue
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_w925vFT7EEaTwp6vMdtk-Q_39_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">103960000</us-gaap:TreasuryStockValue>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_REoT_qDXAU6XeRxbXb7l1Q_40_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">323103000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_IVfrgDEqHk2a-o6AEAFNdA_40_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">320168000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_V78FwxAeNkWqaye6QiK5Pg_41_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">382042000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_PRFAyQnuWEORPdb5JdIx_w_41_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">368685000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_71Vl_woN1E6zWJMk_0afjA_42_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">593043000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_NweLQPxj6Eqfg-M7UT0GUA_42_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">585304000</us-gaap:StockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_fWWoy9wkSkiDbwFtPA__Mg_43_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">1618067000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_9hP1vMjbLUS883y06cB6Hg_43_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">1505012000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_sbottmltzEKqyPVuJSMOnQ_4_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">700131000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_R4jDCZB9oUiyOaBOJ3h61g_4_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">538473000</us-gaap:Revenues>
    <us-gaap:CostOfRevenue
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_yuySUgBUKUGSvbz_XAbj2w_5_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">583038000</us-gaap:CostOfRevenue>
    <us-gaap:CostOfRevenue
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_sRR01jTuqkmghYFwdo2u8Q_5_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">431808000</us-gaap:CostOfRevenue>
    <us-gaap:GrossProfit
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_UyzQIA1NH0ejFznaRAYnZQ_6_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">117093000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_NiF-OlWd7kGhBWirZdbAHg_6_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">106665000</us-gaap:GrossProfit>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_JhkiURaOiEWgU7kpGk-kWw_7_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">92924000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_HSeogoYkaUuTRo74GW_f5A_7_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">78905000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:GainLossOnDispositionOfAssets
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_PeYTgm0EW0if82RxiMDIJg_8_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">554000</us-gaap:GainLossOnDispositionOfAssets>
    <us-gaap:GainLossOnDispositionOfAssets
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_T6HpK8gt5EiFxrkSFarLbA_8_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">219000</us-gaap:GainLossOnDispositionOfAssets>
    <us-gaap:OperatingIncomeLoss
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_nrmETAnG_keWcd7K9YC0cA_9_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">24723000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_-TKddQZpSk-hY7dxwHHu_w_9_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">27979000</us-gaap:OperatingIncomeLoss>
    <us-gaap:InvestmentIncomeInterest
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_A2uf5kbZ_k6ViYIzt_iXpw_11_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">64000</us-gaap:InvestmentIncomeInterest>
    <us-gaap:InvestmentIncomeInterest
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_kVyghbqVEkKj6shmCs881A_11_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">25000</us-gaap:InvestmentIncomeInterest>
    <us-gaap:InterestExpense
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_QBGwQVtGtUKgtD-MXQjhZQ_12_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">2617000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_N0eQCO3aD0O027HVEkJ_Mw_12_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">1062000</us-gaap:InterestExpense>
    <us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_vQX6hIfETUKM_edD1kt7oA_13_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">-2272000</us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1>
    <us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_n8q8wzBR0kWGba3r8uxWSQ_13_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">158000</us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_EJUqT6rWD0q2HFV69N_b0Q_14_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">25000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_v2IPUA4hb0G2W_bMNeJonw_14_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">15000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc__-zpl20OEUmFJxOL6W40Bw_15_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">-256000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_kr7omdhrLUalEhkJOeYJJw_15_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">-1180000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_Tq4KyB808EaIZOr6rT0uwg_16_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">24467000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_VPUJTi1BWkaJNKgdt3cw1A_16_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">26799000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_qOGsOLLxMUCV1QJdgunrrg_17_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">6751000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_Z1BLx7cbrkSyleZ_raUNPw_17_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">6933000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_F9S-jMfUFk2ECfbCVyQaFw_18_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">17716000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_v3Cg14gsbUKB4BkAM1IdzA_18_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">19866000</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareBasic
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="2"
      id="Tc_uXQodMNDCk6gsj3H1dSMpw_21_3"
      unitRef="Unit_Divide_USD_shares_Pr27T94MxEaOLB-gD6gNcw">0.48</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="2"
      id="Tc_JJ8p9Txd806J3OAKyQRqIA_21_6"
      unitRef="Unit_Divide_USD_shares_Pr27T94MxEaOLB-gD6gNcw">0.54</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="2"
      id="Tc_iozPpcLkj0y273JGBU7JLw_22_3"
      unitRef="Unit_Divide_USD_shares_Pr27T94MxEaOLB-gD6gNcw">0.48</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="2"
      id="Tc_KHTexFoKRkah6IeBgEH5bA_22_6"
      unitRef="Unit_Divide_USD_shares_Pr27T94MxEaOLB-gD6gNcw">0.53</us-gaap:EarningsPerShareDiluted>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_WvkGpYbZeUaDwW6EQa_7Sg_25_3"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">36674000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_cavz73yg4k-TWEZhxzQJWA_25_6"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">36923000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_or3YvxFPDUmt9jjTPBbrNQ_26_3"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">36905000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_NvTI3k6Go0GDoxwRyXUaQA_26_6"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">37234000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="3"
      id="Tc_xCYeqF71x06laRvKfuAnyQ_27_3"
      unitRef="Unit_Divide_USD_shares_Pr27T94MxEaOLB-gD6gNcw">0.105</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="3"
      id="Tc_xY3RUeh-S06IqGynZ5hQnw_27_6"
      unitRef="Unit_Divide_USD_shares_Pr27T94MxEaOLB-gD6gNcw">0.095</us-gaap:CommonStockDividendsPerShareDeclared>
    <us-gaap:CommonStockSharesIssued
      contextRef="As_Of_12_31_2018_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_jS_jeq_euEOHwQX6WTIu6Q"
      decimals="INF"
      id="Tc_CORc-mSztkuhXbPpGd_RZA_6_2"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">41123365</us-gaap:CommonStockSharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_12_31_2018_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_jS_jeq_euEOHwQX6WTIu6Q"
      decimals="-3"
      id="Tc_CVu9MuKiZEuEjQz2ZcXnEw_6_5"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">411000</us-gaap:StockholdersEquity>
    <us-gaap:TreasuryStockShares
      contextRef="As_Of_12_31_2018_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember_S8OZ3byP8U25oZT-cghiDA"
      decimals="INF"
      id="Tc_zq3GL2g8akybD8_-XVCLhQ_6_7"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">-4229653</us-gaap:TreasuryStockShares>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_12_31_2018_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember_S8OZ3byP8U25oZT-cghiDA"
      decimals="-3"
      id="Tc_nhShcDAdIkynwqQitgzZaQ_6_10"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">-87747000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_12_31_2018_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_lnywiinjBU-TvJg4kQvrWQ"
      decimals="-3"
      id="Tc_QScqI1Ie8EWPGkux9giJWw_6_13"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">316479000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_12_31_2018_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_W04MF3El0EaWyIuyj7B25w"
      decimals="-3"
      id="Tc_VW3zFXicG0KG4E_9E1ohow_6_16"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">268904000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_12_31_2018_kVfJ9VO0mku_31JRqsvE7Q"
      decimals="-3"
      id="Tc_N8rrgnvxhEGmIbRGJdVA-Q_6_19"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">498047000</us-gaap:StockholdersEquity>
    <us-gaap:ProfitLoss
      contextRef="Duration_1_1_2019_To_3_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_8pcXqADE2EmqT36eiYHy5g"
      decimals="-3"
      id="Tc_5zyW8oU_t06z09PzT8YnVw_7_16"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">19866000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_odAtetl4_ESH68F-mQYd2Q_7_19"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">19866000</us-gaap:ProfitLoss>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="Duration_1_1_2019_To_3_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember_lrje_piWIUaPLBdc1eRDyg"
      decimals="INF"
      id="Tc_-SgpkhIw50KF_dMFqoJyBA_9_7"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">41103</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="Duration_1_1_2019_To_3_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember_lrje_piWIUaPLBdc1eRDyg"
      decimals="-3"
      id="Tc_fCh3wzJXB0y44g5opG9nzQ_9_10"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">861000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="Duration_1_1_2019_To_3_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_oPT9yjgPG0eI15q8MdEUFw"
      decimals="-3"
      id="Tc_LugeLbEs2kOi65YXeLuMmw_9_13"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">-61000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_APlvl79fZEmkMAXyG9RV-A_9_19"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">800000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <fix:StockIssuedDuringPeriodSharesRestrictedAndPerformanceStockAwardGross
      contextRef="Duration_1_1_2019_To_3_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember_lrje_piWIUaPLBdc1eRDyg"
      decimals="INF"
      id="Tc_bza5_Jw3s0eUn_mRg_weug_10_7"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">38539</fix:StockIssuedDuringPeriodSharesRestrictedAndPerformanceStockAwardGross>
    <fix:StockIssuedDuringPeriodValueRestrictedAndPerformanceStockAwardGross
      contextRef="Duration_1_1_2019_To_3_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember_lrje_piWIUaPLBdc1eRDyg"
      decimals="-3"
      id="Tc_flUVIBdO3UKNOYrVrNHskw_10_10"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">817000</fix:StockIssuedDuringPeriodValueRestrictedAndPerformanceStockAwardGross>
    <fix:StockIssuedDuringPeriodValueRestrictedAndPerformanceStockAwardGross
      contextRef="Duration_1_1_2019_To_3_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_oPT9yjgPG0eI15q8MdEUFw"
      decimals="-3"
      id="Tc_73V0PTPYNE2aCJ50jJZzHw_10_13"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">1189000</fix:StockIssuedDuringPeriodValueRestrictedAndPerformanceStockAwardGross>
    <fix:StockIssuedDuringPeriodValueRestrictedAndPerformanceStockAwardGross
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_dx_PdNnI4EOzMRO5U5XkfQ_10_19"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">2006000</fix:StockIssuedDuringPeriodValueRestrictedAndPerformanceStockAwardGross>
    <us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation
      contextRef="Duration_1_1_2019_To_3_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember_lrje_piWIUaPLBdc1eRDyg"
      decimals="INF"
      id="Tc_znBGBSfKgUibU2krp-LhHA_11_7"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">-15013</us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="Duration_1_1_2019_To_3_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember_lrje_piWIUaPLBdc1eRDyg"
      decimals="-3"
      id="Tc_fxFuLz2hnEisk-EgYlMRlg_11_10"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">781000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_LbB4WOpZAUWFr-BIFHUGew_11_19"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">781000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="Duration_1_1_2019_To_3_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_oPT9yjgPG0eI15q8MdEUFw"
      decimals="-3"
      id="Tc___UcSRtwfESdxrVsPhHuFQ_12_13"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">2084000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_KTReRgVlmUqMPsv-p6Umpw_12_19"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">2084000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:DividendsCommonStockCash
      contextRef="Duration_1_1_2019_To_3_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_8pcXqADE2EmqT36eiYHy5g"
      decimals="-3"
      id="Tc_bJ4uIkiWXEqoxgDYh5oYuA_13_16"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">3506000</us-gaap:DividendsCommonStockCash>
    <us-gaap:DividendsCommonStockCash
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_B7SaHf9E60iDRyeiHE_ORw_13_19"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">3506000</us-gaap:DividendsCommonStockCash>
    <us-gaap:TreasuryStockSharesAcquired
      contextRef="Duration_1_1_2019_To_3_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember_lrje_piWIUaPLBdc1eRDyg"
      decimals="INF"
      id="Tc_I7pEhNzDp0CDGPi0Phk3-Q_14_7"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">-67394</us-gaap:TreasuryStockSharesAcquired>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="Duration_1_1_2019_To_3_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember_lrje_piWIUaPLBdc1eRDyg"
      decimals="-3"
      id="Tc_AQYW2SCowU2NnkZZdHaQlA_14_10"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">3321000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_nKZnVWhDxU6Vk4mu7-h5DA_14_19"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">3321000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:CommonStockSharesIssued
      contextRef="As_Of_3_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_O8uE48Dga0GbQS4sS7OSKA"
      decimals="INF"
      id="Tc_OUkd01lTLkWoTWXS0yjViQ_15_2"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">41123365</us-gaap:CommonStockSharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_3_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_O8uE48Dga0GbQS4sS7OSKA"
      decimals="-3"
      id="Tc_Oui9LHQlPUWlk_3EOWZuPQ_15_5"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">411000</us-gaap:StockholdersEquity>
    <us-gaap:TreasuryStockShares
      contextRef="As_Of_3_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember_v3_Hkd-NSkiVjPjPX-MBJw"
      decimals="INF"
      id="Tc_25ai-phSykyj9pYiXDKcXQ_15_7"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">-4232418</us-gaap:TreasuryStockShares>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_3_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember_v3_Hkd-NSkiVjPjPX-MBJw"
      decimals="-3"
      id="Tc__zfLmFaTkkaXFKDK2-U0xQ_15_10"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">-90171000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_3_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_JbiPlDJczEq4YGW_FpLUgw"
      decimals="-3"
      id="Tc_lvTiF6LQFkecbNqnRBeuqg_15_13"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">319691000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_3_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_Qc8_IjW1yEKuteVQ3yjiZw"
      decimals="-3"
      id="Tc_8GzbBESYXUmiDAPVmOzvGg_15_16"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">285264000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_3_31_2019_Da6SU3sKbkaqGenTlya3Zw"
      decimals="-3"
      id="Tc_63Bu7HsfoEKhDZSrhKAhvg_15_19"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">515195000</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesIssued
      contextRef="As_Of_12_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_nTMtDWgVu025geeG8JwNvA"
      decimals="INF"
      id="Tc_Wp-DsV3_fkmCiGkRquKydw_22_2"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">41123365</us-gaap:CommonStockSharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_12_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_nTMtDWgVu025geeG8JwNvA"
      decimals="-3"
      id="Tc_4pJxMCDEWkihGegKzw87OQ_22_5"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">411000</us-gaap:StockholdersEquity>
    <us-gaap:TreasuryStockShares
      contextRef="As_Of_12_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember_VnEms-moJUSCfIu1rrYCiA"
      decimals="INF"
      id="Tc_XcBFCA4EY0ioaFKRGmb08A_22_7"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">-4465448</us-gaap:TreasuryStockShares>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_12_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember_VnEms-moJUSCfIu1rrYCiA"
      decimals="-3"
      id="Tc_Vp6paBYuiUSxrzyfP_2ncg_22_10"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">-103960000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_12_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_e9KF6s8LeEihVD_OV46A-Q"
      decimals="-3"
      id="Tc_aBjf7YcpsUipz_G4RxlnnA_22_13"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">320168000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_12_31_2019_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_4aBzPhdn2UGKULm5KWMDZQ"
      decimals="-3"
      id="Tc_mwYI9W4C1kOqVzC9MrRWhg_22_16"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">368685000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_hx8xNIKE8kK5DDjalNvlig_22_19"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">585304000</us-gaap:StockholdersEquity>
    <us-gaap:ProfitLoss
      contextRef="Duration_1_1_2020_To_3_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_xWQrDQGIOUqWl40CddVaFQ"
      decimals="-3"
      id="Tc_KG0za1RpFUC9yAN4AdtJIQ_23_16"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">17716000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_w6xh4b9nc065td_K9Xnf0Q_23_19"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">17716000</us-gaap:ProfitLoss>
    <us-gaap:CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption
      contextRef="As_Of_3_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_MPpSJWfYi0y2XeYBTwuATg"
      decimals="-3"
      id="Tc_EQL53KV1c0-w6jAJIEwSjw_24_16"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">-515000</us-gaap:CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption>
    <us-gaap:CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_QUzJKk3Gq0qDjZ_pXkdxoA_24_19"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">-515000</us-gaap:CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption>
    <fix:StockIssuedDuringPeriodSharesRestrictedAndPerformanceStockAwardGross
      contextRef="Duration_1_1_2020_To_3_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember_lTCgV7MZS0CYhtdSMxAc5Q"
      decimals="INF"
      id="Tc_Kvb818JE4kK3eFMvA-p8wA_27_7"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">43902</fix:StockIssuedDuringPeriodSharesRestrictedAndPerformanceStockAwardGross>
    <fix:StockIssuedDuringPeriodValueRestrictedAndPerformanceStockAwardGross
      contextRef="Duration_1_1_2020_To_3_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember_lTCgV7MZS0CYhtdSMxAc5Q"
      decimals="-3"
      id="Tc_tfEH2DXaFEek-KB_Mbxm1w_27_10"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">1054000</fix:StockIssuedDuringPeriodValueRestrictedAndPerformanceStockAwardGross>
    <fix:StockIssuedDuringPeriodValueRestrictedAndPerformanceStockAwardGross
      contextRef="Duration_1_1_2020_To_3_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_bo2rDcyZU06i40vVTlBT7g"
      decimals="-3"
      id="Tc_vb39e6g1x0muvrErngJvDA_27_13"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">801000</fix:StockIssuedDuringPeriodValueRestrictedAndPerformanceStockAwardGross>
    <fix:StockIssuedDuringPeriodValueRestrictedAndPerformanceStockAwardGross
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_4cQW2jL1NEeXRc5Is5nx2Q_27_19"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">1855000</fix:StockIssuedDuringPeriodValueRestrictedAndPerformanceStockAwardGross>
    <us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation
      contextRef="Duration_1_1_2020_To_3_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember_lTCgV7MZS0CYhtdSMxAc5Q"
      decimals="INF"
      id="Tc_Zb9byReoI0iCAvewtetmdw_28_7"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">-14722</us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="Duration_1_1_2020_To_3_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember_lTCgV7MZS0CYhtdSMxAc5Q"
      decimals="-3"
      id="Tc_aVJV_G0wkUmfcEPhYFM5BA_28_10"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">622000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_LQHAmxOv0U2Q6NH9-ZyAfw_28_19"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">622000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="Duration_1_1_2020_To_3_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_bo2rDcyZU06i40vVTlBT7g"
      decimals="-3"
      id="Tc_vT2prSRtY0aPJSVSA12Mgg_29_13"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">2134000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_Z1PNHkOR3kGyGYri6feCIQ_29_19"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">2134000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:DividendsCommonStockCash
      contextRef="Duration_1_1_2020_To_3_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_xWQrDQGIOUqWl40CddVaFQ"
      decimals="-3"
      id="Tc_8R_dJqQjrkGILJHGPDew4g_30_16"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">3844000</us-gaap:DividendsCommonStockCash>
    <us-gaap:DividendsCommonStockCash
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_LnSOBReyNECtJCFrJuDWBQ_30_19"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">3844000</us-gaap:DividendsCommonStockCash>
    <us-gaap:TreasuryStockSharesAcquired
      contextRef="Duration_1_1_2020_To_3_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember_lTCgV7MZS0CYhtdSMxAc5Q"
      decimals="INF"
      id="Tc_2taLK1gLF06tHnaBZUpVTw_31_7"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">-237359</us-gaap:TreasuryStockSharesAcquired>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="Duration_1_1_2020_To_3_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember_lTCgV7MZS0CYhtdSMxAc5Q"
      decimals="-3"
      id="Tc_YMLNbjW4_0-IjYWf9wX0xg_31_10"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">8985000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockValueAcquiredCostMethod
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_vUb8my6D2E20xAM_pl2HEQ_31_19"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">8985000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:CommonStockSharesIssued
      contextRef="As_Of_3_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Xs-ggSHckEuJaBNyAkaAXw"
      decimals="INF"
      id="Tc_N3IOSurEG0CuVyBJNXFa7A_32_2"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">41123365</us-gaap:CommonStockSharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_3_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_Xs-ggSHckEuJaBNyAkaAXw"
      decimals="-3"
      id="Tc_pWsYJuaSK0aK6jX6NqtfZg_32_5"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">411000</us-gaap:StockholdersEquity>
    <us-gaap:TreasuryStockShares
      contextRef="As_Of_3_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember_TVci-EwhUUqzthnmDVZciw"
      decimals="INF"
      id="Tc_8JdYKpz6FECZhHyiKWBoKg_32_7"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">-4673627</us-gaap:TreasuryStockShares>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_3_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_TreasuryStockMember_TVci-EwhUUqzthnmDVZciw"
      decimals="-3"
      id="Tc_gT2SdlIftE2nCvXQyeyGvg_32_10"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">-112513000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_3_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember_xoHjEOke6EuwnYV_Hfsx5w"
      decimals="-3"
      id="Tc_a7QDtSv8TEq2nfDv8Or83w_32_13"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">323103000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_3_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_MPpSJWfYi0y2XeYBTwuATg"
      decimals="-3"
      id="Tc_zLtp7QahPkKvxbEkypNOwA_32_16"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">382042000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_ufKL9ASzD0eIorUchurPYw_32_19"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">593043000</us-gaap:StockholdersEquity>
    <us-gaap:ProfitLoss
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_osO48463Xky6gqCY3hiZog_5_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">17716000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_x-R9t0XXFEqdzIV5VQR2Qw_5_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">19866000</us-gaap:ProfitLoss>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_Y2t_g7XywUabhKAbBVd81w_7_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">6230000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_p1Er8l7kekOy6gOIx4tkEw_7_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">4891000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:Depreciation
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_o5WVNaAljku7Sj8ni9UnTA_8_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">6461000</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_MABUX_Hq4EWPKn3UZ1JIfw_8_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">5833000</us-gaap:Depreciation>
    <fix:ChangeInRightOfUseAssets
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_1d6hRcspUUiEBN-zOZM_cQ_9_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">8182000</fix:ChangeInRightOfUseAssets>
    <fix:ChangeInRightOfUseAssets
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_PifabKt610-ouLnvxIqkQA_9_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">3254000</fix:ChangeInRightOfUseAssets>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_zFXkc9ZsnUiRWH57lrtqFQ_10_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">4551000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_Y8v22Bp510yF6JT1r91UzA_10_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">235000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_QDth7752R0qGyNos3azO-g_11_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">300000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_FQHCDjcowUaufX_IQE7Cnw_11_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">149000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:AmortizationOfFinancingCosts
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_qqvLOQZ1MEiYQMwnO7zjAA_12_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">135000</us-gaap:AmortizationOfFinancingCosts>
    <us-gaap:AmortizationOfFinancingCosts
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_iXCiVKZZK0muv224ZSkJcQ_12_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">96000</us-gaap:AmortizationOfFinancingCosts>
    <us-gaap:GainLossOnSaleOfPropertyPlantEquipment
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_zfdoa2P9N0mDTOn0p4xisQ_13_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">554000</us-gaap:GainLossOnSaleOfPropertyPlantEquipment>
    <us-gaap:GainLossOnSaleOfPropertyPlantEquipment
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_TSKu-4Ag40q4gLUaQ0ungQ_13_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">219000</us-gaap:GainLossOnSaleOfPropertyPlantEquipment>
    <us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_eFJQ6frPI020IRITtQsWrA_14_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">-2272000</us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1>
    <us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_sRiOI3LJS0m7ezFlJaRpPw_14_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">158000</us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1>
    <us-gaap:ShareBasedCompensation
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_Y6MjusdgxUODJCO0V-1NyQ_15_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">3631000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_5L0EkMLV7UudcmodmjU3nw_15_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">3176000</us-gaap:ShareBasedCompensation>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_nTfI6q1aWEa4nwL3SS8eqA_18_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">7894000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_1jzNmIcVQEOsz6Kxb4o2mw_18_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">-38272000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_e4xPf4i8N0ibnYrNwcq73w_19_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">256000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_7x0mi9f5dk21EOP5llV7FA_19_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">492000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_f6598eOYzUCepe4V_xQSoQ_20_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">-5392000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_VqjKyhQVkEiH1-VXyjSIgA_20_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">2083000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <fix:IncreaseDecreaseInContractWithCustomerAssets
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_nAn44-cESUqAX3y84tGwCA_21_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">695000</fix:IncreaseDecreaseInContractWithCustomerAssets>
    <fix:IncreaseDecreaseInContractWithCustomerAssets
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_s5emT9ZtnUaiOk5toSpfRw_21_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">-671000</fix:IncreaseDecreaseInContractWithCustomerAssets>
    <us-gaap:IncreaseDecreaseInOtherOperatingAssets
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_3p2iHCYDIkiituPIW4P8Kw_22_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">-225000</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
    <us-gaap:IncreaseDecreaseInOtherOperatingAssets
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_VmJnE9bN60ST4gRJyRnpjA_22_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">193000</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
    <us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_k7y5gBWvlU2bg15pYeIyiw_24_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">-45799000</us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_h9QCuOjuM0qs_yszC1c4JQ_24_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">-59331000</us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInContractWithCustomerLiability
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_0JxB1CD4f0eRrU3mpTxN4w_25_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">35337000</us-gaap:IncreaseDecreaseInContractWithCustomerLiability>
    <us-gaap:IncreaseDecreaseInContractWithCustomerLiability
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_caLzeRdjqEKa2fIgDFtu-g_25_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">-10740000</us-gaap:IncreaseDecreaseInContractWithCustomerLiability>
    <us-gaap:IncreaseDecreaseInOtherOperatingLiabilities
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_h41FrJDF90m-ghsHQ4PhFw_26_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">-8770000</us-gaap:IncreaseDecreaseInOtherOperatingLiabilities>
    <us-gaap:IncreaseDecreaseInOtherOperatingLiabilities
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_xhNaL6Ck90Kr-oJ7Jyog4Q_26_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">-2552000</us-gaap:IncreaseDecreaseInOtherOperatingLiabilities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_i-RLaCpqrk2E3JUEKbl4RA_27_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">21920000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_KZQzSVJ3m0G6lJEwPmU-YQ_27_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">991000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_lUqr9u6-gEiqmSsXht-U8g_29_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">7497000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_89fkYSiO5E28yF2YVT51JQ_29_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">8844000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_QOSDQIJd9kagHQydduU7XQ_30_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">690000</us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment>
    <us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_YQkwlJu-806aqwHP6QLbAQ_30_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">357000</us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_aPrDGedDqEiEWI3uZzJwFA_31_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">8729000</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_iDVtU7RGqkadQNx3M3zGiw_31_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">1313000</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_WjA4pTBPHEWSrGDQ8KMD5Q_32_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">-15536000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_e6C-p8nU4EORCvQboVPqxA_32_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">-9800000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:ProceedsFromIssuanceOfSeniorLongTermDebt
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_CApymW2GYkGnKx2Jbr6GFQ_34_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">150000000</us-gaap:ProceedsFromIssuanceOfSeniorLongTermDebt>
    <us-gaap:ProceedsFromIssuanceOfSeniorLongTermDebt
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_c4gEZqDTF0mgjPMeA5_T9g_34_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">54000000</us-gaap:ProceedsFromIssuanceOfSeniorLongTermDebt>
    <us-gaap:RepaymentsOfSeniorDebt
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_MbPYe2wo00upczZV-RhzVg_35_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">37375000</us-gaap:RepaymentsOfSeniorDebt>
    <us-gaap:RepaymentsOfSeniorDebt
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_vYeo-1B7oEGsVItZ8Nj6LQ_35_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">53000000</us-gaap:RepaymentsOfSeniorDebt>
    <us-gaap:RepaymentsOfOtherDebt
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_48JpzZO2zEqKislYv4YTMg_36_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">12817000</us-gaap:RepaymentsOfOtherDebt>
    <us-gaap:RepaymentsOfOtherDebt
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_iefeQKEwxECU6AX0fbRULQ_36_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">1030000</us-gaap:RepaymentsOfOtherDebt>
    <us-gaap:PaymentsOfDividendsCommonStock
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_VXYkIH48Y0WhjvUiQSdYrw_37_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">3844000</us-gaap:PaymentsOfDividendsCommonStock>
    <us-gaap:PaymentsOfDividendsCommonStock
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_qq33G2_OqUm1ToItSH1pZg_37_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">3506000</us-gaap:PaymentsOfDividendsCommonStock>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_DpDk8NcqQEaIIKbPPuISlw_38_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">8985000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_o-tH_Qi6SEC5j3xSgOmTPw_38_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">3321000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_xOxG6XlceEOu6PHWaxdYrg_39_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">622000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_2tKKvvULkE6T9Rtz_82jFg_39_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">781000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_-GxXREzTBUaicJlFG99jlw_40_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">800000</us-gaap:ProceedsFromStockOptionsExercised>
    <fix:DeferredAcquisitionPayments
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_tul9S-IfNkqidlKWuWTC5A_41_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">400000</fix:DeferredAcquisitionPayments>
    <fix:DeferredAcquisitionPayments
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_AuGZwUlRsU67aiENgZceVw_41_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">250000</fix:DeferredAcquisitionPayments>
    <us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_sPHiziTL-EWVV3zymvR09w_42_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">9865000</us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities>
    <us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_t-eTaZerFUWvvGzP6fhLxg_42_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">593000</us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_hATpYVm4C0ilJ8Z0ZBGr-w_43_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">76092000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_eKevnCu8yU-9jGEIThxCFA_43_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">-7681000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_eASQIZhtQ0aAg3wUDY9CCA_44_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">82476000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_ap-JpxY7iUqO0-puNu89kA_44_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">-16490000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_s24B1X8sdUeTtuv07BdpiA_45_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">50788000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="As_Of_12_31_2018_kVfJ9VO0mku_31JRqsvE7Q"
      decimals="-3"
      id="Tc_VTpdOFEOY0CDzKsVrs0a0w_45_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">45620000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_VuOCmCgE50mVVtKZ3Wa3jw_46_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">133264000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="As_Of_3_31_2019_Da6SU3sKbkaqGenTlya3Zw"
      decimals="-3"
      id="Tc_Fg3PlSYb7E6R3cfYOQzJAw_46_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">29130000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:NatureOfOperations
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tb_km03V6ey90OcmFjfJiJ56A">&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;1. Business and Organization&lt;/b&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;Comfort Systems USA, Inc., a Delaware corporation, provides comprehensive mechanical and electrical contracting services, which principally includes heating, ventilation and air conditioning (&#x201c;HVAC&#x201d;), plumbing, electrical, piping and controls, as well as off-site construction, monitoring and fire protection. We install, maintain, repair and replace products and systems throughout the United States. The terms &#x201c;Comfort Systems,&#x201d; &#x201c;we,&#x201d; &#x201c;us,&#x201d; or the &#x201c;Company,&#x201d; refer to Comfort Systems USA,&#160;Inc. or Comfort Systems USA,&#160;Inc. and its consolidated subsidiaries, as appropriate in the context.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;</us-gaap:NatureOfOperations>
    <us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tb_R_SofOVw8k2RdtGqQIs8Dw">&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2. Summary of Significant Accounting Policies&lt;/b&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;padding-left:18pt;text-indent:-18pt;margin:0pt 0pt 0pt 36pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;padding-left:18pt;text-indent:-18pt;margin:0pt 0pt 0pt 36pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;"&gt;Basis of Presentation&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;These interim statements should be read in conjunction with the historical Consolidated Financial Statements and related notes of Comfort Systems included in the Annual Report on Form&#160;10-K as filed with the Securities and Exchange Commission (&#x201c;SEC&#x201d;) for the year ended December 31, 2019 (the &#x201c;Form&#160;10-K&#x201d;).&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;The accompanying unaudited consolidated financial statements were prepared using generally accepted accounting principles for interim financial information and the instructions to Form&#160;10-Q and applicable rules of Regulation&#160;S-X of the SEC. Accordingly, these financial statements do not include all the footnotes required by generally accepted accounting principles for complete financial statements and should be read in conjunction with the Form&#160;10-K. We believe all adjustments necessary for a fair presentation of these interim statements have been included and are of a normal and recurring nature. The results of operations for interim periods are not necessarily indicative of the results for the full fiscal year.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;padding-left:18pt;text-indent:-18pt;margin:0pt 0pt 0pt 36pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;"&gt;Use of Estimates&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;The preparation of financial statements in conformity with generally accepted accounting principles requires the use of estimates and assumptions by management in determining the reported amounts of assets and liabilities, revenue and expenses and disclosures regarding contingent assets and liabilities. Actual results could differ from those estimates. The most significant estimates used in our financial statements affect revenue and cost recognition for construction contracts, the allowance for credit losses, self-insurance accruals, deferred tax assets, warranty accruals, fair value accounting for acquisitions and the quantification of fair value for reporting units in connection with our goodwill impairment testing. &lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;padding-left:18pt;text-indent:-18pt;margin:0pt 0pt 0pt 36pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;"&gt;Recent Accounting Pronouncements&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;In June 2016, the FASB issued ASU No. 2016-13, &#x201c;Financial Instruments &#x2013; Credit Losses (Topic 326).&#x201d; The standard requires companies to consider historical experiences, current market conditions and reasonable and supportable forecasts in the measurement of expected credit losses. The standard requires us to accrue higher credit losses on financial assets compared to the legacy guidance on various items, such as contract assets and current receivables. ASU 2016-13 is effective for fiscal years beginning after December 15, 2019 and interim periods within those years. We adopted ASU No. 2016-13, &#x201c;Financial Instruments &#x2013; Credit Losses (Topic 326)&#x201d;, on January 1, 2020, and the impact was not material to our overall financial statements. The adoption of ASU No. 2016-13 resulted in an increase in Allowance for Credit Losses of $0.7 million, an increase to Deferred Tax Assets of $0.2 million and an impact of $0.5 million to Retained Earnings.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;In August 2018, the FASB issued ASU No. 2018-13, &#x201c;Fair Value Measurement (Topic 820): Disclosure Framework &#x2014; Changes to the Disclosure Requirements for Fair Value Measurement.&#x201d; This standard removes certain disclosure requirements including the valuation processes for Level 3 fair value measurements, the policy for timing of transfers between levels and the amount of and reasons for transfers between Level 1 and Level 2 of the fair value hierarchy. The standard requires certain additional disclosures for public entities, including disclosure of the changes in unrealized gains and losses included in Other Comprehensive Income for Level 3 fair value measurements and the range and weighted average of significant unobservable inputs used to develop Level 3 fair value measurements. ASU 2018-13 is effective for fiscal years beginning after December 15, 2019 and interim periods within those years. Certain amendments, including the amendment on changes in unrealized gains and losses and the range and weighted average of significant unobservable inputs, should be applied prospectively while other amendments should be applied retrospectively to all periods presented upon their effective date. We have modified our fair value disclosures to conform with the requirements of ASU No. 2018-13, &#x201c;Fair Value Measurement (Topic 820): Disclosure Framework &#x2014; Changes to the Disclosure Requirements for Fair Value Measurement&#x201d;, which we adopted on January 1, 2020.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;In December 2019, the FASB issued ASU No. 2019-12, &#x201c;Income Taxes (Topic 740): Simplifying the Accounting for Income Taxes.&#x201d; This standard simplifies the accounting for income taxes by eliminating certain exceptions to the guidance in Topic 740 related to the approach for intraperiod tax allocation, the methodology for calculating income taxes in an interim period and the recognition of deferred tax liabilities for outside basis differences. The standard also simplifies aspects of the accounting for franchise taxes and enacted changes in tax laws or rates and clarifies the accounting for transactions that result in a step-up in the tax basis of goodwill. ASU 2019-12 is effective for fiscal years beginning after December 15, 2020 and interim periods within that year. Early adoption is permitted. We are currently evaluating the potential impact of this authoritative guidance on our consolidated financial statements.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;padding-left:18pt;text-indent:-18pt;margin:0pt 0pt 0pt 36pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;padding-left:18pt;text-indent:-18pt;margin:0pt 0pt 0pt 36pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;"&gt;Revenue Recognition&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;Revenue is recognized when control of the promised goods or services is transferred to our customers, in an amount that reflects the consideration to which we expect to be entitled in exchange for those goods or services.  Sales-based taxes are excluded from revenue.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;We provide mechanical and electrical contracting services. Our mechanical segment principally includes HVAC, plumbing, piping and controls, as well as off-&lt;span style="white-space:pre-wrap;"&gt;site construction, monitoring and fire protection. Our electrical segment includes installation and servicing of electrical systems. We install, maintain, repair and replace products and systems throughout the United States.  All of our revenue is recognized over time as we deliver goods and services to our customers.  Revenue can be earned based on an agreed upon fixed price or based on actual costs incurred marked up at an agreed upon percentage.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;We account for a contract when: (i) it has approval and commitment from both parties, (ii) the rights of the parties are identified, (iii) payment terms are identified, (iv) the contract has commercial substance, and (v) collectability of consideration is probable. We consider the start of a project to be when the above criteria have been met and we either have written authorization from the customer to proceed or an executed contract.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;We generally do not incur significant incremental costs related to obtaining or fulfilling a contract prior to the start of a project. On rare occasions, when significant pre-contract costs are incurred, they are capitalized and amortized on a percentage of completion basis over the life of the contract. We do not currently have any capitalized obtainment or fulfillment costs on our Balance Sheet and did not incur any impairment loss on such costs in the current year.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;Due to the nature of the work required to be performed on many of our performance obligations, the estimation of total revenue and cost at completion (the process described below in more detail) is complex, subject to many variables and requires significant judgment. The consideration to which we are entitled on our long-term contracts may include both fixed and variable amounts.  Variable amounts can either increase or decrease the transaction price.   A common example of variable amounts that can either increase or decrease contract value are pending change orders that represent contract modifications for which a change in scope has been authorized or acknowledged by our customer, but the final adjustment to contract price is yet to be negotiated.  Other examples of positive variable revenue include amounts awarded upon achievement of certain performance metrics, program milestones or cost of completion date &lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;targets and can be based upon customer discretion.  Variable amounts can result in a deduction from contract revenue if we fail to meet stated performance requirements, such as complying with the construction schedule.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;Contracts are often modified to account for changes in contract specifications and requirements. We consider contract modifications to exist when the modification either creates new or changes the existing enforceable rights and obligations. Most of our contract modifications are for goods or services that are not distinct from the existing performance obligation(s).  The effect of a contract modification on the transaction price, and our measure of progress for the performance obligation to which it relates, is recognized as an adjustment to revenue (either as an increase or decrease) on a cumulative catchup basis. &lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;We have a Company-wide policy requiring periodic review of the Estimate at Completion in which management reviews the progress and execution of our performance obligations and estimated remaining obligations. As part of this process, management reviews information including, but not limited to, any outstanding key contract matters, progress towards completion and the related program schedule, identified risks and opportunities and the related changes in estimates of revenue and costs. The risks and opportunities include management's judgment about the ability and cost to achieve the schedule (e.g., the number and type of milestone events), technical requirements (e.g., a newly developed product versus a mature product) and other contract requirements. Management must make assumptions and estimates regarding labor productivity and availability, the complexity of the work to be performed, the availability of materials, the length of time to complete the performance obligation (e.g., to estimate increases in wages and prices for materials and related support cost allocations), execution by our subcontractors, the availability and timing of funding from our customer, and overhead cost rates, among other variables. &lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;Based on this analysis, any adjustments to revenue, cost of services, and the related impact to operating income are recognized as necessary in the quarter when they become known. These adjustments may result from positive program performance if we determine we will be successful in mitigating risks surrounding the technical, schedule and cost aspects of those performance obligations or realizing related opportunities and may result in an increase in operating income during the performance of individual performance obligations. Likewise, if we determine we will not be successful in mitigating these risks or realizing related opportunities, these adjustments may result in a decrease in operating income. Changes in estimates of revenue, cost of services and the related impact to operating income are recognized quarterly on a cumulative catchup basis, meaning we recognize in the current period the cumulative effect of the changes on current and prior periods based on a performance obligation's percentage of completion. A significant change in one or more of these estimates could affect the profitability of one or more of our performance obligations. For projects in which estimates of total costs to be incurred on a performance obligation exceed total estimates of revenue to be earned, a provision for the entire loss on the performance obligation is recognized in the period the loss is determined. &lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;In the first three months of 2020 and 2019, net revenue recognized from our performance obligations satisfied in previous periods was not material.   &lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;"&gt;Disaggregation of Revenue&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;Our consolidated 2020 revenue was derived from contracts to provide service activities in the mechanical and electrical services segments we serve. Refer to Note 9 &#x2013; Segment Information for additional information on our reportable segments. We disaggregate our revenue from contracts with customers by activity, customer type and contract type, as we believe it best depicts how the nature, amount, timing and uncertainty of our revenue and cash flows are affected by economic factors.  See details in the following tables (dollars in thousands):&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;padding-left:18pt;text-indent:-18pt;margin:0pt 0pt 0pt 36pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.02%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.24%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="11" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:40.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Three Months Ended March 31, &lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:55.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Revenue by Service Provided&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="4" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:17.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="4" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:16.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2019&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Mechanical Services&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 565,464&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:6.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 80.8&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 534,585&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:5.24%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 99.3&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Electrical Services&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 134,667&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 19.2&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 3,888&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.24%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 0.7&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Total &lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.04%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 700,131&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:6.02%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 100.0&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 538,473&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:5.24%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 100.0&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.24%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:40.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Three Months Ended March 31, &lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:55.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Revenue by Type of Customer&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="4" style="vertical-align:bottom;white-space:nowrap;width:17.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="4" style="vertical-align:bottom;white-space:nowrap;width:16.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2019&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Industrial&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 275,198&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:6.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 39.3&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 168,660&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:5.24%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 31.3&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Education&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 109,584&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 15.7&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 66,743&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.24%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 12.4&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Office Buildings&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 75,572&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:6.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 10.8&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 66,212&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:5.24%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 12.3&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Healthcare&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 99,259&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 14.2&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 92,023&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.24%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 17.1&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Government&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 38,981&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:6.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 5.6&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 32,279&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:5.24%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 6.0&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Retail, Restaurants and Entertainment&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 61,203&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 8.7&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 59,391&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.24%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 11.0&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Multi-Family and Residential&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 18,731&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:6.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 2.7&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 30,235&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:5.24%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 5.6&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Other&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 21,603&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 3.0&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 22,930&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.24%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 4.3&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Total &lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.04%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 700,131&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:6.02%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 100.0&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 538,473&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:5.24%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 100.0&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.24%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:40.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Three Months Ended March 31, &lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:55.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Revenue by Activity Type&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="4" style="vertical-align:bottom;white-space:nowrap;width:17.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="4" style="vertical-align:bottom;white-space:nowrap;width:16.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2019&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;New Construction&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 347,400&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:6.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 49.6&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 223,960&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:5.24%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 41.6&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Existing Building Construction&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 207,166&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 29.6&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 182,296&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.24%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 33.8&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Service Projects&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 51,648&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:6.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 7.4&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 50,384&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:5.24%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 9.4&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Service Calls, Maintenance and Monitoring&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 93,917&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 13.4&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 81,833&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.24%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 15.2&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Total &lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.04%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 700,131&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:6.02%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 100.0&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 538,473&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:5.24%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 100.0&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;"&gt;Allowance for Credit Losses&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;We are required to estimate and record the expected credit losses over the contractual life of our financial assets measured at amortized cost including billed and unbilled accounts receivable, other receivables and costs and estimated earnings in excess of billings. Accounts receivable include amounts from work completed in which we have billed or have an unconditional right to bill our customers. Our trade receivables are contractually due in less than a year.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;We estimate our credit losses using a loss-rate method for each of our identified portfolio segments. Our portfolio segments are construction, service and other. While our construction and service financial assets are often with the same subset of customers and industries, our construction financial assets will generally have a lower loss-rate than service financial assets due to lien rights, which we are more likely to have on construction jobs. These lien rights result in lower credit loss expenses on average compared to receivables that do not have lien rights. Financial assets classified as Other include receivables that are not related to our core revenue producing activities such as receivables related to our acquisition activity from former owners, our vendor rebate program or receivables for estimated losses in excess of our insurance deductible, which are accrued with a corresponding receivable from our insurance carrier.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;Loss rates for our portfolios are based on numerous factors including our history of credit loss expense by portfolio, the financial strength of our customers and counterparties in each portfolio, the aging of our receivables, our expectation of likelihood of payment, macroeconomic trends in the U.S. and the current and forecasted non-residential construction market trends in the U.S.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;In addition to the loss-rate calculations discussed above, we also record allowance for credit losses for specific receivables that are deemed to have a higher risk profile than the rest of the respective pool of receivables, such as concerns about a specific customer going bankrupt and no longer being able to pay the receivables due to us.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;During the last two weeks of March this year, we experienced negative impacts to our business due to the business disruption caused by Coronavirus Disease 2019 (&#x201c;COVID-19&#x201d;). In March 2020, the World Health Organization categorized COVID-19 as a pandemic, and the President of the United States declared the COVID-19 outbreak a national emergency. At this time, it is difficult to quantify the impact COVID-19 will have on the rest of 2020, but we currently expect it to negatively impact us more in the second quarter than we experienced in the first quarter. The Company considered the impact of COVID-19 on the assumptions and estimates used to determine the results reported and asset valuations as of March 31, 2020.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;During the first quarter of 2020, we increased our loss rates and increased our specific reserves primarily due to the economic disruption caused by COVID-19 which is reflected in our bad debt expense in the current year. This &lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;increase was primarily, but not exclusively, due to concern over collectability of receivables from customers more directly impacted by COVID-19.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;Activity in our allowance for credit losses consisted of the following (in thousands):&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:51.01%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.41%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.79%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.62%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.94%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.8%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.8%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:51.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:10.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Service&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Construction&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:10.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Other&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:10.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Total&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:51.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Balance at beginning of year&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.79%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 3,192&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 3,400&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 315&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 6,907&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:51.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Impact of new accounting standard&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.79%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 310&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 331&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 54&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 695&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:51.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Bad debt expense (benefit)&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.79%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 2,754&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 1,797&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 4,551&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:51.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Deductions for uncollectible receivables written off, net of recoveries&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.79%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt;"&gt; (234)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt;"&gt; (6)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt;"&gt; (240)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:51.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Credit allowance of acquired companies on the acquisition date&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.79%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 352&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 352&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:51.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Purchase accounting adjustments&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.79%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 72&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 72&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:51.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Reclass to other current liabilities&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt;"&gt; (315)&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt;"&gt; (315)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:51.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Balance at March 31, 2020&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.41%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.79%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 6,022&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.94%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 5,946&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.8%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 54&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.8%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 12,022&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;"&gt;Contract Assets and Liabilities&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;Project contracts typically provide for a schedule of billings or invoices to the customer based on our job-to-date percentage of completion of specific tasks inherent in the fulfillment of our performance obligation(s). The schedules for such billings usually do not precisely match the schedule on which costs are incurred. Contract assets include unbilled amounts typically resulting from sales under long term contracts when the cost to cost method of revenue recognition is used, revenue recognized exceeds the amount billed to the customer and right to payment is conditional, subject to completing a milestone, such as a phase of the project.  Contract assets are generally classified as current.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;Contract liabilities consist of advance payments and billings in excess of revenue recognized.  Our contract assets and liabilities are reported in a net position on a contract by contract basis at the end of each reporting period. We classify advance payments and billings in excess of revenue recognized as current. It is very unusual for us to have advanced payments with a term of greater than one year; therefore, our contract assets and liabilities are usually all current.  If we have advanced payments with a term greater than one year, the noncurrent portion of advanced payments would be included in other long-term liabilities in our consolidated Balance Sheets.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;The following table presents the changes in contract assets and contract liabilities (in thousands):&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:49.94%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.19%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:49.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:23.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Three Months Ended March 31, &lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.61%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="4" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:21.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Year Ended December 31,&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:49.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:23.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:23.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2019&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:49.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:10.48%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Contract&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:10.81%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Contract&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:10.47%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Contract&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:10.47%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Contract&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:49.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:10.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Assets&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:10.81%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Liabilities&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:10.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Assets&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:10.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Liabilities&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:49.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Balance at beginning of period&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 2,736&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.19%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 166,918&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 10,213&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 130,986&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:49.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Change due to acquisitions / disposals&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 436&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.19%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 12,851&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 6,573&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 31,556&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:49.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Change due to conditional versus unconditional&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 4,394&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.19%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt; (14,050)&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:49.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Change in timing for performance obligation to be satisfied&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.19%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 35,337&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 4,376&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:49.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Change related to credit allowance&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.85%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt; (25)&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.85%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.85%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:49.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Balance at end of period&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.85%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 7,541&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.61%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.19%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 215,106&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.61%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.85%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 2,736&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.61%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.85%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 166,918&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;In the first three months of 2020 and 2019, we recognized revenue of $126.8 million and $105.6 million related to our contract liabilities at January 1, 2020 and January 1, 2019, respectively.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;We did not have any impairment losses recognized on our receivables or contract assets in the first three months of 2020 and 2019.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;"&gt;Remaining Performance Obligations&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;Remaining construction performance obligations represent the remaining transaction price of firm orders for which work has not been performed and excludes unexercised contract options.  As of March 31, 2020, the aggregate &lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;amount of the transaction price allocated to remaining performance obligations was $1.62 billion. The Company expects to recognize revenue on approximately 80-85% of the remaining performance obligations over the next &lt;/span&gt;&lt;span style="white-space:pre-wrap;"&gt;12&lt;/span&gt;&lt;span style="white-space:pre-wrap;"&gt; months, with the remaining recognized thereafter.  Our service maintenance agreements are generally &lt;/span&gt;&lt;span style="white-space:pre-wrap;"&gt;one-year&lt;/span&gt;&lt;span style="white-space:pre-wrap;"&gt; renewable agreements.  We have adopted the practical expedient that allows us to not include service maintenance contracts less than one year, therefore we do not report unfulfilled performance obligations for service maintenance agreements.  &lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;"&gt;Leases&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;We lease certain facilities, vehicles and equipment under noncancelable operating leases. The most significant portion of these noncancelable operating leases are for the facilities occupied by our corporate office and our operating locations.  Leases with an initial term of 12 months or less are not recorded on the Balance Sheet. We account for lease components separately from the non-lease components. We have certain leases with variable payments based on an index as well as some short-term leases on equipment and facilities. Variable lease expense and short-term lease expense were not material to our financial statements and aggregated to $1.9 million in the first three months of both 2020 and 2019. Lease right-of-use assets and liabilities are recognized at commencement date based on the present value of lease payments over the lease term. As most of our leases do not provide an implicit rate, we generally use our incremental borrowing rate based on the information available at commencement date in determining the present value of lease payments. The weighted average discount rate as of both March 31, 2020 and December 31, 2019 was 3.9%&lt;/span&gt;&lt;span style="white-space:pre-wrap;"&gt;. We recognize lease expense, including escalating lease payments and lease incentives, on a straight-line basis over the lease term. Lease expense for the three months ended March 31, 2020 and 2019 was $6.4 million and $5.6 million, respectively. &lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;The lease terms generally range from &lt;span style="-sec-ix-hidden:Hidden_-nS0JbAjwkm6CU1gvSV6wA"&gt;&lt;span style="color:#000000;font-family:'Times New Roman';font-size:10pt;font-style:normal;font-weight:normal;text-align:left;"&gt;three&lt;/span&gt;&lt;/span&gt; to ten years. Some leases include one or &lt;span style="-sec-ix-hidden:Hidden_HkW9XKKmCkidnlpjk4bKxw"&gt;&lt;span style="color:#000000;font-family:'Times New Roman';font-size:10pt;font-style:normal;font-weight:normal;text-align:left;"&gt;more&lt;/span&gt;&lt;/span&gt; options to renew, which may be exercised to extend the lease term. We include the exercise of lease renewal options in the lease term when it is reasonably certain that we will exercise the option and such exercise is at our sole discretion. The weighted average remaining lease term was 7.8 years at March 31, 2020 and 8.1 years at December 31, 2019.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;A majority of the Company&#x2019;s real property leases are with individuals or entities with whom we have no other business relationship. However, in certain instances the Company enters into real property leases with current or former employees. Rent paid to related parties for the three months ended March 31, 2020 and 2019 was approximately $0.9 million and $1.2 million, respectively. &lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;If we decide to cancel or terminate a lease before the end of its term, we would typically owe the lessor the remaining lease payments under the term of the lease. Our lease agreements do not contain any material residual value guarantees or material restrictive covenants.  On rare occasions we rent or sublease certain real estate assets that we no longer use to third parties.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;The following table summarizes the lease assets and liabilities included in the consolidated Balance Sheet as follows (in thousands):&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;div style="padding-left:36pt;"&gt;&lt;table style="border-collapse:collapse;font-size:16pt;padding-left:0pt;padding-right:0pt;width:79.99%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:middle;width:61.22%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.33%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.32%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:middle;width:61.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:17.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;March 31, 2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:17.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;December 31, 2019&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:middle;width:61.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Lease right-of-use assets&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:14.33%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 82,301&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:14.32%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 84,073&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:middle;width:61.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Lease liabilities:&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.33%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.32%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:middle;width:61.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="-sec-ix-hidden:Hidden_cHMJT5Ao6U2gVPc4lPA8KA"&gt;&lt;span style="color:#000000;font-family:'Times New Roman';font-size:10pt;font-style:normal;font-weight:normal;text-align:left;white-space:pre-wrap;"&gt;   Other current liabilities&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:14.33%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 14,515&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:14.32%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 14,016&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:middle;width:61.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;   Long-term lease liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 70,410&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 72,697&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:middle;width:61.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Total lease liabilities&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:14.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 84,925&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:14.32%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 86,713&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;The maturities of lease liabilities are as follows (in thousands):&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;div style="padding-left:36pt;"&gt;&lt;table style="border-collapse:collapse;font-size:16pt;padding-left:0pt;padding-right:0pt;width:79.99%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:85.27%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:2.66%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:1.65%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:85.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Year ending December 31&#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:2.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:1.65%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:85.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;2020 (excluding the three months ended March 31, 2020)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:2.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:1.65%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 13,376&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:85.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;2021&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:2.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:1.65%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 15,511&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:85.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;2022&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:2.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:1.65%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 13,261&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:85.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;2023&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:2.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:1.65%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 10,945&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:85.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;2024&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:2.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:1.65%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 9,436&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:85.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;Thereafter&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:2.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:1.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 36,982&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:85.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 24pt;"&gt;Total Lease Payments&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:2.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 24pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:1.65%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 99,511&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:85.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 24pt;"&gt;Less&#x2014;Present Value Discount&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:2.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 24pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:1.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt; (14,586)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:85.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 24pt;"&gt;Present Value of Lease Liabilities&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:2.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 24pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:1.65%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 84,925&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;Supplemental information related to leases was as follows (in thousands):&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:middle;width:67.69%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.19%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.17%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:67.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:32.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Three Months Ended March 31, &lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:67.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2019&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:middle;width:67.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Cash paid for amounts included in the measurement of lease liabilities&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.19%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 4,473&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.17%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 3,778&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:middle;width:67.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Lease right-of-use assets obtained in exchange for lease liabilities&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.19%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 2,278&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.17%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 174&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;"&gt;Income Taxes&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;We conduct business throughout the United States in virtually all fifty states. Our effective tax rate changes based upon our relative profitability, or lack thereof, in states with varying tax rates and rules. In addition, discrete items, such as tax law changes, judgments and legal structures, can impact our effective tax rate. These items can also include the tax treatment for impairment of goodwill and other intangible assets, changes in fair value of acquisition-related assets and liabilities, tax reserves for uncertain tax positions, accounting for losses associated with underperforming operations and noncontrolling interests.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="display:inline-block;text-indent:0pt;width:36pt;"/&gt;In the third quarter of 2019, we filed an amended federal return for 2015 to claim the credit for increasing research activities (&#x201c;R&amp;amp;D tax credits&#x201d;) and recorded a $4.6 million tax benefit that was fully offset by an increase in unrecognized tax benefits. We previously filed an amended federal return for 2014 to claim R&amp;amp;D tax credits during 2018 and recorded a $2.7 million tax benefit that was also fully offset by an increase in unrecognized tax benefits. These tax benefits were fully offset by increases in unrecognized tax benefits due to the uncertainty of the outcome from examinations opened by the Internal Revenue Service (the &#x201c;IRS&#x201d;). As a result, the R&amp;amp;D tax credits claimed have had no impact on our effective tax rates.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="display:inline-block;text-indent:0pt;width:36pt;"/&gt;For the year ended December 31, 2019, our provision for income taxes was reduced by $2.2 million due to benefits from the filing, and expected filing, of amended returns to claim the energy efficient commercial buildings deduction (the &#x201c;179D deduction&#x201d;) allocated to us.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;"&gt;Financial Instruments&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;Our financial instruments consist of cash and cash equivalents, accounts receivable, other receivables, accounts payable, life insurance policies, notes to former owners, a revolving credit facility and a term loan. We believe that the carrying values of these instruments on the accompanying Balance Sheets approximate their fair values.&lt;span style="font-style:italic;font-weight:bold;"&gt; &lt;/span&gt; &lt;/p&gt;</us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock>
    <us-gaap:BasisOfAccountingPolicyPolicyTextBlock
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tb_GPEA86ei-0mfFxV-1DhH2A">&lt;p style="font-family:'Times New Roman';font-size:10pt;padding-left:18pt;text-indent:-18pt;margin:0pt 0pt 0pt 36pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;padding-left:18pt;text-indent:-18pt;margin:0pt 0pt 0pt 36pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;"&gt;Basis of Presentation&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;These interim statements should be read in conjunction with the historical Consolidated Financial Statements and related notes of Comfort Systems included in the Annual Report on Form&#160;10-K as filed with the Securities and Exchange Commission (&#x201c;SEC&#x201d;) for the year ended December 31, 2019 (the &#x201c;Form&#160;10-K&#x201d;).&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;The accompanying unaudited consolidated financial statements were prepared using generally accepted accounting principles for interim financial information and the instructions to Form&#160;10-Q and applicable rules of Regulation&#160;S-X of the SEC. Accordingly, these financial statements do not include all the footnotes required by generally accepted accounting principles for complete financial statements and should be read in conjunction with the Form&#160;10-K. We believe all adjustments necessary for a fair presentation of these interim statements have been included and are of a normal and recurring nature. The results of operations for interim periods are not necessarily indicative of the results for the full fiscal year.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;</us-gaap:BasisOfAccountingPolicyPolicyTextBlock>
    <us-gaap:UseOfEstimates
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tb_XUJgbz9NkEeVmgLyao7asw">&lt;p style="font-family:'Times New Roman';font-size:10pt;padding-left:18pt;text-indent:-18pt;margin:0pt 0pt 0pt 36pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;"&gt;Use of Estimates&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;The preparation of financial statements in conformity with generally accepted accounting principles requires the use of estimates and assumptions by management in determining the reported amounts of assets and liabilities, revenue and expenses and disclosures regarding contingent assets and liabilities. Actual results could differ from those estimates. The most significant estimates used in our financial statements affect revenue and cost recognition for construction contracts, the allowance for credit losses, self-insurance accruals, deferred tax assets, warranty accruals, fair value accounting for acquisitions and the quantification of fair value for reporting units in connection with our goodwill impairment testing. &lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;</us-gaap:UseOfEstimates>
    <us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tb_3xkdl5H5_kywIG6Ig-kuTA">&lt;p style="font-family:'Times New Roman';font-size:10pt;padding-left:18pt;text-indent:-18pt;margin:0pt 0pt 0pt 36pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;"&gt;Recent Accounting Pronouncements&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;In June 2016, the FASB issued ASU No. 2016-13, &#x201c;Financial Instruments &#x2013; Credit Losses (Topic 326).&#x201d; The standard requires companies to consider historical experiences, current market conditions and reasonable and supportable forecasts in the measurement of expected credit losses. The standard requires us to accrue higher credit losses on financial assets compared to the legacy guidance on various items, such as contract assets and current receivables. ASU 2016-13 is effective for fiscal years beginning after December 15, 2019 and interim periods within those years. We adopted ASU No. 2016-13, &#x201c;Financial Instruments &#x2013; Credit Losses (Topic 326)&#x201d;, on January 1, 2020, and the impact was not material to our overall financial statements. The adoption of ASU No. 2016-13 resulted in an increase in Allowance for Credit Losses of $0.7 million, an increase to Deferred Tax Assets of $0.2 million and an impact of $0.5 million to Retained Earnings.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;In August 2018, the FASB issued ASU No. 2018-13, &#x201c;Fair Value Measurement (Topic 820): Disclosure Framework &#x2014; Changes to the Disclosure Requirements for Fair Value Measurement.&#x201d; This standard removes certain disclosure requirements including the valuation processes for Level 3 fair value measurements, the policy for timing of transfers between levels and the amount of and reasons for transfers between Level 1 and Level 2 of the fair value hierarchy. The standard requires certain additional disclosures for public entities, including disclosure of the changes in unrealized gains and losses included in Other Comprehensive Income for Level 3 fair value measurements and the range and weighted average of significant unobservable inputs used to develop Level 3 fair value measurements. ASU 2018-13 is effective for fiscal years beginning after December 15, 2019 and interim periods within those years. Certain amendments, including the amendment on changes in unrealized gains and losses and the range and weighted average of significant unobservable inputs, should be applied prospectively while other amendments should be applied retrospectively to all periods presented upon their effective date. We have modified our fair value disclosures to conform with the requirements of ASU No. 2018-13, &#x201c;Fair Value Measurement (Topic 820): Disclosure Framework &#x2014; Changes to the Disclosure Requirements for Fair Value Measurement&#x201d;, which we adopted on January 1, 2020.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;In December 2019, the FASB issued ASU No. 2019-12, &#x201c;Income Taxes (Topic 740): Simplifying the Accounting for Income Taxes.&#x201d; This standard simplifies the accounting for income taxes by eliminating certain exceptions to the guidance in Topic 740 related to the approach for intraperiod tax allocation, the methodology for calculating income taxes in an interim period and the recognition of deferred tax liabilities for outside basis differences. The standard also simplifies aspects of the accounting for franchise taxes and enacted changes in tax laws or rates and clarifies the accounting for transactions that result in a step-up in the tax basis of goodwill. ASU 2019-12 is effective for fiscal years beginning after December 15, 2020 and interim periods within that year. Early adoption is permitted. We are currently evaluating the potential impact of this authoritative guidance on our consolidated financial statements.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;padding-left:18pt;text-indent:-18pt;margin:0pt 0pt 0pt 36pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;</us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock>
    <us-gaap:AllowanceForDoubtfulAccountsReceivablePeriodIncreaseDecrease
      contextRef="Duration_1_1_2020_To_1_1_2020_srt_RestatementAxis_srt_RestatementAdjustmentMember_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201613Member_0DXS7brEcEepGp1b1XHdZQ"
      decimals="-5"
      id="Narr_fElXRItSu06wfK7tSY1mcw"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">700000</us-gaap:AllowanceForDoubtfulAccountsReceivablePeriodIncreaseDecrease>
    <us-gaap:ValuationAllowanceDeferredTaxAssetChangeInAmount
      contextRef="Duration_1_1_2020_To_1_1_2020_srt_RestatementAxis_srt_RestatementAdjustmentMember_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201613Member_0DXS7brEcEepGp1b1XHdZQ"
      decimals="-5"
      id="Narr_QVCbiGaa2Ue9QMCAIDl9sQ"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">200000</us-gaap:ValuationAllowanceDeferredTaxAssetChangeInAmount>
    <us-gaap:CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption
      contextRef="As_Of_1_1_2020_srt_RestatementAxis_srt_RestatementAdjustmentMember_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201613Member_whrOsgontU-FeCWeA-9vMw"
      decimals="-5"
      id="Narr_J_ewNTTq-0e5QyOh9xyKcQ"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">500000</us-gaap:CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption>
    <us-gaap:RevenueFromContractWithCustomerTextBlock
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Group_NM5exwMg20SxgyTZZ89QmQ">&lt;p style="font-family:'Times New Roman';font-size:10pt;padding-left:18pt;text-indent:-18pt;margin:0pt 0pt 0pt 36pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;"&gt;Revenue Recognition&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;Revenue is recognized when control of the promised goods or services is transferred to our customers, in an amount that reflects the consideration to which we expect to be entitled in exchange for those goods or services.  Sales-based taxes are excluded from revenue.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;We provide mechanical and electrical contracting services. Our mechanical segment principally includes HVAC, plumbing, piping and controls, as well as off-&lt;span style="white-space:pre-wrap;"&gt;site construction, monitoring and fire protection. Our electrical segment includes installation and servicing of electrical systems. We install, maintain, repair and replace products and systems throughout the United States.  All of our revenue is recognized over time as we deliver goods and services to our customers.  Revenue can be earned based on an agreed upon fixed price or based on actual costs incurred marked up at an agreed upon percentage.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;We account for a contract when: (i) it has approval and commitment from both parties, (ii) the rights of the parties are identified, (iii) payment terms are identified, (iv) the contract has commercial substance, and (v) collectability of consideration is probable. We consider the start of a project to be when the above criteria have been met and we either have written authorization from the customer to proceed or an executed contract.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;We generally do not incur significant incremental costs related to obtaining or fulfilling a contract prior to the start of a project. On rare occasions, when significant pre-contract costs are incurred, they are capitalized and amortized on a percentage of completion basis over the life of the contract. We do not currently have any capitalized obtainment or fulfillment costs on our Balance Sheet and did not incur any impairment loss on such costs in the current year.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;Due to the nature of the work required to be performed on many of our performance obligations, the estimation of total revenue and cost at completion (the process described below in more detail) is complex, subject to many variables and requires significant judgment. The consideration to which we are entitled on our long-term contracts may include both fixed and variable amounts.  Variable amounts can either increase or decrease the transaction price.   A common example of variable amounts that can either increase or decrease contract value are pending change orders that represent contract modifications for which a change in scope has been authorized or acknowledged by our customer, but the final adjustment to contract price is yet to be negotiated.  Other examples of positive variable revenue include amounts awarded upon achievement of certain performance metrics, program milestones or cost of completion date &lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;targets and can be based upon customer discretion.  Variable amounts can result in a deduction from contract revenue if we fail to meet stated performance requirements, such as complying with the construction schedule.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;Contracts are often modified to account for changes in contract specifications and requirements. We consider contract modifications to exist when the modification either creates new or changes the existing enforceable rights and obligations. Most of our contract modifications are for goods or services that are not distinct from the existing performance obligation(s).  The effect of a contract modification on the transaction price, and our measure of progress for the performance obligation to which it relates, is recognized as an adjustment to revenue (either as an increase or decrease) on a cumulative catchup basis. &lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;We have a Company-wide policy requiring periodic review of the Estimate at Completion in which management reviews the progress and execution of our performance obligations and estimated remaining obligations. As part of this process, management reviews information including, but not limited to, any outstanding key contract matters, progress towards completion and the related program schedule, identified risks and opportunities and the related changes in estimates of revenue and costs. The risks and opportunities include management's judgment about the ability and cost to achieve the schedule (e.g., the number and type of milestone events), technical requirements (e.g., a newly developed product versus a mature product) and other contract requirements. Management must make assumptions and estimates regarding labor productivity and availability, the complexity of the work to be performed, the availability of materials, the length of time to complete the performance obligation (e.g., to estimate increases in wages and prices for materials and related support cost allocations), execution by our subcontractors, the availability and timing of funding from our customer, and overhead cost rates, among other variables. &lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;Based on this analysis, any adjustments to revenue, cost of services, and the related impact to operating income are recognized as necessary in the quarter when they become known. These adjustments may result from positive program performance if we determine we will be successful in mitigating risks surrounding the technical, schedule and cost aspects of those performance obligations or realizing related opportunities and may result in an increase in operating income during the performance of individual performance obligations. Likewise, if we determine we will not be successful in mitigating these risks or realizing related opportunities, these adjustments may result in a decrease in operating income. Changes in estimates of revenue, cost of services and the related impact to operating income are recognized quarterly on a cumulative catchup basis, meaning we recognize in the current period the cumulative effect of the changes on current and prior periods based on a performance obligation's percentage of completion. A significant change in one or more of these estimates could affect the profitability of one or more of our performance obligations. For projects in which estimates of total costs to be incurred on a performance obligation exceed total estimates of revenue to be earned, a provision for the entire loss on the performance obligation is recognized in the period the loss is determined. &lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;In the first three months of 2020 and 2019, net revenue recognized from our performance obligations satisfied in previous periods was not material.   &lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;"&gt;Disaggregation of Revenue&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;Our consolidated 2020 revenue was derived from contracts to provide service activities in the mechanical and electrical services segments we serve. Refer to Note 9 &#x2013; Segment Information for additional information on our reportable segments. We disaggregate our revenue from contracts with customers by activity, customer type and contract type, as we believe it best depicts how the nature, amount, timing and uncertainty of our revenue and cash flows are affected by economic factors.  See details in the following tables (dollars in thousands):&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;padding-left:18pt;text-indent:-18pt;margin:0pt 0pt 0pt 36pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.02%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.24%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="11" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:40.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Three Months Ended March 31, &lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:55.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Revenue by Service Provided&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="4" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:17.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="4" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:16.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2019&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Mechanical Services&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 565,464&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:6.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 80.8&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 534,585&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:5.24%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 99.3&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Electrical Services&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 134,667&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 19.2&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 3,888&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.24%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 0.7&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Total &lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.04%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 700,131&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:6.02%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 100.0&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 538,473&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:5.24%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 100.0&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.24%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:40.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Three Months Ended March 31, &lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:55.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Revenue by Type of Customer&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="4" style="vertical-align:bottom;white-space:nowrap;width:17.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="4" style="vertical-align:bottom;white-space:nowrap;width:16.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2019&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Industrial&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 275,198&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:6.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 39.3&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 168,660&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:5.24%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 31.3&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Education&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 109,584&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 15.7&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 66,743&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.24%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 12.4&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Office Buildings&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 75,572&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:6.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 10.8&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 66,212&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:5.24%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 12.3&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Healthcare&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 99,259&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 14.2&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 92,023&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.24%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 17.1&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Government&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 38,981&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:6.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 5.6&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 32,279&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:5.24%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 6.0&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Retail, Restaurants and Entertainment&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 61,203&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 8.7&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 59,391&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.24%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 11.0&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Multi-Family and Residential&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 18,731&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:6.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 2.7&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 30,235&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:5.24%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 5.6&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Other&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 21,603&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 3.0&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 22,930&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.24%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 4.3&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Total &lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.04%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 700,131&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:6.02%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 100.0&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 538,473&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:5.24%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 100.0&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.24%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:40.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Three Months Ended March 31, &lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:55.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Revenue by Activity Type&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="4" style="vertical-align:bottom;white-space:nowrap;width:17.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="4" style="vertical-align:bottom;white-space:nowrap;width:16.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2019&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;New Construction&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 347,400&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:6.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 49.6&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 223,960&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:5.24%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 41.6&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Existing Building Construction&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 207,166&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 29.6&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 182,296&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.24%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 33.8&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Service Projects&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 51,648&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:6.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 7.4&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 50,384&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:5.24%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 9.4&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Service Calls, Maintenance and Monitoring&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 93,917&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 13.4&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 81,833&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.24%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 15.2&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Total &lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.04%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 700,131&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:6.02%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 100.0&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 538,473&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:5.24%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 100.0&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;"&gt;Contract Assets and Liabilities&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;Project contracts typically provide for a schedule of billings or invoices to the customer based on our job-to-date percentage of completion of specific tasks inherent in the fulfillment of our performance obligation(s). The schedules for such billings usually do not precisely match the schedule on which costs are incurred. Contract assets include unbilled amounts typically resulting from sales under long term contracts when the cost to cost method of revenue recognition is used, revenue recognized exceeds the amount billed to the customer and right to payment is conditional, subject to completing a milestone, such as a phase of the project.  Contract assets are generally classified as current.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;Contract liabilities consist of advance payments and billings in excess of revenue recognized.  Our contract assets and liabilities are reported in a net position on a contract by contract basis at the end of each reporting period. We classify advance payments and billings in excess of revenue recognized as current. It is very unusual for us to have advanced payments with a term of greater than one year; therefore, our contract assets and liabilities are usually all current.  If we have advanced payments with a term greater than one year, the noncurrent portion of advanced payments would be included in other long-term liabilities in our consolidated Balance Sheets.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;The following table presents the changes in contract assets and contract liabilities (in thousands):&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:49.94%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.19%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:49.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:23.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Three Months Ended March 31, &lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.61%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="4" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:21.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Year Ended December 31,&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:49.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:23.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:23.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2019&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:49.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:10.48%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Contract&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:10.81%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Contract&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:10.47%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Contract&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:10.47%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Contract&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:49.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:10.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Assets&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:10.81%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Liabilities&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:10.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Assets&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:10.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Liabilities&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:49.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Balance at beginning of period&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 2,736&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.19%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 166,918&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 10,213&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 130,986&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:49.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Change due to acquisitions / disposals&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 436&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.19%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 12,851&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 6,573&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 31,556&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:49.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Change due to conditional versus unconditional&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 4,394&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.19%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt; (14,050)&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:49.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Change in timing for performance obligation to be satisfied&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.19%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 35,337&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 4,376&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:49.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Change related to credit allowance&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.85%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt; (25)&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.85%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.85%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:49.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Balance at end of period&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.85%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 7,541&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.61%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.19%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 215,106&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.61%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.85%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 2,736&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.61%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.85%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 166,918&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;In the first three months of 2020 and 2019, we recognized revenue of $126.8 million and $105.6 million related to our contract liabilities at January 1, 2020 and January 1, 2019, respectively.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;We did not have any impairment losses recognized on our receivables or contract assets in the first three months of 2020 and 2019.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;"&gt;Remaining Performance Obligations&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;Remaining construction performance obligations represent the remaining transaction price of firm orders for which work has not been performed and excludes unexercised contract options.  As of March 31, 2020, the aggregate &lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;amount of the transaction price allocated to remaining performance obligations was $1.62 billion. The Company expects to recognize revenue on approximately 80-85% of the remaining performance obligations over the next &lt;/span&gt;&lt;span style="white-space:pre-wrap;"&gt;12&lt;/span&gt;&lt;span style="white-space:pre-wrap;"&gt; months, with the remaining recognized thereafter.  Our service maintenance agreements are generally &lt;/span&gt;&lt;span style="white-space:pre-wrap;"&gt;one-year&lt;/span&gt;&lt;span style="white-space:pre-wrap;"&gt; renewable agreements.  We have adopted the practical expedient that allows us to not include service maintenance contracts less than one year, therefore we do not report unfulfilled performance obligations for service maintenance agreements.  &lt;/span&gt;&lt;/p&gt;</us-gaap:RevenueFromContractWithCustomerTextBlock>
    <us-gaap:DisaggregationOfRevenueTableTextBlock
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tb_TopHsQjXzke1GeapXOqlxQ">&lt;p style="font-family:'Times New Roman';font-size:10pt;padding-left:18pt;text-indent:-18pt;margin:0pt 0pt 0pt 36pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.02%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.24%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="11" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:40.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Three Months Ended March 31, &lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:55.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Revenue by Service Provided&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="4" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:17.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="4" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:16.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2019&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Mechanical Services&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 565,464&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:6.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 80.8&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 534,585&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;&#160;&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:5.24%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 99.3&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Electrical Services&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 134,667&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 19.2&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 3,888&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.24%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 0.7&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Total &lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.04%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 700,131&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:6.02%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 100.0&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 538,473&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:5.24%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 100.0&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.24%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:40.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Three Months Ended March 31, &lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:55.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Revenue by Type of Customer&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="4" style="vertical-align:bottom;white-space:nowrap;width:17.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="4" style="vertical-align:bottom;white-space:nowrap;width:16.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2019&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Industrial&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 275,198&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:6.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 39.3&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 168,660&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:5.24%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 31.3&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Education&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 109,584&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 15.7&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 66,743&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.24%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 12.4&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Office Buildings&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 75,572&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:6.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 10.8&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 66,212&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:5.24%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 12.3&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Healthcare&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 99,259&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 14.2&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 92,023&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.24%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 17.1&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Government&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 38,981&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:6.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 5.6&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 32,279&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:5.24%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 6.0&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Retail, Restaurants and Entertainment&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 61,203&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 8.7&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 59,391&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.24%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 11.0&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Multi-Family and Residential&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 18,731&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:6.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 2.7&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 30,235&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:5.24%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 5.6&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Other&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 21,603&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 3.0&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 22,930&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.24%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 4.3&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Total &lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.04%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 700,131&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:6.02%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 100.0&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 538,473&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:5.24%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 100.0&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.24%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:40.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Three Months Ended March 31, &lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:55.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Revenue by Activity Type&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="4" style="vertical-align:bottom;white-space:nowrap;width:17.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="4" style="vertical-align:bottom;white-space:nowrap;width:16.44%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2019&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;New Construction&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 347,400&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:6.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 49.6&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 223,960&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:5.24%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 41.6&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Existing Building Construction&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 207,166&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 29.6&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 182,296&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.24%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 33.8&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Service Projects&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.04%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 51,648&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:6.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 7.4&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 50,384&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:5.24%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 9.4&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Service Calls, Maintenance and Monitoring&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 93,917&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:6.02%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 13.4&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.51%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.15%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 81,833&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.24%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 15.2&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:55.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Total &lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.04%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 700,131&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:6.02%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 100.0&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.1%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.51%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.15%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 538,473&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:5.24%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 100.0&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:DisaggregationOfRevenueTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_ProductOrServiceAxis_fix_MechanicalServicesMember_UNZ9WqtO8kmCNzgmis_kHw"
      decimals="-3"
      id="Tc_RFbenNtxB0Kf-vXa4OVZDw_3_4"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">565464000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <fix:PercentageOfRevenueFromContractWithCustomer
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_ProductOrServiceAxis_fix_MechanicalServicesMember_UNZ9WqtO8kmCNzgmis_kHw"
      decimals="3"
      id="Tc_zCmkWgyCKUeb1TAgryTUTw_3_6"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.808</fix:PercentageOfRevenueFromContractWithCustomer>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2019_To_3_31_2019_srt_ProductOrServiceAxis_fix_MechanicalServicesMember_qg0cB-QyA0-3cqya6547Ww"
      decimals="-3"
      id="Tc_DJqpXgQhtEKX1ZJQlVQkWg_3_10"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">534585000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <fix:PercentageOfRevenueFromContractWithCustomer
      contextRef="Duration_1_1_2019_To_3_31_2019_srt_ProductOrServiceAxis_fix_MechanicalServicesMember_qg0cB-QyA0-3cqya6547Ww"
      decimals="3"
      id="Tc_BLq31Bx7gUiWDw0TaOwnWQ_3_12"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.993</fix:PercentageOfRevenueFromContractWithCustomer>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_ProductOrServiceAxis_fix_ElectricalServicesMember_lWfQQ7DHLUerGVUsb2dxhA"
      decimals="-3"
      id="Tc_3xIjEtpOckmXgShv-NwOBw_4_4"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">134667000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <fix:PercentageOfRevenueFromContractWithCustomer
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_ProductOrServiceAxis_fix_ElectricalServicesMember_lWfQQ7DHLUerGVUsb2dxhA"
      decimals="3"
      id="Tc_fD97g3W-hUClupndWvMEgQ_4_6"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.192</fix:PercentageOfRevenueFromContractWithCustomer>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2019_To_3_31_2019_srt_ProductOrServiceAxis_fix_ElectricalServicesMember_dqTTpjZ_wkWP8CuO8K0SgA"
      decimals="-3"
      id="Tc_N-NCNjSrskmmFdeWHMO_zA_4_10"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">3888000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <fix:PercentageOfRevenueFromContractWithCustomer
      contextRef="Duration_1_1_2019_To_3_31_2019_srt_ProductOrServiceAxis_fix_ElectricalServicesMember_dqTTpjZ_wkWP8CuO8K0SgA"
      decimals="3"
      id="Tc_TwlPQsnQ6kuLBsgNMm_5Jg_4_12"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.007</fix:PercentageOfRevenueFromContractWithCustomer>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_iqQZVW4BOUqDB4GR1pq_Ng_5_4"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">700131000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <fix:PercentageOfRevenueFromContractWithCustomer
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="3"
      id="Tc_rhMMwSfIiEK_FF5Pq_oNAA_5_6"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">1.000</fix:PercentageOfRevenueFromContractWithCustomer>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_Q0yihiuD70yNpOOaMyPnnA_5_10"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">538473000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <fix:PercentageOfRevenueFromContractWithCustomer
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="3"
      id="Tc_UrKqoIl2GEyiW8qArb3sbA_5_12"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">1.000</fix:PercentageOfRevenueFromContractWithCustomer>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_MajorCustomersAxis_fix_IndustrialPropertyCustomerMember_9Lejv0ygm0KWJkFjdQdMfQ"
      decimals="-3"
      id="Tc_Xfp6_AudwkGFACSia_hPQw_9_4"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">275198000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <fix:PercentageOfRevenueFromContractWithCustomer
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_MajorCustomersAxis_fix_IndustrialPropertyCustomerMember_9Lejv0ygm0KWJkFjdQdMfQ"
      decimals="3"
      id="Tc_8A6XOiSDP0WXBsxjcclhTA_9_6"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.393</fix:PercentageOfRevenueFromContractWithCustomer>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2019_To_3_31_2019_srt_MajorCustomersAxis_fix_IndustrialPropertyCustomerMember_xrU_zKo6EkaSiM4yCfm_OQ"
      decimals="-3"
      id="Tc_EWrpgfXbh0OfR0T8XdAGQA_9_10"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">168660000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <fix:PercentageOfRevenueFromContractWithCustomer
      contextRef="Duration_1_1_2019_To_3_31_2019_srt_MajorCustomersAxis_fix_IndustrialPropertyCustomerMember_xrU_zKo6EkaSiM4yCfm_OQ"
      decimals="3"
      id="Tc_AfAUpPjRvUubERPOyaE-vg_9_12"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.313</fix:PercentageOfRevenueFromContractWithCustomer>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_MajorCustomersAxis_fix_EducationMember_RTxhzVrlYkSTCp8TG4taOw"
      decimals="-3"
      id="Tc_PyMjK0RIxk-xn_S69nL4_w_10_4"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">109584000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <fix:PercentageOfRevenueFromContractWithCustomer
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_MajorCustomersAxis_fix_EducationMember_RTxhzVrlYkSTCp8TG4taOw"
      decimals="3"
      id="Tc_fG15mBhHbUyRb0KUGpS_gA_10_6"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.157</fix:PercentageOfRevenueFromContractWithCustomer>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2019_To_3_31_2019_srt_MajorCustomersAxis_fix_EducationMember_6HHGAQVx9EC-fUp4kxgg7w"
      decimals="-3"
      id="Tc_poZUDKIDLUKrKIOHGReBDw_10_10"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">66743000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <fix:PercentageOfRevenueFromContractWithCustomer
      contextRef="Duration_1_1_2019_To_3_31_2019_srt_MajorCustomersAxis_fix_EducationMember_6HHGAQVx9EC-fUp4kxgg7w"
      decimals="3"
      id="Tc_CVcoIDoyjU2jq8yzf7TrIg_10_12"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.124</fix:PercentageOfRevenueFromContractWithCustomer>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_MajorCustomersAxis_fix_OfficeBuildingCustomerMember_zufzD7XdekaigP0Rwi4jzw"
      decimals="-3"
      id="Tc_QacZaDBEHUqC-C3aIBHYgw_11_4"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">75572000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <fix:PercentageOfRevenueFromContractWithCustomer
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_MajorCustomersAxis_fix_OfficeBuildingCustomerMember_zufzD7XdekaigP0Rwi4jzw"
      decimals="3"
      id="Tc_0u5fJjmDP0CmQQQZKBlikQ_11_6"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.108</fix:PercentageOfRevenueFromContractWithCustomer>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2019_To_3_31_2019_srt_MajorCustomersAxis_fix_OfficeBuildingCustomerMember_g0t7_CJ76USTTP_hFNxKag"
      decimals="-3"
      id="Tc_mkUw0ARRCEGNxAF1msG-sA_11_10"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">66212000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <fix:PercentageOfRevenueFromContractWithCustomer
      contextRef="Duration_1_1_2019_To_3_31_2019_srt_MajorCustomersAxis_fix_OfficeBuildingCustomerMember_g0t7_CJ76USTTP_hFNxKag"
      decimals="3"
      id="Tc_v7xaV6_HrUiKCbL2Oa6ThA_11_12"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.123</fix:PercentageOfRevenueFromContractWithCustomer>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_MajorCustomersAxis_fix_HealthcareSectorCustomerMember_eWlv5X6F6EOGj-jS0vK_7g"
      decimals="-3"
      id="Tc_Z2pWaZDTCUWb60VO953XnA_12_4"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">99259000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <fix:PercentageOfRevenueFromContractWithCustomer
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_MajorCustomersAxis_fix_HealthcareSectorCustomerMember_eWlv5X6F6EOGj-jS0vK_7g"
      decimals="3"
      id="Tc_lFZVShWV4UOd8iPSlXMYbw_12_6"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.142</fix:PercentageOfRevenueFromContractWithCustomer>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2019_To_3_31_2019_srt_MajorCustomersAxis_fix_HealthcareSectorCustomerMember_aAYku7RgpEu0vZ0orcIn8A"
      decimals="-3"
      id="Tc_9qVIgtvlokC0XCFVcm3WvQ_12_10"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">92023000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <fix:PercentageOfRevenueFromContractWithCustomer
      contextRef="Duration_1_1_2019_To_3_31_2019_srt_MajorCustomersAxis_fix_HealthcareSectorCustomerMember_aAYku7RgpEu0vZ0orcIn8A"
      decimals="3"
      id="Tc_i5LCKygAFUGreXUoFX2Hdw_12_12"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.171</fix:PercentageOfRevenueFromContractWithCustomer>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_MajorCustomersAxis_fix_GovernmentCustomerMember_GHEUDp2A4Ey-kvFvKsEkPw"
      decimals="-3"
      id="Tc_gLUq0vkVNEavJLnircl0Pg_13_4"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">38981000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <fix:PercentageOfRevenueFromContractWithCustomer
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_MajorCustomersAxis_fix_GovernmentCustomerMember_GHEUDp2A4Ey-kvFvKsEkPw"
      decimals="3"
      id="Tc_8lssFGp35kuhsLxs1Uf1YA_13_6"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.056</fix:PercentageOfRevenueFromContractWithCustomer>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2019_To_3_31_2019_srt_MajorCustomersAxis_fix_GovernmentCustomerMember_AkHCssyKxUiD1UK9HaQEEg"
      decimals="-3"
      id="Tc_gip8baQykE-W1AL6QXyuFA_13_10"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">32279000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <fix:PercentageOfRevenueFromContractWithCustomer
      contextRef="Duration_1_1_2019_To_3_31_2019_srt_MajorCustomersAxis_fix_GovernmentCustomerMember_AkHCssyKxUiD1UK9HaQEEg"
      decimals="3"
      id="Tc_cOZHnUKNS0eb45QG3t-rMw_13_12"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.060</fix:PercentageOfRevenueFromContractWithCustomer>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_MajorCustomersAxis_fix_RetailRestaurantsAndEntertainmentMember_4kd_TTQBZUCvUS3LQ-g8IQ"
      decimals="-3"
      id="Tc_G5XLSL2yUU-xyUj46La6fw_14_4"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">61203000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <fix:PercentageOfRevenueFromContractWithCustomer
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_MajorCustomersAxis_fix_RetailRestaurantsAndEntertainmentMember_4kd_TTQBZUCvUS3LQ-g8IQ"
      decimals="3"
      id="Tc_AJnzdFum5UmeTteNE5XIeA_14_6"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.087</fix:PercentageOfRevenueFromContractWithCustomer>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2019_To_3_31_2019_srt_MajorCustomersAxis_fix_RetailRestaurantsAndEntertainmentMember_Cs5zY083cUe01Xu3t9r3BQ"
      decimals="-3"
      id="Tc_aKa8lvwD20u5EjfSEVhcag_14_10"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">59391000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <fix:PercentageOfRevenueFromContractWithCustomer
      contextRef="Duration_1_1_2019_To_3_31_2019_srt_MajorCustomersAxis_fix_RetailRestaurantsAndEntertainmentMember_Cs5zY083cUe01Xu3t9r3BQ"
      decimals="3"
      id="Tc_sjipXjIjO0GCZ_b_z0cPRQ_14_12"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.110</fix:PercentageOfRevenueFromContractWithCustomer>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_MajorCustomersAxis_fix_MultiFamilyAndResidentialMember_WBi-o7KgikG-S5nxoSC8ew"
      decimals="-3"
      id="Tc_IvBVNr8gokiHH6_ridoKPA_15_4"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">18731000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <fix:PercentageOfRevenueFromContractWithCustomer
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_MajorCustomersAxis_fix_MultiFamilyAndResidentialMember_WBi-o7KgikG-S5nxoSC8ew"
      decimals="3"
      id="Tc_YZKE6GEwb0evARYrV9m7UA_15_6"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.027</fix:PercentageOfRevenueFromContractWithCustomer>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2019_To_3_31_2019_srt_MajorCustomersAxis_fix_MultiFamilyAndResidentialMember_-Ag0udIJfE6aers8bpBHIg"
      decimals="-3"
      id="Tc_Bn6Bug_KnUeQXJ_9exTSPw_15_10"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">30235000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <fix:PercentageOfRevenueFromContractWithCustomer
      contextRef="Duration_1_1_2019_To_3_31_2019_srt_MajorCustomersAxis_fix_MultiFamilyAndResidentialMember_-Ag0udIJfE6aers8bpBHIg"
      decimals="3"
      id="Tc_HZZYa35ey0mQ8aNGOrcX-A_15_12"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.056</fix:PercentageOfRevenueFromContractWithCustomer>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_MajorCustomersAxis_us-gaap_OtherCustomerMember__YHMM4PKfUqr3SVjchV0BQ"
      decimals="-3"
      id="Tc_Bp9qH6EXyUWQTw009-VRiQ_16_4"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">21603000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <fix:PercentageOfRevenueFromContractWithCustomer
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_MajorCustomersAxis_us-gaap_OtherCustomerMember__YHMM4PKfUqr3SVjchV0BQ"
      decimals="3"
      id="Tc_dM2vwau4IUaB2RjuTKXFcQ_16_6"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.030</fix:PercentageOfRevenueFromContractWithCustomer>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2019_To_3_31_2019_srt_MajorCustomersAxis_us-gaap_OtherCustomerMember__zVy1dkoL0Wv9-6W9HLXvw"
      decimals="-3"
      id="Tc_noCLO3ebeU6h_hZcHfLNEA_16_10"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">22930000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <fix:PercentageOfRevenueFromContractWithCustomer
      contextRef="Duration_1_1_2019_To_3_31_2019_srt_MajorCustomersAxis_us-gaap_OtherCustomerMember__zVy1dkoL0Wv9-6W9HLXvw"
      decimals="3"
      id="Tc_kzGHJlLsJkOfsd993uuJfQ_16_12"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.043</fix:PercentageOfRevenueFromContractWithCustomer>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc__tJa1icSM0KILi1Id9xBDw_17_4"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">700131000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <fix:PercentageOfRevenueFromContractWithCustomer
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="3"
      id="Tc_8cm44Sq_t0-4WS5HCqi9Hw_17_6"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">1.000</fix:PercentageOfRevenueFromContractWithCustomer>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_yrlJZ3PLmkOXXOn2oTRuFg_17_10"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">538473000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <fix:PercentageOfRevenueFromContractWithCustomer
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="3"
      id="Tc_OzkOjdCMmkuWDbY0kTyFRw_17_12"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">1.000</fix:PercentageOfRevenueFromContractWithCustomer>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2020_To_3_31_2020_us-gaap_StatementBusinessSegmentsAxis_fix_NewConstructionMember_vYBtU9R2bk2Vx6VGxlDRrQ"
      decimals="-3"
      id="Tc_pzyGBa_hOUGNLZpozFayfQ_21_4"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">347400000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <fix:PercentageOfRevenueFromContractWithCustomer
      contextRef="Duration_1_1_2020_To_3_31_2020_us-gaap_StatementBusinessSegmentsAxis_fix_NewConstructionMember_vYBtU9R2bk2Vx6VGxlDRrQ"
      decimals="3"
      id="Tc_aT-kKtSA9U6HJPOXM5ZZlA_21_6"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.496</fix:PercentageOfRevenueFromContractWithCustomer>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2019_To_3_31_2019_us-gaap_StatementBusinessSegmentsAxis_fix_NewConstructionMember_9ohFulvOKUqeUDKGsKwifQ"
      decimals="-3"
      id="Tc_cRuo_QspVEuNFkZzZzC2zw_21_10"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">223960000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <fix:PercentageOfRevenueFromContractWithCustomer
      contextRef="Duration_1_1_2019_To_3_31_2019_us-gaap_StatementBusinessSegmentsAxis_fix_NewConstructionMember_9ohFulvOKUqeUDKGsKwifQ"
      decimals="3"
      id="Tc_xK2H2wyhP0uMutwnhPhWCA_21_12"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.416</fix:PercentageOfRevenueFromContractWithCustomer>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2020_To_3_31_2020_us-gaap_StatementBusinessSegmentsAxis_fix_ExistingBuildingConstructionMember_RAlfI7R0YECJqpBzUbSoWA"
      decimals="-3"
      id="Tc_d4oF7-KSi0aJW_rxqB9e3g_22_4"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">207166000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <fix:PercentageOfRevenueFromContractWithCustomer
      contextRef="Duration_1_1_2020_To_3_31_2020_us-gaap_StatementBusinessSegmentsAxis_fix_ExistingBuildingConstructionMember_RAlfI7R0YECJqpBzUbSoWA"
      decimals="3"
      id="Tc_SYfJM3c7D06OCaYqWR9L8A_22_6"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.296</fix:PercentageOfRevenueFromContractWithCustomer>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2019_To_3_31_2019_us-gaap_StatementBusinessSegmentsAxis_fix_ExistingBuildingConstructionMember_TaSZTS5FyUK-LxJkJ-C2ZQ"
      decimals="-3"
      id="Tc_nb5kwHh1qEqi4T6vTvAyMQ_22_10"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">182296000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <fix:PercentageOfRevenueFromContractWithCustomer
      contextRef="Duration_1_1_2019_To_3_31_2019_us-gaap_StatementBusinessSegmentsAxis_fix_ExistingBuildingConstructionMember_TaSZTS5FyUK-LxJkJ-C2ZQ"
      decimals="3"
      id="Tc_5pVTZbqu50WeHcHNxvam3A_22_12"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.338</fix:PercentageOfRevenueFromContractWithCustomer>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2020_To_3_31_2020_us-gaap_StatementBusinessSegmentsAxis_fix_ServiceProjectsMember_yY70glVyEUyDDxXRh9wq3g"
      decimals="-3"
      id="Tc__OSNrUV4R0KA6KVMJCADoA_23_4"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">51648000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <fix:PercentageOfRevenueFromContractWithCustomer
      contextRef="Duration_1_1_2020_To_3_31_2020_us-gaap_StatementBusinessSegmentsAxis_fix_ServiceProjectsMember_yY70glVyEUyDDxXRh9wq3g"
      decimals="3"
      id="Tc_wgELo9rdsU-fPTVJ9LMpmA_23_6"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.074</fix:PercentageOfRevenueFromContractWithCustomer>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2019_To_3_31_2019_us-gaap_StatementBusinessSegmentsAxis_fix_ServiceProjectsMember_UMzmkthBlUG73CeiCbgEwQ"
      decimals="-3"
      id="Tc_98pl-pqkJE-pELdmUaOw4Q_23_10"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">50384000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <fix:PercentageOfRevenueFromContractWithCustomer
      contextRef="Duration_1_1_2019_To_3_31_2019_us-gaap_StatementBusinessSegmentsAxis_fix_ServiceProjectsMember_UMzmkthBlUG73CeiCbgEwQ"
      decimals="3"
      id="Tc_KQUKx4NlUkKp3hiearLaSg_23_12"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.094</fix:PercentageOfRevenueFromContractWithCustomer>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2020_To_3_31_2020_us-gaap_StatementBusinessSegmentsAxis_fix_ServiceCallsMaintenanceAndMonitoringMember_Aptz5T5zyE-QZf_zEYJ49w"
      decimals="-3"
      id="Tc_DFsXFpjiz06i9etCjeP9Fw_24_4"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">93917000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <fix:PercentageOfRevenueFromContractWithCustomer
      contextRef="Duration_1_1_2020_To_3_31_2020_us-gaap_StatementBusinessSegmentsAxis_fix_ServiceCallsMaintenanceAndMonitoringMember_Aptz5T5zyE-QZf_zEYJ49w"
      decimals="3"
      id="Tc_NbHfdNmvekCzF_tLUDdIcw_24_6"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.134</fix:PercentageOfRevenueFromContractWithCustomer>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2019_To_3_31_2019_us-gaap_StatementBusinessSegmentsAxis_fix_ServiceCallsMaintenanceAndMonitoringMember_I1bFFY7GaEKWV4j11ODYJw"
      decimals="-3"
      id="Tc_Nwx7aaiggUKU4WzrSo3zcg_24_10"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">81833000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <fix:PercentageOfRevenueFromContractWithCustomer
      contextRef="Duration_1_1_2019_To_3_31_2019_us-gaap_StatementBusinessSegmentsAxis_fix_ServiceCallsMaintenanceAndMonitoringMember_I1bFFY7GaEKWV4j11ODYJw"
      decimals="3"
      id="Tc_andQjsVwnE-RzVdz-cPUpA_24_12"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.152</fix:PercentageOfRevenueFromContractWithCustomer>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_8qtAl_eJv0yVcs2rN27W7Q_25_4"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">700131000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <fix:PercentageOfRevenueFromContractWithCustomer
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="3"
      id="Tc_-Q99tZnwXkOfO4lWuaW6ZA_25_6"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">1.000</fix:PercentageOfRevenueFromContractWithCustomer>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_Yw7PfTbOikejLOpsJW8p-g_25_10"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">538473000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <fix:PercentageOfRevenueFromContractWithCustomer
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="3"
      id="Tc_pOvZasAVxEuh77dJ4Lq00g_25_12"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">1.000</fix:PercentageOfRevenueFromContractWithCustomer>
    <us-gaap:CreditLossFinancialInstrumentPolicyTextBlock
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tb_zlLBCMcAKkmx-6uGd9Tkcg">&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;"&gt;Allowance for Credit Losses&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;We are required to estimate and record the expected credit losses over the contractual life of our financial assets measured at amortized cost including billed and unbilled accounts receivable, other receivables and costs and estimated earnings in excess of billings. Accounts receivable include amounts from work completed in which we have billed or have an unconditional right to bill our customers. Our trade receivables are contractually due in less than a year.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;We estimate our credit losses using a loss-rate method for each of our identified portfolio segments. Our portfolio segments are construction, service and other. While our construction and service financial assets are often with the same subset of customers and industries, our construction financial assets will generally have a lower loss-rate than service financial assets due to lien rights, which we are more likely to have on construction jobs. These lien rights result in lower credit loss expenses on average compared to receivables that do not have lien rights. Financial assets classified as Other include receivables that are not related to our core revenue producing activities such as receivables related to our acquisition activity from former owners, our vendor rebate program or receivables for estimated losses in excess of our insurance deductible, which are accrued with a corresponding receivable from our insurance carrier.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;Loss rates for our portfolios are based on numerous factors including our history of credit loss expense by portfolio, the financial strength of our customers and counterparties in each portfolio, the aging of our receivables, our expectation of likelihood of payment, macroeconomic trends in the U.S. and the current and forecasted non-residential construction market trends in the U.S.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;In addition to the loss-rate calculations discussed above, we also record allowance for credit losses for specific receivables that are deemed to have a higher risk profile than the rest of the respective pool of receivables, such as concerns about a specific customer going bankrupt and no longer being able to pay the receivables due to us.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;During the last two weeks of March this year, we experienced negative impacts to our business due to the business disruption caused by Coronavirus Disease 2019 (&#x201c;COVID-19&#x201d;). In March 2020, the World Health Organization categorized COVID-19 as a pandemic, and the President of the United States declared the COVID-19 outbreak a national emergency. At this time, it is difficult to quantify the impact COVID-19 will have on the rest of 2020, but we currently expect it to negatively impact us more in the second quarter than we experienced in the first quarter. The Company considered the impact of COVID-19 on the assumptions and estimates used to determine the results reported and asset valuations as of March 31, 2020.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;During the first quarter of 2020, we increased our loss rates and increased our specific reserves primarily due to the economic disruption caused by COVID-19 which is reflected in our bad debt expense in the current year. This &lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;increase was primarily, but not exclusively, due to concern over collectability of receivables from customers more directly impacted by COVID-19.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;Activity in our allowance for credit losses consisted of the following (in thousands):&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:51.01%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.41%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.79%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.62%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.94%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.8%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.8%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:51.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:10.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Service&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Construction&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:10.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Other&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:10.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Total&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:51.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Balance at beginning of year&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.79%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 3,192&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 3,400&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 315&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 6,907&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:51.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Impact of new accounting standard&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.79%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 310&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 331&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 54&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 695&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:51.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Bad debt expense (benefit)&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.79%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 2,754&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 1,797&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 4,551&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:51.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Deductions for uncollectible receivables written off, net of recoveries&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.79%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt;"&gt; (234)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt;"&gt; (6)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt;"&gt; (240)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:51.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Credit allowance of acquired companies on the acquisition date&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.79%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 352&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 352&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:51.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Purchase accounting adjustments&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.79%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 72&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 72&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:51.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Reclass to other current liabilities&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt;"&gt; (315)&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt;"&gt; (315)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:51.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Balance at March 31, 2020&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.41%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.79%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 6,022&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.94%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 5,946&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.8%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 54&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.8%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 12,022&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:CreditLossFinancialInstrumentPolicyTextBlock>
    <us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tb_2F89r74dokO2KUkqDQJKog">&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;Activity in our allowance for credit losses consisted of the following (in thousands):&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:51.01%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.41%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.79%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.62%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.94%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.8%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.8%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:51.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:10.21%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Service&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Construction&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:10.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Other&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:9pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:10.23%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Total&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:51.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Balance at beginning of year&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.79%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 3,192&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 3,400&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 315&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 6,907&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:51.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Impact of new accounting standard&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.79%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 310&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 331&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 54&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 695&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:51.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Bad debt expense (benefit)&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.79%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 2,754&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 1,797&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 4,551&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:51.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Deductions for uncollectible receivables written off, net of recoveries&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.79%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt;"&gt; (234)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt;"&gt; (6)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt;"&gt; (240)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:51.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Credit allowance of acquired companies on the acquisition date&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.79%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 352&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 352&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:51.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Purchase accounting adjustments&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.79%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 72&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.8%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 72&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:51.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Reclass to other current liabilities&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt;"&gt; (315)&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.43%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.8%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt;"&gt; (315)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:51.01%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;Balance at March 31, 2020&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.41%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.79%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 6,022&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.46%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.94%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 5,946&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.8%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 54&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.63%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="font-size:9pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.43%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.8%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:9pt;text-align:right;margin:0pt 3pt 0pt 0pt;"&gt; 12,022&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="As_Of_12_31_2019_srt_ProductOrServiceAxis_fix_ServicesActivityMember_e5ZZPpP3_0Gr862TJ62DIQ"
      decimals="-3"
      id="Tc_V0r97D9j5ka2NnWyVSSTMg_2_2"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">3192000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="As_Of_12_31_2019_srt_ProductOrServiceAxis_fix_ConstructionActivitiesMember_tVDDavcEKUW680eK4kA3cg"
      decimals="-3"
      id="Tc_t4pqBzFE_Em7eILDEG2aMQ_2_5"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">3400000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="As_Of_12_31_2019_srt_ProductOrServiceAxis_us-gaap_ProductAndServiceOtherMember__Dzyf-SG00WEGnAxSvYaGQ"
      decimals="-3"
      id="Tc_9Ts6qFjVQUSLMy3vgEUfMQ_2_8"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">315000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_P-1vWFlwn0OBLvy6DEQGTA_2_11"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">6907000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <us-gaap:AccountsReceivableChangeInMethodCreditLossExpenseReversal
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_ProductOrServiceAxis_fix_ServicesActivityMember_nXLENef_9USAhg4HBp6ifg"
      decimals="-3"
      id="Tc_CuiRsDNB1E-mGEBBPfbRuA_3_2"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">310000</us-gaap:AccountsReceivableChangeInMethodCreditLossExpenseReversal>
    <us-gaap:AccountsReceivableChangeInMethodCreditLossExpenseReversal
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_ProductOrServiceAxis_fix_ConstructionActivitiesMember_cwSX7TuvZU2UURMcDRwdSg"
      decimals="-3"
      id="Tc_O4HOkOQ3z0iUZmYhKGQzbQ_3_5"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">331000</us-gaap:AccountsReceivableChangeInMethodCreditLossExpenseReversal>
    <us-gaap:AccountsReceivableChangeInMethodCreditLossExpenseReversal
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_ProductOrServiceAxis_us-gaap_ProductAndServiceOtherMember_f0cP5U3JOUy4PQ-xH8TnnA"
      decimals="-3"
      id="Tc_Sl8U9NK_fk6hNrtMHoRwKg_3_8"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">54000</us-gaap:AccountsReceivableChangeInMethodCreditLossExpenseReversal>
    <us-gaap:AccountsReceivableChangeInMethodCreditLossExpenseReversal
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_wZrvTu1twUCLWfbsULOsHA_3_11"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">695000</us-gaap:AccountsReceivableChangeInMethodCreditLossExpenseReversal>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_ProductOrServiceAxis_fix_ServicesActivityMember_nXLENef_9USAhg4HBp6ifg"
      decimals="-3"
      id="Tc_TQVInFmxR0uuqBUTJ8J3gA_4_2"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">2754000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_ProductOrServiceAxis_fix_ConstructionActivitiesMember_cwSX7TuvZU2UURMcDRwdSg"
      decimals="-3"
      id="Tc_zxGgLJ2h20e1CuuVyCn4eQ_4_5"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">1797000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc__XPYjaXQ5E6RiG-zf23Cdw_4_11"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">4551000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_ProductOrServiceAxis_fix_ServicesActivityMember_nXLENef_9USAhg4HBp6ifg"
      decimals="-3"
      id="Tc_H1eLr6iDbU-OaS7Y6GnYFg_5_2"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">234000</us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_ProductOrServiceAxis_fix_ConstructionActivitiesMember_cwSX7TuvZU2UURMcDRwdSg"
      decimals="-3"
      id="Tc_VEjLZOBkHUuwh7F17cyHwg_5_5"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">6000</us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_av5n59_WP0uHHI04K0lDvA_5_11"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">240000</us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs>
    <fix:AllowanceForDoubtfulAccountsReceivableAcquired
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_ProductOrServiceAxis_fix_ConstructionActivitiesMember_cwSX7TuvZU2UURMcDRwdSg"
      decimals="-3"
      id="Tc_XrOJR7MmtUigO_BfclLFQw_6_5"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">352000</fix:AllowanceForDoubtfulAccountsReceivableAcquired>
    <fix:AllowanceForDoubtfulAccountsReceivableAcquired
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_vRiUFmdjK0e01XiqjjfqgA_6_11"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">352000</fix:AllowanceForDoubtfulAccountsReceivableAcquired>
    <fix:AccountsReceivableAllowanceForCreditLossPurchaseAccountingAdjustment
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_ProductOrServiceAxis_fix_ConstructionActivitiesMember_cwSX7TuvZU2UURMcDRwdSg"
      decimals="-3"
      id="Tc_J3rJdXTa8k2qvW88sO-86A_7_5"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">72000</fix:AccountsReceivableAllowanceForCreditLossPurchaseAccountingAdjustment>
    <fix:AccountsReceivableAllowanceForCreditLossPurchaseAccountingAdjustment
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_MWmN6M4o_UCjwab6nF0IEg_7_11"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">72000</fix:AccountsReceivableAllowanceForCreditLossPurchaseAccountingAdjustment>
    <fix:ReclassificationOfAllowanceForCreditLosses
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_ProductOrServiceAxis_us-gaap_ProductAndServiceOtherMember_f0cP5U3JOUy4PQ-xH8TnnA"
      decimals="-3"
      id="Tc_k8tlxnSiukeBFKtkZhDZvw_8_8"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">-315000</fix:ReclassificationOfAllowanceForCreditLosses>
    <fix:ReclassificationOfAllowanceForCreditLosses
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_DGjO64ot4kq35jRX3pDJmA_8_11"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">-315000</fix:ReclassificationOfAllowanceForCreditLosses>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="As_Of_3_31_2020_srt_ProductOrServiceAxis_fix_ServicesActivityMember_IAnI8OIlE0Oc1_d2tANuhw"
      decimals="-3"
      id="Tc_IgKfypEgb0Wqce-EEIY3Cw_9_2"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">6022000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="As_Of_3_31_2020_srt_ProductOrServiceAxis_fix_ConstructionActivitiesMember_OH02noIrqkybLCmrRCGKUQ"
      decimals="-3"
      id="Tc_s6NROpBpNUC88R1cvwEjlA_9_5"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">5946000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="As_Of_3_31_2020_srt_ProductOrServiceAxis_us-gaap_ProductAndServiceOtherMember_UbF5sHhva0aUkvHmGjx5bA"
      decimals="-3"
      id="Tc_BL-086y_bESgHBSB8ldIwQ_9_8"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">54000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_e0gp3XoYjEOki3D_kvVksQ_9_11"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">12022000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tb_hZrIp34jtEC4VQN2KtHGCg">&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;The following table presents the changes in contract assets and contract liabilities (in thousands):&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:49.94%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.19%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:49.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:23.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Three Months Ended March 31, &lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.61%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="4" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:21.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Year Ended December 31,&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:49.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:23.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:23.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2019&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:49.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:10.48%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Contract&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:10.81%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Contract&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:10.47%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Contract&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:10.47%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Contract&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:49.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:10.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Assets&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:10.81%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Liabilities&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:10.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Assets&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:10.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Liabilities&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:49.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Balance at beginning of period&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 2,736&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.19%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 166,918&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 10,213&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 130,986&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:49.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Change due to acquisitions / disposals&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 436&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.19%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 12,851&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 6,573&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 31,556&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:49.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Change due to conditional versus unconditional&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 4,394&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.19%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt; (14,050)&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:49.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Change in timing for performance obligation to be satisfied&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.19%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 35,337&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 4,376&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:49.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Change related to credit allowance&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.85%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt; (25)&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.19%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.85%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.61%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.85%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:49.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Balance at end of period&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.85%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 7,541&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.61%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.19%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 215,106&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.61%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.85%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 2,736&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.61%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.85%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 166,918&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;</us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock>
    <us-gaap:ContractWithCustomerAssetNetCurrent
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_ogBOUbKk20el1yrDfX_AIw_5_2"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">2736000</us-gaap:ContractWithCustomerAssetNetCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_bya7URKMmU6cjrC4iWKi_g_5_5"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">166918000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerAssetNetCurrent
      contextRef="As_Of_12_31_2018_kVfJ9VO0mku_31JRqsvE7Q"
      decimals="-3"
      id="Tc_BVEElTOJFE27_gxEhLmWog_5_8"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">10213000</us-gaap:ContractWithCustomerAssetNetCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="As_Of_12_31_2018_kVfJ9VO0mku_31JRqsvE7Q"
      decimals="-3"
      id="Tc_9KI3tynm5UusbRepVmi5xQ_5_11"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">130986000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerAssetIncreaseDecreaseForContractAcquiredInBusinessCombination
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_6x98cSmsDkyWi3yIztHINQ_6_2"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">436000</us-gaap:ContractWithCustomerAssetIncreaseDecreaseForContractAcquiredInBusinessCombination>
    <us-gaap:ContractWithCustomerLiabilityIncreaseDecreaseForContractAcquiredInBusinessCombination
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_NzDtsOaXbEeaVgYs780bQQ_6_5"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">12851000</us-gaap:ContractWithCustomerLiabilityIncreaseDecreaseForContractAcquiredInBusinessCombination>
    <us-gaap:ContractWithCustomerAssetIncreaseDecreaseForContractAcquiredInBusinessCombination
      contextRef="Duration_1_1_2019_To_12_31_2019_mifjwy6BiUKM2xZgEf4c5Q"
      decimals="-3"
      id="Tc_Rvyrl09yokKxmznhJEYs6g_6_8"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">6573000</us-gaap:ContractWithCustomerAssetIncreaseDecreaseForContractAcquiredInBusinessCombination>
    <us-gaap:ContractWithCustomerLiabilityIncreaseDecreaseForContractAcquiredInBusinessCombination
      contextRef="Duration_1_1_2019_To_12_31_2019_mifjwy6BiUKM2xZgEf4c5Q"
      decimals="-3"
      id="Tc_P8fM3Y1_P0aNKnGrRcHvNQ_6_11"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">31556000</us-gaap:ContractWithCustomerLiabilityIncreaseDecreaseForContractAcquiredInBusinessCombination>
    <fix:ContractWithCustomerAssetIncreaseDecreaseForChangeDueToConditionalVersusUnconditional
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_RSCxAYWpwkqiDaSW6K4J5g_7_2"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">4394000</fix:ContractWithCustomerAssetIncreaseDecreaseForChangeDueToConditionalVersusUnconditional>
    <fix:ContractWithCustomerAssetIncreaseDecreaseForChangeDueToConditionalVersusUnconditional
      contextRef="Duration_1_1_2019_To_12_31_2019_mifjwy6BiUKM2xZgEf4c5Q"
      decimals="-3"
      id="Tc_SDVyUGjEi0-juxwCQquAgQ_7_8"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">-14050000</fix:ContractWithCustomerAssetIncreaseDecreaseForChangeDueToConditionalVersusUnconditional>
    <us-gaap:ContractWithCustomerLiabilityChangeInTimeframePerformanceObligationSatisfiedRevenueRecognized
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_E2h7xOr_eUW21bTV7xslSg_8_5"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">35337000</us-gaap:ContractWithCustomerLiabilityChangeInTimeframePerformanceObligationSatisfiedRevenueRecognized>
    <us-gaap:ContractWithCustomerLiabilityChangeInTimeframePerformanceObligationSatisfiedRevenueRecognized
      contextRef="Duration_1_1_2019_To_12_31_2019_mifjwy6BiUKM2xZgEf4c5Q"
      decimals="-3"
      id="Tc_54kz5IlvXUa_6GMi4lVmuQ_8_11"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">4376000</us-gaap:ContractWithCustomerLiabilityChangeInTimeframePerformanceObligationSatisfiedRevenueRecognized>
    <us-gaap:ContractWithCustomerReceivableCreditLossExpenseReversal
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_A23k8y8dW0K3WqDW3Nzf8g_9_2"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">-25000</us-gaap:ContractWithCustomerReceivableCreditLossExpenseReversal>
    <us-gaap:ContractWithCustomerAssetNetCurrent
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_nfIItams_0-F39RT9VdwLw_10_2"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">7541000</us-gaap:ContractWithCustomerAssetNetCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_u9jWlJWgV0m5nzLezr8WqQ_10_5"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">215106000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerAssetNetCurrent
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_pZ-VrANBD0K4urFh7GvjiA_10_8"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">2736000</us-gaap:ContractWithCustomerAssetNetCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_E-IBwjuJKkWoAqlzEM0OVg_10_11"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">166918000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityRevenueRecognized
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-5"
      id="Narr_jrnH_YeHVECVsVQN5M5y0w"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">126800000</us-gaap:ContractWithCustomerLiabilityRevenueRecognized>
    <us-gaap:ContractWithCustomerLiabilityRevenueRecognized
      contextRef="Duration_1_1_2019_To_3_31_2019_us-gaap_InitialApplicationPeriodCumulativeEffectTransitionAxis_us-gaap_CalculatedUnderRevenueGuidanceInEffectBeforeTopic606Member_b1IpMxaSUka4k9KGHHuM3g"
      decimals="-5"
      id="Narr_DDaeY2q9hk-UD06jqXKx0g"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">105600000</us-gaap:ContractWithCustomerLiabilityRevenueRecognized>
    <us-gaap:RevenueRemainingPerformanceObligation
      contextRef="As_Of_3_31_2020_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_fix_cnst_2019-04-01_WstwGY5Y-kq_idqJNdFhKw"
      decimals="-6"
      id="Narr_d9zM32NdgEeXiHUEsiemgw"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">1620000000</us-gaap:RevenueRemainingPerformanceObligation>
    <us-gaap:RevenueRemainingPerformanceObligationPercentage
      contextRef="As_Of_3_31_2020_srt_RangeAxis_srt_MinimumMember_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_fix_cnst_2019-04-01_hV0wJBc9t0iCkEPN0HgXsg"
      decimals="2"
      id="Narr_34B5i-7ucE2UMKd39A2R5w"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.80</us-gaap:RevenueRemainingPerformanceObligationPercentage>
    <us-gaap:RevenueRemainingPerformanceObligationPercentage
      contextRef="As_Of_3_31_2020_srt_RangeAxis_srt_MaximumMember_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_fix_cnst_2019-04-01_YxPxe2CwAUKWmbh52T48-Q"
      decimals="2"
      id="Narr_U0bcAGDBIE-94Vyd_McWNw"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.85</us-gaap:RevenueRemainingPerformanceObligationPercentage>
    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1
      contextRef="As_Of_3_31_2020_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis_fix_cnst_2019-04-01_WstwGY5Y-kq_idqJNdFhKw"
      id="Narr_3PxU3oMqj02ZdSCmYc50zA">P12M</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1>
    <fix:RenewableServiceMaintenanceAgreementsTerm
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Narr_xdp2N3u8S0ONgPLxzRcUUA">P1Y</fix:RenewableServiceMaintenanceAgreementsTerm>
    <us-gaap:LesseeLeasesPolicyTextBlock
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tb_bgNnCsHjcUONJYHGS_nItQ">&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;"&gt;Leases&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;We lease certain facilities, vehicles and equipment under noncancelable operating leases. The most significant portion of these noncancelable operating leases are for the facilities occupied by our corporate office and our operating locations.  Leases with an initial term of 12 months or less are not recorded on the Balance Sheet. We account for lease components separately from the non-lease components. We have certain leases with variable payments based on an index as well as some short-term leases on equipment and facilities. Variable lease expense and short-term lease expense were not material to our financial statements and aggregated to $1.9 million in the first three months of both 2020 and 2019. Lease right-of-use assets and liabilities are recognized at commencement date based on the present value of lease payments over the lease term. As most of our leases do not provide an implicit rate, we generally use our incremental borrowing rate based on the information available at commencement date in determining the present value of lease payments. The weighted average discount rate as of both March 31, 2020 and December 31, 2019 was 3.9%&lt;/span&gt;&lt;span style="white-space:pre-wrap;"&gt;. We recognize lease expense, including escalating lease payments and lease incentives, on a straight-line basis over the lease term. Lease expense for the three months ended March 31, 2020 and 2019 was $6.4 million and $5.6 million, respectively. &lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;The lease terms generally range from &lt;span style="-sec-ix-hidden:Hidden_-nS0JbAjwkm6CU1gvSV6wA"&gt;&lt;span style="color:#000000;font-family:'Times New Roman';font-size:10pt;font-style:normal;font-weight:normal;text-align:left;"&gt;three&lt;/span&gt;&lt;/span&gt; to ten years. Some leases include one or &lt;span style="-sec-ix-hidden:Hidden_HkW9XKKmCkidnlpjk4bKxw"&gt;&lt;span style="color:#000000;font-family:'Times New Roman';font-size:10pt;font-style:normal;font-weight:normal;text-align:left;"&gt;more&lt;/span&gt;&lt;/span&gt; options to renew, which may be exercised to extend the lease term. We include the exercise of lease renewal options in the lease term when it is reasonably certain that we will exercise the option and such exercise is at our sole discretion. The weighted average remaining lease term was 7.8 years at March 31, 2020 and 8.1 years at December 31, 2019.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;A majority of the Company&#x2019;s real property leases are with individuals or entities with whom we have no other business relationship. However, in certain instances the Company enters into real property leases with current or former employees. Rent paid to related parties for the three months ended March 31, 2020 and 2019 was approximately $0.9 million and $1.2 million, respectively. &lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;If we decide to cancel or terminate a lease before the end of its term, we would typically owe the lessor the remaining lease payments under the term of the lease. Our lease agreements do not contain any material residual value guarantees or material restrictive covenants.  On rare occasions we rent or sublease certain real estate assets that we no longer use to third parties.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;The following table summarizes the lease assets and liabilities included in the consolidated Balance Sheet as follows (in thousands):&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;div style="padding-left:36pt;"&gt;&lt;table style="border-collapse:collapse;font-size:16pt;padding-left:0pt;padding-right:0pt;width:79.99%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:middle;width:61.22%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.33%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.32%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:middle;width:61.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:17.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;March 31, 2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:17.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;December 31, 2019&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:middle;width:61.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Lease right-of-use assets&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:14.33%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 82,301&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:14.32%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 84,073&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:middle;width:61.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Lease liabilities:&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.33%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.32%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:middle;width:61.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="-sec-ix-hidden:Hidden_cHMJT5Ao6U2gVPc4lPA8KA"&gt;&lt;span style="color:#000000;font-family:'Times New Roman';font-size:10pt;font-style:normal;font-weight:normal;text-align:left;white-space:pre-wrap;"&gt;   Other current liabilities&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:14.33%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 14,515&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:14.32%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 14,016&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:middle;width:61.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;   Long-term lease liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 70,410&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 72,697&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:middle;width:61.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Total lease liabilities&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:14.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 84,925&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:14.32%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 86,713&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;The maturities of lease liabilities are as follows (in thousands):&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;div style="padding-left:36pt;"&gt;&lt;table style="border-collapse:collapse;font-size:16pt;padding-left:0pt;padding-right:0pt;width:79.99%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:85.27%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:2.66%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:1.65%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:85.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Year ending December 31&#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:2.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:1.65%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:85.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;2020 (excluding the three months ended March 31, 2020)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:2.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:1.65%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 13,376&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:85.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;2021&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:2.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:1.65%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 15,511&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:85.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;2022&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:2.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:1.65%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 13,261&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:85.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;2023&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:2.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:1.65%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 10,945&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:85.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;2024&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:2.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:1.65%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 9,436&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:85.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;Thereafter&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:2.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:1.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 36,982&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:85.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 24pt;"&gt;Total Lease Payments&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:2.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 24pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:1.65%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 99,511&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:85.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 24pt;"&gt;Less&#x2014;Present Value Discount&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:2.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 24pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:1.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt; (14,586)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:85.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 24pt;"&gt;Present Value of Lease Liabilities&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:2.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 24pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:1.65%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 84,925&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;Supplemental information related to leases was as follows (in thousands):&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:middle;width:67.69%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.19%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.17%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:67.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:32.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Three Months Ended March 31, &lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:67.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2019&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:middle;width:67.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Cash paid for amounts included in the measurement of lease liabilities&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.19%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 4,473&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.17%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 3,778&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:middle;width:67.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Lease right-of-use assets obtained in exchange for lease liabilities&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.19%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 2,278&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.17%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 174&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:LesseeLeasesPolicyTextBlock>
    <fix:VariableLeaseAndShortTermLeaseCost
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-5"
      id="Narr_LToPU4peN02Zpi6YhBnEcw"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">1900000</fix:VariableLeaseAndShortTermLeaseCost>
    <fix:VariableLeaseAndShortTermLeaseCost
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-5"
      id="Narr_JCJVN9QPVESgaSjn4-jLVg"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">1900000</fix:VariableLeaseAndShortTermLeaseCost>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="4"
      id="Narr_8dnJFw8YgUmfisrQjtJFOA"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.039</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="4"
      id="Narr_hI8-X0SfPEiA3AwjmAyIiQ"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.039</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:OperatingLeaseExpense
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-5"
      id="Narr_ewKtGV7dVkOSTJRY0rKBlQ"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">6400000</us-gaap:OperatingLeaseExpense>
    <us-gaap:OperatingLeaseExpense
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-5"
      id="Narr_zfOQnfCBhUe1PLzh27wCkg"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">5600000</us-gaap:OperatingLeaseExpense>
    <us-gaap:LesseeOperatingLeaseTermOfContract
      contextRef="As_Of_3_31_2020_srt_RangeAxis_srt_MaximumMember_cS_kip8l3EePL86y5bnWXg"
      id="Narr_wzv8q8G1uUmIBVTEQi0hcA">P10Y</us-gaap:LesseeOperatingLeaseTermOfContract>
    <fix:NumberOfOptionsToRenew
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_RangeAxis_srt_MinimumMember_s1XmG36v3EiCuksGz73-eA"
      decimals="INF"
      id="Narr_H_0NBMZ1jE-sMKWfDFu79A"
      unitRef="Unit_Standard_Option_VO49u7wtREaLKaISqOOi2A">1</fix:NumberOfOptionsToRenew>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      id="Narr_cGbF6zlD-UuI_xiuuGM0xw">P7Y9M18D</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      id="Narr_4YzBXGY8m0Wrc1o32DOwdw">P8Y1M6D</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:PaymentsForRent
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-5"
      id="Narr_cs10jVVeE0-Bux7mFBzH9Q"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">900000</us-gaap:PaymentsForRent>
    <us-gaap:PaymentsForRent
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-5"
      id="Narr_tTO7bUecS0WbtiCyVjUPTg"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">1200000</us-gaap:PaymentsForRent>
    <fix:ScheduleOfLeaseAssetsAndLiabilitiesTableTextBlock
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tb_cA8WK74t9E-W5LTZSZuXkA">&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;The following table summarizes the lease assets and liabilities included in the consolidated Balance Sheet as follows (in thousands):&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;div style="padding-left:36pt;"&gt;&lt;table style="border-collapse:collapse;font-size:16pt;padding-left:0pt;padding-right:0pt;width:79.99%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:middle;width:61.22%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.33%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.32%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:middle;width:61.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:17.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;March 31, 2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:17.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;December 31, 2019&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:middle;width:61.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Lease right-of-use assets&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:14.33%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 82,301&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:14.32%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 84,073&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:middle;width:61.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Lease liabilities:&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.33%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.32%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:middle;width:61.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="-sec-ix-hidden:Hidden_cHMJT5Ao6U2gVPc4lPA8KA"&gt;&lt;span style="color:#000000;font-family:'Times New Roman';font-size:10pt;font-style:normal;font-weight:normal;text-align:left;white-space:pre-wrap;"&gt;   Other current liabilities&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:14.33%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 14,515&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:14.32%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 14,016&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:middle;width:61.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;   Long-term lease liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 70,410&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.03%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:14.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 72,697&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:middle;width:61.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Total lease liabilities&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:14.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 84,925&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:4.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.03%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:14.32%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 86,713&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</fix:ScheduleOfLeaseAssetsAndLiabilitiesTableTextBlock>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_Z1D-SmHrPEG8dicVtwV79Q_2_2"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">82301000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_fd_bZcWZ5k2ZNMozAjevQg_2_5"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">84073000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_6zdfJBi8KE2yGqT71Rn6Hw_4_2"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">14515000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_-w7PK1XM2E6rxNsWq1p8qQ_4_5"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">14016000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_D_hq16h-WUaYk-sNwVHMgw_5_2"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">70410000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_W__IwfzzzE2aKySROPV87A_5_5"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">72697000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiability
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_I-QR8SxTOUuPG3d2fXo-9Q_6_2"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">84925000</us-gaap:OperatingLeaseLiability>
    <us-gaap:OperatingLeaseLiability
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_lV3K7TgviU-R_-ZcGtm0Dw_6_5"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">86713000</us-gaap:OperatingLeaseLiability>
    <us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tb_u5f7XYr7tEmiZO1Gerd0sg">&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;The maturities of lease liabilities are as follows (in thousands):&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;div style="padding-left:36pt;"&gt;&lt;table style="border-collapse:collapse;font-size:16pt;padding-left:0pt;padding-right:0pt;width:79.99%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:85.27%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:2.66%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:1.65%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:85.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Year ending December 31&#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:2.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:1.65%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:85.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;2020 (excluding the three months ended March 31, 2020)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:2.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:1.65%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 13,376&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:85.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;2021&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:2.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:1.65%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 15,511&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:85.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;2022&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:2.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:1.65%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 13,261&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:85.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;2023&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:2.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:1.65%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 10,945&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:85.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;2024&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:2.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:1.65%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 9,436&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:85.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;Thereafter&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:2.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:1.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 36,982&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:85.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 24pt;"&gt;Total Lease Payments&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:2.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 24pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:1.65%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 99,511&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:85.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 24pt;"&gt;Less&#x2014;Present Value Discount&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:2.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 24pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:1.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt; (14,586)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:85.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 24pt;"&gt;Present Value of Lease Liabilities&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:2.66%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 24pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:1.65%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.4%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 84,925&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_noNO2Hj_60uwaDWi3Bj-ww_2_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">13376000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_XEnIdCBnKUyIg4nJRinHIw_3_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">15511000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_eQDWbCJqd0mMPjDW9hwgLA_4_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">13261000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_6BILaQ_XqESZFJ2997usqw_5_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">10945000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_7Utf3cKPKU2pH75lJPWYyA_6_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">9436000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_ZYrLVnwjOUOdLatzl2z_Yw_7_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">36982000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_AOqdOh0-fkO3-EUoGSTy0g_8_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">99511000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_Lt4mw4FOkUmqPbYBxl2aKA_9_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">14586000</us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:OperatingLeaseLiability
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_TWyGAc3xYkyi_ZkshCHiXQ_10_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">84925000</us-gaap:OperatingLeaseLiability>
    <fix:ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tb_lBg8USBOFE-EO3eI1qjxTw">&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;Supplemental information related to leases was as follows (in thousands):&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:middle;width:67.69%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.19%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.03%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.17%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:67.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="5" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:32.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Three Months Ended March 31, &lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:67.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.14%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:15.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2019&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:middle;width:67.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Cash paid for amounts included in the measurement of lease liabilities&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.19%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 4,473&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:13.17%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 3,778&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:middle;width:67.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Lease right-of-use assets obtained in exchange for lease liabilities&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.19%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 2,278&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.03%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:13.17%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 174&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</fix:ScheduleOfSupplementalInformationRelatedToLeasesTableTextBlock>
    <us-gaap:OperatingLeasePayments
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_1vrszz031EKEISKQixTIXw_3_2"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">4473000</us-gaap:OperatingLeasePayments>
    <us-gaap:OperatingLeasePayments
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_HyP-Q2LQwEa7feSxLFOZqw_3_5"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">3778000</us-gaap:OperatingLeasePayments>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_lt_xKsgBYEi-dg5Y4WZZbA_4_2"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">2278000</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_vUivPbF7FUqyy2ZJtF6t5A_4_5"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">174000</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <us-gaap:IncomeTaxPolicyTextBlock
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tb_GEp5U9LSv0KNzTkwh4yYbw">&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;"&gt;Income Taxes&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;We conduct business throughout the United States in virtually all fifty states. Our effective tax rate changes based upon our relative profitability, or lack thereof, in states with varying tax rates and rules. In addition, discrete items, such as tax law changes, judgments and legal structures, can impact our effective tax rate. These items can also include the tax treatment for impairment of goodwill and other intangible assets, changes in fair value of acquisition-related assets and liabilities, tax reserves for uncertain tax positions, accounting for losses associated with underperforming operations and noncontrolling interests.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="display:inline-block;text-indent:0pt;width:36pt;"/&gt;In the third quarter of 2019, we filed an amended federal return for 2015 to claim the credit for increasing research activities (&#x201c;R&amp;amp;D tax credits&#x201d;) and recorded a $4.6 million tax benefit that was fully offset by an increase in unrecognized tax benefits. We previously filed an amended federal return for 2014 to claim R&amp;amp;D tax credits during 2018 and recorded a $2.7 million tax benefit that was also fully offset by an increase in unrecognized tax benefits. These tax benefits were fully offset by increases in unrecognized tax benefits due to the uncertainty of the outcome from examinations opened by the Internal Revenue Service (the &#x201c;IRS&#x201d;). As a result, the R&amp;amp;D tax credits claimed have had no impact on our effective tax rates.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="display:inline-block;text-indent:0pt;width:36pt;"/&gt;For the year ended December 31, 2019, our provision for income taxes was reduced by $2.2 million due to benefits from the filing, and expected filing, of amended returns to claim the energy efficient commercial buildings deduction (the &#x201c;179D deduction&#x201d;) allocated to us.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;</us-gaap:IncomeTaxPolicyTextBlock>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions
      contextRef="Duration_7_1_2019_To_9_30_2019_Sacf1d0C9E2Ntd8sbwANfg"
      decimals="-5"
      id="Narr_dHi4yXy_MEuCZXiB_UZHHQ"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">4600000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions
      contextRef="Duration_1_1_2018_To_12_31_2018_MAefOarMgkeKE3YpNlc7HA"
      decimals="-5"
      id="Narr_XmtqYRC9FUmxSRcBJquiMg"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">2700000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions>
    <us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable
      contextRef="Duration_1_1_2019_To_12_31_2019_mifjwy6BiUKM2xZgEf4c5Q"
      decimals="-5"
      id="Narr_bYaIDKLdMEehZDnGhZAGpA"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">2200000</us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable>
    <us-gaap:FairValueOfFinancialInstrumentsPolicy
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tb_Gg-ALvDzOkGu1d9R-2rCmw">&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;"&gt;Financial Instruments&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;Our financial instruments consist of cash and cash equivalents, accounts receivable, other receivables, accounts payable, life insurance policies, notes to former owners, a revolving credit facility and a term loan. We believe that the carrying values of these instruments on the accompanying Balance Sheets approximate their fair values.&lt;span style="font-style:italic;font-weight:bold;"&gt; &lt;/span&gt; &lt;/p&gt;</us-gaap:FairValueOfFinancialInstrumentsPolicy>
    <us-gaap:FairValueDisclosuresTextBlock
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tb_5z-BlE8qm0SGtqutodtKiA">&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;3. Fair Value Measurements&lt;/b&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;We classify and disclose assets and liabilities carried at fair value in one of the following three categories:&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-family:'Times New Roman';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;width:100%;border:0pt;"&gt;&lt;tr&gt;&lt;td style="width:36pt;"/&gt;&lt;td style="font-family:'Times New Roman';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"&gt;&#x25cf;&lt;/td&gt;&lt;td style="padding:0pt;"&gt;&lt;span style="color:#000000;font-family:'Times New Roman';font-size:10pt;font-style:normal;font-weight:normal;text-align:left;"&gt;Level&#160;1&#x2014;quoted prices in active markets for identical assets and liabilities;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;table style="border-collapse:collapse;font-family:'Times New Roman';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;width:100%;border:0pt;"&gt;&lt;tr&gt;&lt;td style="width:36pt;"/&gt;&lt;td style="font-family:'Times New Roman';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"&gt;&#x25cf;&lt;/td&gt;&lt;td style="padding:0pt;"&gt;&lt;span style="color:#000000;font-family:'Times New Roman';font-size:10pt;font-style:normal;font-weight:normal;text-align:left;"&gt;Level&#160;2&#x2014;observable market-based inputs or unobservable inputs that are corroborated by market data; and&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;table style="border-collapse:collapse;font-family:'Times New Roman';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;width:100%;border:0pt;"&gt;&lt;tr&gt;&lt;td style="width:36pt;"/&gt;&lt;td style="font-family:'Times New Roman';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;"&gt;&#x25cf;&lt;/td&gt;&lt;td style="padding:0pt;"&gt;&lt;span style="color:#000000;font-family:'Times New Roman';font-size:10pt;font-style:normal;font-weight:normal;text-align:left;"&gt;Level&#160;3&#x2014;significant unobservable inputs in which little or no market data exists, therefore requiring an entity to develop its own assumptions.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;The following table summarizes the fair values, and levels within the fair value hierarchy in which the fair value measurements fall, for assets and liabilities measured on a recurring basis as of March 31, 2020 and December 31, 2019 (in thousands):&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:58.69%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:7.95%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:7.19%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:7.21%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:7.95%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:58.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="11" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:39.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Fair&#160;Value&#160;Measurements&#160;at&#160;March 31, 2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:58.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:8.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Level&#160;1&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:8.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Level&#160;2&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:8.24%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Level&#160;3&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:8.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Total&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:58.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Cash and cash equivalents&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 133,264&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.19%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.21%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 133,264&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:58.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Life insurance&#x2014;cash surrender value&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:7.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:7.19%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 3,898&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:7.21%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:7.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 3,898&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:58.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Contingent earn-out obligations&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.19%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.21%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 16,414&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 16,414&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:58.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:7.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:7.19%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:7.21%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:7.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:58.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:39.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Fair&#160;Value&#160;Measurements&#160;at&#160;December 31, 2019&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:58.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Level&#160;1&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Level&#160;2&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.24%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Level&#160;3&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Total&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:58.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Cash and cash equivalents&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 50,788&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.19%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.21%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 50,788&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:58.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Life insurance&#x2014;cash surrender value&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:7.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:7.19%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 3,905&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:7.21%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:7.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 3,905&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:58.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Contingent earn-out obligations&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.19%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.21%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 28,497&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 28,497&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;Cash and cash equivalents consist primarily of highly rated money market funds at a variety of well-known institutions with original maturities of three months or less. The original cost of these assets approximates fair value due to their short-term maturity. The Company&#x2019;s outstanding term loan held by third-party financial institutions is carried at cost, adjusted for debt issuance costs. The Company&#x2019;s term loan is not publicly traded and the carrying amount approximates fair value as the loan accrues interest at a variable rate. The carrying value of our borrowings associated with the Revolving Credit Facility approximate its fair value due to the variable rate on such debt.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;We have life insurance policies covering 74 employees with a combined face value of $54.2&#160;million. The policies are invested in several investment vehicles, and the fair value measurement of the cash surrender balance associated with these policies is determined using Level&#160;2 inputs within the fair value hierarchy and will vary with investment performance. The cash surrender value of these policies was $3.9&#160;million as of March 31, 2020 and December 31, 2019. These assets are included in &#x201c;Other Noncurrent Assets&#x201d; in our consolidated Balance Sheets.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;We value contingent earn-out obligations using a probability weighted discounted cash flow method. This fair value measurement is based on significant unobservable inputs in the market and thus represents a Level&#160;3 measurement within the fair value hierarchy. This analysis reflects the contractual terms of the purchase agreements (e.g.,&#160;minimum and maximum payments, length of earn-out periods, manner of calculating any amounts due, etc.) and utilizes assumptions with regard to future cash flows, probabilities of achieving such future cash flows and a discount rate. The contingent earn-out obligations are measured at fair value each reporting period, and changes in estimates of fair value are recognized in earnings. Significant unobservable inputs that could impact the fair value measurement include our weighted average cost of capital and the forecasted level of operating income for each earn-out measurement. As of March 31, 2020, cash flows were discounted using a weighted average cost of capital ranging from 9.5% - 14.0%.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;The table below presents a reconciliation of the fair value of our contingent earn-out obligations that use significant unobservable inputs (Level 3) (in thousands):&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:83.77%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.39%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.64%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:83.77%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Balance at beginning of year&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri';"&gt;&#160;&#160;&#160;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.39%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 28,497&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:0.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:83.77%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Issuances&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.39%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 55&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:83.77%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Settlements&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.39%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt; (9,866)&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:0.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:83.77%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Adjustments to fair value&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.39%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt; (2,272)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:83.77%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Balance at March 31, 2020&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.62%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.39%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 16,414&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:0.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;We measure certain assets at fair value on a nonrecurring basis. These assets are recognized at fair value when they are deemed to be other-than-temporarily impaired. We did not recognize any impairments in the current quarter on those assets required to be measured at fair value on a nonrecurring basis.&lt;/p&gt;</us-gaap:FairValueDisclosuresTextBlock>
    <us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tb_oagtlaW-NkiEkwnWBnfuwg">&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;The following table summarizes the fair values, and levels within the fair value hierarchy in which the fair value measurements fall, for assets and liabilities measured on a recurring basis as of March 31, 2020 and December 31, 2019 (in thousands):&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:58.69%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:7.95%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:7.19%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:7.21%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:7.95%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:58.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="11" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:39.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Fair&#160;Value&#160;Measurements&#160;at&#160;March 31, 2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:58.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:8.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Level&#160;1&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:8.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Level&#160;2&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:8.24%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Level&#160;3&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:8.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Total&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:58.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Cash and cash equivalents&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 133,264&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.19%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.21%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 133,264&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:58.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Life insurance&#x2014;cash surrender value&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:7.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:7.19%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 3,898&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:7.21%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:7.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 3,898&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:58.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Contingent earn-out obligations&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.19%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.21%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 16,414&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 16,414&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:58.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:7.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:7.19%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:7.21%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:7.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:58.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:39.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Fair&#160;Value&#160;Measurements&#160;at&#160;December 31, 2019&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:58.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Level&#160;1&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Level&#160;2&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.24%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Level&#160;3&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.98%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Total&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:58.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Cash and cash equivalents&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 50,788&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.19%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.21%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 50,788&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:58.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Life insurance&#x2014;cash surrender value&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:7.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:7.19%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 3,905&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:7.21%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:7.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 3,905&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:58.69%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Contingent earn-out obligations&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.71%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.19%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.21%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 28,497&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.02%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:7.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 28,497&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;</us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="As_Of_3_31_2020_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel1Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember_i42WQjTXpE6KyjHnzPLMNg"
      decimals="-3"
      id="Tc_XFQEBrCBPESM-VJwbTeeVA_3_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">133264000</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="As_Of_3_31_2020_us-gaap_FairValueByMeasurementBasisAxis_us-gaap_EstimateOfFairValueFairValueDisclosureMember_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember_Ve-j_HFhvEy4HBtYHtMFKg"
      decimals="-3"
      id="Tc_fuWLqQkeNUaeu7CBDGc_Qw_3_12"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">133264000</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashSurrenderValueFairValueDisclosure
      contextRef="As_Of_3_31_2020_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember_gkKG-iM6bU6h4FWho5Tsag"
      decimals="-3"
      id="Tc_FcRhYEe0206Ih0RZ-D1kMA_4_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">3898000</us-gaap:CashSurrenderValueFairValueDisclosure>
    <us-gaap:CashSurrenderValueFairValueDisclosure
      contextRef="As_Of_3_31_2020_us-gaap_FairValueByMeasurementBasisAxis_us-gaap_EstimateOfFairValueFairValueDisclosureMember_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember_Ve-j_HFhvEy4HBtYHtMFKg"
      decimals="-3"
      id="Tc_jFAtZ6x3aUaABwhnIQBSxw_4_12"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">3898000</us-gaap:CashSurrenderValueFairValueDisclosure>
    <fix:BusinessAcquisitionContingentConsiderationFairValueAtBalanceSheetDate
      contextRef="As_Of_3_31_2020_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember_p5XNKbiVxUe88z-at-e_qQ"
      decimals="-3"
      id="Tc_Mp_w8DgRqE-UNJD7XVZacA_5_9"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">16414000</fix:BusinessAcquisitionContingentConsiderationFairValueAtBalanceSheetDate>
    <fix:BusinessAcquisitionContingentConsiderationFairValueAtBalanceSheetDate
      contextRef="As_Of_3_31_2020_us-gaap_FairValueByMeasurementBasisAxis_us-gaap_EstimateOfFairValueFairValueDisclosureMember_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember_Ve-j_HFhvEy4HBtYHtMFKg"
      decimals="-3"
      id="Tc_aQOxqmB6N0aKh6K0ZVdb5g_5_12"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">16414000</fix:BusinessAcquisitionContingentConsiderationFairValueAtBalanceSheetDate>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="As_Of_12_31_2019_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel1Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember_Kew9JJfYiU2y5_DRdboGiQ"
      decimals="-3"
      id="Tc_uu8S9HaifUKVnPw1GpQHNA_9_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">50788000</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="As_Of_12_31_2019_us-gaap_FairValueByMeasurementBasisAxis_us-gaap_EstimateOfFairValueFairValueDisclosureMember_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember_dykmqKRxNEeDtunFtnHYLw"
      decimals="-3"
      id="Tc_J-JO0KhLQEmzdXgv__Nu2w_9_12"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">50788000</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashSurrenderValueFairValueDisclosure
      contextRef="As_Of_12_31_2019_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember_vwdO0OB8Gk2avABteoKzKw"
      decimals="-3"
      id="Tc_AvR5vv4buE6ae-rievxs2w_10_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">3905000</us-gaap:CashSurrenderValueFairValueDisclosure>
    <us-gaap:CashSurrenderValueFairValueDisclosure
      contextRef="As_Of_12_31_2019_us-gaap_FairValueByMeasurementBasisAxis_us-gaap_EstimateOfFairValueFairValueDisclosureMember_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember_dykmqKRxNEeDtunFtnHYLw"
      decimals="-3"
      id="Tc_eMkVDg1sSUy7HOHdlSNFYA_10_12"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">3905000</us-gaap:CashSurrenderValueFairValueDisclosure>
    <fix:BusinessAcquisitionContingentConsiderationFairValueAtBalanceSheetDate
      contextRef="As_Of_12_31_2019_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember_PmPQllGlqk2MTa6ScZAAnw"
      decimals="-3"
      id="Tc_XF5A9W6Jf028H-oONVKLCg_11_9"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">28497000</fix:BusinessAcquisitionContingentConsiderationFairValueAtBalanceSheetDate>
    <fix:BusinessAcquisitionContingentConsiderationFairValueAtBalanceSheetDate
      contextRef="As_Of_12_31_2019_us-gaap_FairValueByMeasurementBasisAxis_us-gaap_EstimateOfFairValueFairValueDisclosureMember_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember_dykmqKRxNEeDtunFtnHYLw"
      decimals="-3"
      id="Tc_t-H2E9LvREKnd-pH619mnA_11_12"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">28497000</fix:BusinessAcquisitionContingentConsiderationFairValueAtBalanceSheetDate>
    <fix:LifeInsuranceContractsNumberOfEmployeesCovered
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="INF"
      id="Narr_ZXbDHKt7H0y_ulTlQctiJA"
      unitRef="Unit_Standard_item_j1HsmHPAlEajrX_a6hBAIA">74</fix:LifeInsuranceContractsNumberOfEmployeesCovered>
    <fix:LifeInsuranceContractsFaceAmount
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-5"
      id="Narr_lJAv0JLQWEGe2FK5XwEjww"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">54200000</fix:LifeInsuranceContractsFaceAmount>
    <us-gaap:CashSurrenderValueOfLifeInsurance
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-5"
      id="Narr_Ch4AysEtgkiZkdg_yCuI0A"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">3900000</us-gaap:CashSurrenderValueOfLifeInsurance>
    <fix:WeightedAverageCostOfCapital
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_RangeAxis_srt_MinimumMember_s1XmG36v3EiCuksGz73-eA"
      decimals="3"
      id="Narr_uAZdzHrPMkeQiWWaP_JHZA"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.095</fix:WeightedAverageCostOfCapital>
    <fix:WeightedAverageCostOfCapital
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_RangeAxis_srt_MaximumMember_2YspZCznYUWCTx7PnKPCxA"
      decimals="3"
      id="Narr_dNjz1wnOYkaF5VtRL5N2mw"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.140</fix:WeightedAverageCostOfCapital>
    <us-gaap:FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tb_2E356vVIck2JtbhIeQnQGw">&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;The table below presents a reconciliation of the fair value of our contingent earn-out obligations that use significant unobservable inputs (Level 3) (in thousands):&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:83.77%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.39%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.64%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:83.77%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Balance at beginning of year&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri';"&gt;&#160;&#160;&#160;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.39%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 28,497&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:0.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:83.77%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Issuances&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.39%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 55&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:83.77%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Settlements&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.39%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt; (9,866)&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:0.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:83.77%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Adjustments to fair value&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.39%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt; (2,272)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:83.77%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Balance at March 31, 2020&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.57%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.62%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.39%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 16,414&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:0.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;</us-gaap:FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue
      contextRef="As_Of_12_31_2019_us-gaap_FairValueByLiabilityClassAxis_fix_ContingentConsiderationObligationsMember_cvRtKBwCYk6ywrHt8o3heg"
      decimals="-3"
      id="Tc_wRjNuF4qOkWvaL5SHiHR6Q_1_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">28497000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityIssues
      contextRef="Duration_1_1_2020_To_3_31_2020_us-gaap_FairValueByLiabilityClassAxis_fix_ContingentConsiderationObligationsMember_ABl6AHxTAUSKbCRzXVEEjA"
      decimals="-3"
      id="Tc_eGD46jeYEUW3JYj1ho3ycw_2_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">55000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityIssues>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements
      contextRef="Duration_1_1_2020_To_3_31_2020_us-gaap_FairValueByLiabilityClassAxis_fix_ContingentConsiderationObligationsMember_ABl6AHxTAUSKbCRzXVEEjA"
      decimals="-3"
      id="Tc_wu5SWVETNkCLOePJ-8voLw_3_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">9866000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilitySettlements>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings
      contextRef="Duration_1_1_2020_To_3_31_2020_us-gaap_FairValueByLiabilityClassAxis_fix_ContingentConsiderationObligationsMember_ABl6AHxTAUSKbCRzXVEEjA"
      decimals="-3"
      id="Tc_4h3m2oeSLEi4NBGtVKpJGg_4_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">-2272000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInEarnings>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue
      contextRef="As_Of_3_31_2020_us-gaap_FairValueByLiabilityClassAxis_fix_ContingentConsiderationObligationsMember_MGStRyD8z0qKcYexJ-46ZA"
      decimals="-3"
      id="Tc_8eENIpsyCUunM-NCIDKu7Q_5_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">16414000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue>
    <us-gaap:BusinessCombinationDisclosureTextBlock
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tb_lsR4SKsERE6-G6Hd3R_s4Q">&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;4. Acquisitions&lt;/b&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;"&gt;Walker Acquisition&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;On April&#160;1, 2019, we acquired all of the issued and outstanding equity interests of Walker TX Holding Company, LLC and each of its wholly owned subsidiaries (collectively &#x201c;Walker&#x201d;). Walker is a full-service electrical contracting and network infrastructure engineering business serving commercial and industrial clients with headquarters in Irving, Texas and operations throughout the state of Texas. As a result of the acquisition, Walker is a wholly owned subsidiary of the Company reported in our electrical services segment. &lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;The following summarizes the acquisition date fair value of consideration transferred and the acquisition date fair value of the identifiable assets acquired and liabilities assumed, including an amount for goodwill (in thousands):&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:18.62%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Consideration transferred:&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:18.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;  Cash paid at closing&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:middle;width:3.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:18.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 178,000&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;  Advance to former owners&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:middle;width:3.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="color:#ff0000;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:18.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 20,500&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;  Working capital adjustment &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:middle;width:3.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="color:#ff0000;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:18.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt; (7,809)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;  Notes issued to former owners&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:middle;width:3.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:18.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 25,000&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;  Tax equalization payment&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:middle;width:3.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:18.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 202&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;  Estimated fair value of contingent earn-out payments&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:middle;width:3.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:18.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 19,500&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:middle;width:3.09%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:18.62%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 235,393&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Recognized amounts of identifiable assets acquired and liabilities assumed:&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:middle;width:3.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:18.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;  Cash and cash equivalents&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:middle;width:3.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:18.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 4,850&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;  Billed and unbilled accounts receivable&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:middle;width:3.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:18.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 92,309&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;  Other current assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:middle;width:3.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:18.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 8,225&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;  Other long-term assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:middle;width:3.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:18.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 53&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;  Property and equipment&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:middle;width:3.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:18.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 4,970&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;  Goodwill&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:18.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 96,786&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;  Identifiable intangible assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:middle;width:3.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:18.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 90,200&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;  Lease right-of-use asset&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:middle;width:3.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:18.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 9,195&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;  Accounts payable&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:middle;width:3.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:18.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt; (20,220)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;  Accrued compensation and benefits&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:middle;width:3.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:18.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt; (974)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;  Billings in excess of costs and estimated earnings&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:middle;width:3.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:18.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt; (31,553)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;  Other current liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:middle;width:3.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:18.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt; (11,305)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;  Long-term lease liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:middle;width:3.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:18.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt; (7,143)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:middle;width:3.09%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:18.62%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 235,393&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;Goodwill represents the future economic benefits arising from other assets acquired that could not be individually identified and separately recognized. All of the goodwill recognized as a result of this transaction is tax deductible.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="background-color:#ffff00;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;In estimating the fair value of the acquired intangible assets, we utilized the valuation methodology determined to be the most appropriate for the individual intangible asset.  In order to estimate the fair value of the backlog and customer relationships, we utilized an excess earnings methodology, which consisted of the projected cash flows attributable to these assets discounted to present value using a risk-adjusted discount rate that represented the required rate of return.  The trade name value was determined based on the relief-from-royalty method, which applies a royalty rate to the revenue stream attributable to this asset, and the resulting royalty payment is tax effected and discounted to present value.  Some of the more significant estimates and assumptions inherent in determining the fair value of the identifiable intangible assets are associated with forecasting cash flows and profitability, which represent Level 3 inputs.  The primary assumptions used were generally based upon the present value of anticipated cash flows discounted at rates ranging from 8.5%-11.5&lt;/span&gt;&lt;span style="white-space:pre-wrap;"&gt;%.  Estimated years of projected earnings generally follow the range of estimated remaining useful lives for each intangible asset class.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;The acquired intangible assets include the following (dollars in thousands):&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:42.92%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:23.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:12.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:2.16%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:2.16%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:12.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:42.92%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:23.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;Valuation Method&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:12.97%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;Estimated Useful Life&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:2.16%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:2.16%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:12.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;Estimated Fair Value&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:42.92%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Backlog&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:23.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;Excess earnings&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:12.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;2 years&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:2.16%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:2.16%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 4,600&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:42.92%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Trade Names&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:23.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;Relief-from-royalty&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:12.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;25 years&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:2.16%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:2.16%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 32,600&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:42.92%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Customer Relationships&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:23.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;Excess earnings&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:12.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;10 years&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:2.16%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:2.16%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 53,000&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:42.92%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Total&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:23.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:12.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:2.16%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.16%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.13%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 90,200&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;The contingent earn-out obligation is associated with the achievement of specified earnings milestones over a five year period, and the range of estimated milestone payments is from $1 million to $11 million (undiscounted).&#160; We determined the initial fair value of the contingent earn-out obligation based on the Monte Carlo Simulation method, which represents a Level 3 measurement.&#160;&#160;Cash flows were discounted using a 10.2% discount rate, which we believe is appropriate and representative of a market participant assumption.&#160; Subsequent to the acquisition date, the contingent earn-out obligation is remeasured at fair value each reporting period.&#160; Changes in the estimated fair value of the contingent payments subsequent to the acquisition date are recognized immediately in earnings.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;"&gt;Pro Forma Impact of the Acquisition&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;The following unaudited pro forma information presents the consolidated results of the Company and Walker for the three months ended March 31, 2019, with adjustments to give effect to pro forma events that are directly attributable to the acquisition and have a continuing impact. The unaudited pro forma information is presented for illustrative purposes only and is not necessarily indicative of the results of operations of future periods or the results of operations that actually would have been realized had the entities been a single company during the periods presented or the results that the company will experience after the acquisition.  The unaudited pro forma information does not give effect to the potential impact of current financial conditions, regulatory matters or any operating efficiencies that may be associated with the acquisition.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;The unaudited pro forma consolidated results of operations, assuming the acquisition had occurred on January 1, 2018, are as follows (in thousands):&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:66.11%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.59%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.38%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:23.9%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:66.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:5.59%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:28.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Three Months Ended March 31, &lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:66.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:5.59%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:28.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2019&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:66.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:5.59%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:4.38%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:23.9%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 626,834&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:66.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Pre-tax income&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.59%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.38%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:23.9%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 23,927&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;"&gt;Other Acquisitions&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;We completed one acquisition in the first quarter of 2020 with a total preliminary purchase price of $41.1 million. This acquisition is reported in our electrical services segment. In 2019, in addition to the Walker acquisition, we completed one acquisition in the first quarter of 2019 with a total purchase price of $1.6 million.&#160; &lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;The results of operations of acquisitions are included in our consolidated financial statements from their respective acquisition dates. Our consolidated Balance Sheet includes preliminary allocations of the purchase price to the assets acquired and liabilities assumed for the applicable acquisitions pending the completion of the final valuation of intangible assets and accrued liabilities. Excluding the Walker acquisition, the acquisitions completed in the current and prior year were not material, individually or in the aggregate.  Additional contingent purchase price (&#x201c;earn-out&#x201d;) has been or will be paid if certain acquisitions achieve predetermined profitability targets. Such earn-outs, when they are not subject to the continued employment of the sellers, are estimated as of the purchase date and included as part of the consideration paid for the acquisition. If we have an earn-out under which continued employment is a condition to receive payment, then the earn-out is recorded as compensation expense over the period earned.&lt;/span&gt;&lt;/p&gt;</us-gaap:BusinessCombinationDisclosureTextBlock>
    <us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tb_Cryy5foBD02GR2H1TxPhGg">&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;The following summarizes the acquisition date fair value of consideration transferred and the acquisition date fair value of the identifiable assets acquired and liabilities assumed, including an amount for goodwill (in thousands):&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:18.62%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Consideration transferred:&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:18.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;  Cash paid at closing&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:middle;width:3.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:18.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 178,000&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;  Advance to former owners&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:middle;width:3.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="color:#ff0000;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:18.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 20,500&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;  Working capital adjustment &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:middle;width:3.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="color:#ff0000;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:18.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt; (7,809)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;  Notes issued to former owners&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:middle;width:3.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:18.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 25,000&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;  Tax equalization payment&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:middle;width:3.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:18.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 202&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;  Estimated fair value of contingent earn-out payments&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:middle;width:3.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:18.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 19,500&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:middle;width:3.09%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:18.62%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 235,393&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Recognized amounts of identifiable assets acquired and liabilities assumed:&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:middle;width:3.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:18.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;  Cash and cash equivalents&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:middle;width:3.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:18.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 4,850&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;  Billed and unbilled accounts receivable&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:middle;width:3.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:18.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 92,309&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;  Other current assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:middle;width:3.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:18.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 8,225&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;  Other long-term assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:middle;width:3.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:18.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 53&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;  Property and equipment&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:middle;width:3.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:18.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 4,970&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;  Goodwill&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-family:'Calibri';font-size:11pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:18.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 96,786&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;  Identifiable intangible assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:middle;width:3.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:18.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 90,200&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;  Lease right-of-use asset&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:middle;width:3.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:18.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 9,195&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;  Accounts payable&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:middle;width:3.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:18.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt; (20,220)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;  Accrued compensation and benefits&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:middle;width:3.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:18.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt; (974)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;  Billings in excess of costs and estimated earnings&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:middle;width:3.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:18.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt; (31,553)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;  Other current liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:middle;width:3.09%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:18.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt; (11,305)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;  Long-term lease liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:middle;width:3.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:18.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt; (7,143)&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:78.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:middle;width:3.09%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:18.62%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 235,393&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="Duration_4_1_2019_To_4_1_2019_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_MyvZYHpptUOXiRIlnCj8xw"
      decimals="-3"
      id="Tc_bFduXIRjwkCjPUsxa1fSYA_2_2"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">178000000</us-gaap:PaymentsToAcquireBusinessesGross>
    <fix:PurchasePriceAdvance
      contextRef="Duration_4_1_2019_To_4_1_2019_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_MyvZYHpptUOXiRIlnCj8xw"
      decimals="-3"
      id="Tc_gbWn_ZAYl0adWppTzP0_ow_3_2"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">20500000</fix:PurchasePriceAdvance>
    <fix:BusinessCombinationConsiderationTransferredWorkingCapitalAdjustment
      contextRef="Duration_4_1_2019_To_4_1_2019_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_MyvZYHpptUOXiRIlnCj8xw"
      decimals="-3"
      id="Tc_1LY0tfQoF06TR_9hM6Bbdg_4_2"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">-7809000</fix:BusinessCombinationConsiderationTransferredWorkingCapitalAdjustment>
    <us-gaap:BusinessCombinationConsiderationTransferredLiabilitiesIncurred
      contextRef="Duration_4_1_2019_To_4_1_2019_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_MyvZYHpptUOXiRIlnCj8xw"
      decimals="-3"
      id="Tc_AJQ6rZk9TkGY7Rc6xK3f4g_5_2"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">25000000</us-gaap:BusinessCombinationConsiderationTransferredLiabilitiesIncurred>
    <fix:BusinessCombinationConsiderationTransferredTaxEqualization
      contextRef="Duration_4_1_2019_To_4_1_2019_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_MyvZYHpptUOXiRIlnCj8xw"
      decimals="-3"
      id="Tc_hkkJAsAVKUyP_MgLxlxaFQ_6_2"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">202000</fix:BusinessCombinationConsiderationTransferredTaxEqualization>
    <fix:BusinessCombinationConsiderationTransferredContingentEarnOut
      contextRef="Duration_4_1_2019_To_4_1_2019_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_MyvZYHpptUOXiRIlnCj8xw"
      decimals="-3"
      id="Tc_78oqGT8R_Em1XW7nL9Eamw_7_2"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">19500000</fix:BusinessCombinationConsiderationTransferredContingentEarnOut>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="Duration_4_1_2019_To_4_1_2019_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_MyvZYHpptUOXiRIlnCj8xw"
      decimals="-3"
      id="Tc_l5ccX35qx0CV7a_TtLVr6Q_8_2"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">235393000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents
      contextRef="As_Of_4_1_2019_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_BUDA2tX0_UWbws34Aj4cwQ"
      decimals="-3"
      id="Tc_aqcaAB79V0WDH1h38jELSg_10_2"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">4850000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables
      contextRef="As_Of_4_1_2019_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_BUDA2tX0_UWbws34Aj4cwQ"
      decimals="-3"
      id="Tc_6t5HvHgVN0OjeIabfBoZcA_11_2"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">92309000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther
      contextRef="As_Of_4_1_2019_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_BUDA2tX0_UWbws34Aj4cwQ"
      decimals="-3"
      id="Tc_XLrLOfMJc0KXanrskNo7og_12_2"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">8225000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets
      contextRef="As_Of_4_1_2019_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_BUDA2tX0_UWbws34Aj4cwQ"
      decimals="-3"
      id="Tc_dUvmPvAyYk2sLFbZvTByGw_13_2"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">53000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment
      contextRef="As_Of_4_1_2019_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_BUDA2tX0_UWbws34Aj4cwQ"
      decimals="-3"
      id="Tc_Pc3t_8_kvUKnaEFbU1kJBg_14_2"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">4970000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment>
    <us-gaap:Goodwill
      contextRef="As_Of_4_1_2019_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_BUDA2tX0_UWbws34Aj4cwQ"
      decimals="-3"
      id="Tc_Br5KKmJVUUmLPI5_OInnog_15_2"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">96786000</us-gaap:Goodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles
      contextRef="As_Of_4_1_2019_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_BUDA2tX0_UWbws34Aj4cwQ"
      decimals="-3"
      id="Tc_4lMq6eSlr06z9bCfk3f4gQ_16_2"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">90200000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles>
    <fix:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset
      contextRef="As_Of_4_1_2019_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_BUDA2tX0_UWbws34Aj4cwQ"
      decimals="-3"
      id="Tc_ERvY0_AcZk-GS50SXk1sWg_17_2"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">9195000</fix:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAsset>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable
      contextRef="As_Of_4_1_2019_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_BUDA2tX0_UWbws34Aj4cwQ"
      decimals="-3"
      id="Tc_w0hvWGlO7UaIwhmPU1Ce8w_18_2"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">20220000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable>
    <fix:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedEmployeeRelatedLiabilitiesCurrent
      contextRef="As_Of_4_1_2019_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_BUDA2tX0_UWbws34Aj4cwQ"
      decimals="-3"
      id="Tc_hbUcqgY4O0KOM97wbLkbdw_19_2"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">974000</fix:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedEmployeeRelatedLiabilitiesCurrent>
    <fix:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesBillingsInExcessOfCostsAndEstimatedEarnings
      contextRef="As_Of_4_1_2019_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_BUDA2tX0_UWbws34Aj4cwQ"
      decimals="-3"
      id="Tc_-SfmhAxfXUiaozmOQgrmpg_20_2"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">31553000</fix:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesBillingsInExcessOfCostsAndEstimatedEarnings>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther
      contextRef="As_Of_4_1_2019_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_BUDA2tX0_UWbws34Aj4cwQ"
      decimals="-3"
      id="Tc_1sMYoF8HVkWj0JuWccRKYQ_21_2"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">11305000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther>
    <fix:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNoncurrent
      contextRef="As_Of_4_1_2019_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_BUDA2tX0_UWbws34Aj4cwQ"
      decimals="-3"
      id="Tc_FrT-1kjWR0WVxkuZykPNPw_22_2"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">7143000</fix:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilityNoncurrent>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet
      contextRef="As_Of_4_1_2019_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_BUDA2tX0_UWbws34Aj4cwQ"
      decimals="-3"
      id="Tc_ssvbelqM6kavvD2VoNU-Vw_23_2"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">235393000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet>
    <fix:CashFlowDiscountRate
      contextRef="Duration_4_1_2019_To_4_1_2019_srt_RangeAxis_srt_MinimumMember_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_V-Jpmxlbs0CHefxpJpkEKg"
      decimals="3"
      id="Narr_4YIMaZ5qBUSrGXCy_aV11Q"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.085</fix:CashFlowDiscountRate>
    <fix:CashFlowDiscountRate
      contextRef="Duration_4_1_2019_To_4_1_2019_srt_RangeAxis_srt_MaximumMember_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_te-2QeeTJEa1Ox-oosByfQ"
      decimals="3"
      id="Narr_ww_5IWMsqkW-aHKLdMe6vw"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.115</fix:CashFlowDiscountRate>
    <us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tb_CD9qSBcuYEyB0kIfMq6BLA">&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;The acquired intangible assets include the following (dollars in thousands):&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:42.92%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:23.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:12.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:2.16%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:2.16%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:12.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:42.92%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:23.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;Valuation Method&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:12.97%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;Estimated Useful Life&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:2.16%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:2.16%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:12.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;Estimated Fair Value&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:42.92%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Backlog&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:23.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;Excess earnings&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:12.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;2 years&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:2.16%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:2.16%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 4,600&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:42.92%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Trade Names&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:23.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;Relief-from-royalty&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:12.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;25 years&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:2.16%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:2.16%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.13%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 32,600&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:42.92%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Customer Relationships&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:23.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;Excess earnings&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:12.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;10 years&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:2.16%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:2.16%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.13%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 53,000&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:42.92%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Total&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:23.62%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:12.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:2.16%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.16%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.13%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 90,200&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="Duration_4_1_2019_To_4_1_2019_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_OrderOrProductionBacklogMember_79z28o2CJEW4PZZ1hWmHNw"
      id="Tc_EuFm9WzBg06nrPDJRq9e-Q_2_4">P2Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles
      contextRef="As_Of_4_1_2019_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_OrderOrProductionBacklogMember_24tK87nk3Ee75Z5HnnEvWA"
      decimals="-3"
      id="Tc_QRzDk2dsZU2NB0eftMmXew_2_7"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">4600000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="Duration_4_1_2019_To_4_1_2019_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember_wsie2p5VR0a-mQ605k-F-w"
      id="Tc_N699DaMelUyZCKyVxRwB9Q_3_4">P25Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles
      contextRef="As_Of_4_1_2019_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember_HkEZoMESiky6YE8d_11uvQ"
      decimals="-3"
      id="Tc_RWlQ2_tHXEi0ip3CzRW9Kw_3_7"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">32600000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="Duration_4_1_2019_To_4_1_2019_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember_7oImh-t100uySXU28wBmPA"
      id="Tc_tn9iSf-HdEuIZLqaMek8bw_4_4">P10Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles
      contextRef="As_Of_4_1_2019_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember_2VQz3OxzEkeyv4vcT_FUcQ"
      decimals="-3"
      id="Tc_jhc8gXI_bEOTXBc7RyKw1A_4_7"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">53000000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles
      contextRef="As_Of_4_1_2019_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_BUDA2tX0_UWbws34Aj4cwQ"
      decimals="-3"
      id="Tc_V4uXQrzTHUO9eN65XMbIMg_5_7"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">90200000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles>
    <fix:BusinessCombinationContingentConsiderationArrangementsEarnOutPeriod
      contextRef="Duration_4_1_2019_To_4_1_2019_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_MyvZYHpptUOXiRIlnCj8xw"
      id="Narr_Vd2HdPaVRE2X4PY76Blwfg">P5Y</fix:BusinessCombinationContingentConsiderationArrangementsEarnOutPeriod>
    <us-gaap:BusinessCombinationContingentConsiderationArrangementsRangeOfOutcomesValueLow
      contextRef="As_Of_4_1_2019_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_BUDA2tX0_UWbws34Aj4cwQ"
      decimals="-6"
      id="Narr_f7sVovm_N0OoK0cN9fSlow"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">1000000</us-gaap:BusinessCombinationContingentConsiderationArrangementsRangeOfOutcomesValueLow>
    <us-gaap:BusinessCombinationContingentConsiderationArrangementsRangeOfOutcomesValueHigh
      contextRef="As_Of_4_1_2019_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_BUDA2tX0_UWbws34Aj4cwQ"
      decimals="-6"
      id="Narr_z5ErBzeEvE2TjFdzKo6dAA"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">11000000</us-gaap:BusinessCombinationContingentConsiderationArrangementsRangeOfOutcomesValueHigh>
    <fix:CashFlowDiscountRate
      contextRef="Duration_4_1_2019_To_4_1_2019_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_MyvZYHpptUOXiRIlnCj8xw"
      decimals="3"
      id="Narr_8o7XoB3b1USh7E9PWjeqBw"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.102</fix:CashFlowDiscountRate>
    <us-gaap:BusinessAcquisitionProFormaInformationTextBlock
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tb_syaAm0bYO0G94v3LC9OTsQ">&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;The unaudited pro forma consolidated results of operations, assuming the acquisition had occurred on January 1, 2018, are as follows (in thousands):&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:66.11%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.59%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.38%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:23.9%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:66.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:5.59%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:28.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Three Months Ended March 31, &lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:66.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:5.59%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:28.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2019&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:66.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:5.59%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:4.38%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:23.9%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 626,834&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:66.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Pre-tax income&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.59%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.38%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:23.9%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 23,927&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:BusinessAcquisitionProFormaInformationTextBlock>
    <us-gaap:BusinessAcquisitionsProFormaRevenue
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_qxdVcDmcWUGDZ5Yso0wjAg_3_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">626834000</us-gaap:BusinessAcquisitionsProFormaRevenue>
    <us-gaap:BusinessAcquisitionsProFormaNetIncomeLoss
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_9wuGPBh0X0yfTFwqS44xNw_4_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">23927000</us-gaap:BusinessAcquisitionsProFormaNetIncomeLoss>
    <us-gaap:NumberOfBusinessesAcquired
      contextRef="Duration_1_1_2020_To_3_31_2020_us-gaap_BusinessAcquisitionAxis_fix_StarrMember_Hti2NmMkT0CUklxHCs3gJg"
      decimals="INF"
      id="Narr_N1AQsUH05kii-0RbVNMOnA"
      unitRef="Unit_Standard_item_j1HsmHPAlEajrX_a6hBAIA">1</us-gaap:NumberOfBusinessesAcquired>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="Duration_1_1_2020_To_3_31_2020_us-gaap_BusinessAcquisitionAxis_fix_StarrMember_Hti2NmMkT0CUklxHCs3gJg"
      decimals="-5"
      id="Narr_C4IJb78EskCOMI217z_vzA"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">41100000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:NumberOfBusinessesAcquired
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="INF"
      id="Narr_8zfD0D0HPkC_TAu3h40MYA"
      unitRef="Unit_Standard_item_j1HsmHPAlEajrX_a6hBAIA">1</us-gaap:NumberOfBusinessesAcquired>
    <us-gaap:BusinessCombinationConsiderationTransferred1
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-5"
      id="Narr_oRiK8ig4NkS3oUO08wtCvQ"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">1600000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tb_Z3I5UeeHS0mBSm2Qi4jUMg">&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;5. Goodwill &lt;/b&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;"&gt;Goodwill&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;The changes in the carrying amount of goodwill are as follows (in thousands):&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:53.99%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.81%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.58%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:53.99%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:14.32%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Mechanical Services&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.96%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Electrical Services&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.88%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:53.99%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:14.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Segment&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.96%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Segment&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.88%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Total&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:53.99%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Balance at December 31, 2018&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.81%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 235,182&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.58%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 235,182&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:53.99%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Acquisitions and purchase price adjustments (See Note&#160;4)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.81%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 579&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.58%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 96,686&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 97,265&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:53.99%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Impact of segment reorganization&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.81%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt; (1,101)&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 1,101&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:53.99%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Balance at December 31, 2019&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.81%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 234,660&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.58%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 97,787&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 332,447&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:53.99%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Acquisitions and purchase price adjustments (See Note&#160;4)&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.81%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 14,944&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 14,944&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:53.99%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Balance at March 31, 2020&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.81%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 234,660&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.37%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 112,731&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.6%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 347,391&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;During the fourth quarter of 2019, the Company performed its annual goodwill impairment test resulting in no impairment charges, as the calculated fair values for the majority of the Company&#x2019;s reporting units that have goodwill were significantly in excess (all greater than 80%) of the respective reporting unit&#x2019;s carrying value, while two reporting units that were recently acquired had calculated fair values in excess of carrying value of at least 27%&lt;span style="white-space:pre-wrap;"&gt;. During the first quarter of 2020, we considered the economic impacts of COVID-19 to be a triggering event for review of goodwill impairment at each of our reporting units. After performing a qualitative goodwill impairment assessment as of March 31, 2020, we determined that we did not have a goodwill impairment as of that date.  However, &lt;/span&gt;one reporting unit&#x2019;s (Walker) fair value exceeded carrying value by approximately 21%, a reduction from the excess of 27% from our 2019 annual impairment test. Walker&#x2019;s forecast for the current year is lower than previously estimated, primarily due to the impact of COVID-19 on its business. As a result, this reporting unit is more susceptible to impairment risk from additional adverse changes in its operating environment including micro and macroeconomic environment conditions that could negatively impact them. Such adverse changes could include worsening economic conditions in the locations or markets they primarily serve whether due to COVID-19 or other events and conditions. As of March 31, 2020, Walker had a goodwill balance of $96.8 million. &lt;/p&gt;</us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock>
    <us-gaap:ScheduleOfGoodwillTextBlock
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tb_S7gPxS638EWw6b1L9VXuJQ">&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;The changes in the carrying amount of goodwill are as follows (in thousands):&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:53.99%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.81%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.58%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:53.99%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:14.32%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Mechanical Services&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.96%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Electrical Services&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.88%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:53.99%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:14.32%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Segment&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.96%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Segment&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:center;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.88%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Total&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:53.99%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Balance at December 31, 2018&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.81%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 235,182&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.58%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 235,182&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:53.99%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Acquisitions and purchase price adjustments (See Note&#160;4)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.81%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 579&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.58%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 96,686&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 97,265&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:53.99%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Impact of segment reorganization&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.81%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt; (1,101)&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 1,101&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:53.99%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Balance at December 31, 2019&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.81%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 234,660&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.58%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 97,787&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.27%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.6%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 332,447&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:53.99%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Acquisitions and purchase price adjustments (See Note&#160;4)&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.5%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.81%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.58%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 14,944&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 14,944&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:53.99%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Balance at March 31, 2020&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:1.64%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.5%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.81%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 234,660&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.11%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.37%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.58%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 112,731&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.07%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.27%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.6%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 347,391&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfGoodwillTextBlock>
    <us-gaap:Goodwill
      contextRef="As_Of_12_31_2018_us-gaap_StatementBusinessSegmentsAxis_fix_MechanicalServicesIndustryMember_8Ab63lN8n0-n6m-5gLgHjg"
      decimals="-3"
      id="Tc_cU8v4X4JIE6hXrADRv_-_Q_3_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">235182000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="As_Of_12_31_2018_kVfJ9VO0mku_31JRqsvE7Q"
      decimals="-3"
      id="Tc_7aHu59xkZk-o7o2KZAdqug_3_9"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">235182000</us-gaap:Goodwill>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="Duration_1_1_2019_To_12_31_2019_us-gaap_StatementBusinessSegmentsAxis_fix_MechanicalServicesIndustryMember_pdlTmeMkE0KuNxSvJfx44w"
      decimals="-3"
      id="Tc_-mDGz9k-OUiVdkoYZIFMtw_4_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">579000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="Duration_1_1_2019_To_12_31_2019_us-gaap_StatementBusinessSegmentsAxis_fix_ElectricalServicesIndustryMember_4CX3jc-grkKdd7Hoj-HT-Q"
      decimals="-3"
      id="Tc_sbXdmXIWnkeNdIs0LxuA7w_4_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">96686000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="Duration_1_1_2019_To_12_31_2019_mifjwy6BiUKM2xZgEf4c5Q"
      decimals="-3"
      id="Tc_9R5kMRl3i0av2USzAUIsPw_4_9"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">97265000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillOtherIncreaseDecrease
      contextRef="Duration_1_1_2020_To_3_31_2020_us-gaap_StatementBusinessSegmentsAxis_fix_MechanicalServicesIndustryMember_12WpI1Yt5UuwprcjVQ_z4A"
      decimals="-3"
      id="Tc_QLhef_QELEi5s0TsdYvlBA_5_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">-1101000</us-gaap:GoodwillOtherIncreaseDecrease>
    <us-gaap:GoodwillOtherIncreaseDecrease
      contextRef="Duration_1_1_2020_To_3_31_2020_us-gaap_StatementBusinessSegmentsAxis_fix_ElectricalServicesIndustryMember_1vhH_EMH90SDXJB6a4Ns4A"
      decimals="-3"
      id="Tc_daWQEfT4j0--DxMURbRgCw_5_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">1101000</us-gaap:GoodwillOtherIncreaseDecrease>
    <us-gaap:Goodwill
      contextRef="As_Of_12_31_2019_us-gaap_StatementBusinessSegmentsAxis_fix_MechanicalServicesIndustryMember_9X4qTxC2xUWNkwrJ6wg8ZQ"
      decimals="-3"
      id="Tc_wsvDOQykSE2HIwhYArdW1w_6_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">234660000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="As_Of_12_31_2019_us-gaap_StatementBusinessSegmentsAxis_fix_ElectricalServicesIndustryMember_R8ovLt1yk0SesoE0c36-NA"
      decimals="-3"
      id="Tc_-gPRAcpHeUSG3TReJ6sv5w_6_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">97787000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_UB_ZbB8NYk2DcIcFAqszIQ_6_9"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">332447000</us-gaap:Goodwill>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="Duration_1_1_2020_To_3_31_2020_us-gaap_StatementBusinessSegmentsAxis_fix_ElectricalServicesIndustryMember_1vhH_EMH90SDXJB6a4Ns4A"
      decimals="-3"
      id="Tc_R_amKUkJf0O2jU9Yfz8Psw_7_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">14944000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_TDt2epOKtk6KUz328VCCCw_7_9"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">14944000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:Goodwill
      contextRef="As_Of_3_31_2020_us-gaap_StatementBusinessSegmentsAxis_fix_MechanicalServicesIndustryMember_HTmtp9ZmGU-3xNJOeczKUg"
      decimals="-3"
      id="Tc_v-B6LdpQe0qkWxJO5dQMgQ_8_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">234660000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="As_Of_3_31_2020_us-gaap_StatementBusinessSegmentsAxis_fix_ElectricalServicesIndustryMember_EpTmwGmQHkCj6uzb9eVk7w"
      decimals="-3"
      id="Tc_Lu7VWVg9LE23Cye1tfscnw_8_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">112731000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_jhb5vuoG20KqsWUU2VbRCg_8_9"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">347391000</us-gaap:Goodwill>
    <us-gaap:GoodwillAndIntangibleAssetsGoodwillPolicy
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tb_rmDGc0Pk2ESkDtwkJzaifw">During the fourth quarter of 2019, the Company performed its annual goodwill impairment test resulting in no impairment charges, as the calculated fair values for the majority of the Company&#x2019;s reporting units that have goodwill were significantly in excess (all greater than 80%) of the respective reporting unit&#x2019;s carrying value, while two reporting units that were recently acquired had calculated fair values in excess of carrying value of at least 27%&lt;span style="white-space:pre-wrap;"&gt;. During the first quarter of 2020, we considered the economic impacts of COVID-19 to be a triggering event for review of goodwill impairment at each of our reporting units. After performing a qualitative goodwill impairment assessment as of March 31, 2020, we determined that we did not have a goodwill impairment as of that date.  However, &lt;/span&gt;one reporting unit&#x2019;s (Walker) fair value exceeded carrying value by approximately 21%, a reduction from the excess of 27% from our 2019 annual impairment test. Walker&#x2019;s forecast for the current year is lower than previously estimated, primarily due to the impact of COVID-19 on its business. As a result, this reporting unit is more susceptible to impairment risk from additional adverse changes in its operating environment including micro and macroeconomic environment conditions that could negatively impact them. Such adverse changes could include worsening economic conditions in the locations or markets they primarily serve whether due to COVID-19 or other events and conditions. As of March 31, 2020, Walker had a goodwill balance of $96.8 million.</us-gaap:GoodwillAndIntangibleAssetsGoodwillPolicy>
    <us-gaap:GoodwillImpairmentLoss
      contextRef="Duration_10_1_2019_To_12_31_2019_6zGG0uzILk6yoW7Ho_C8eA"
      decimals="-3"
      id="Narr_lNekHeV3Z0u7FdKtHggIeQ"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">0</us-gaap:GoodwillImpairmentLoss>
    <fix:ThresholdPercentageOfGoodwill
      contextRef="Duration_10_1_2019_To_12_31_2019_srt_RangeAxis_srt_MinimumMember_kD228fxd5EWY3ScBcEeoNg"
      decimals="2"
      id="Narr_-4BgDMc3wk-jJnL7Qfm-hA"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.80</fix:ThresholdPercentageOfGoodwill>
    <fix:NumberOfReportingUnitsAcquiredWithFairValueInExcessOfCarryingValueBelowCertainPercentage
      contextRef="Duration_10_1_2019_To_12_31_2019_6zGG0uzILk6yoW7Ho_C8eA"
      decimals="INF"
      id="Narr_q4q2PfNjgES4_1dP3WOLvg"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.02</fix:NumberOfReportingUnitsAcquiredWithFairValueInExcessOfCarryingValueBelowCertainPercentage>
    <fix:PercentageOfFairValuesInExcessOfCarryingValueTwoReportingUnits
      contextRef="Duration_10_1_2019_To_12_31_2019_srt_RangeAxis_srt_MinimumMember_kD228fxd5EWY3ScBcEeoNg"
      decimals="2"
      id="Narr_qnhEGMDn_UiVfDO8HhlY4g"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.27</fix:PercentageOfFairValuesInExcessOfCarryingValueTwoReportingUnits>
    <fix:ReductionInPercentageOfFairValueNumberOfReportingUnits
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="INF"
      id="Narr_snpAK571KEiOwHXcqQhoaQ"
      unitRef="Unit_Standard_item_j1HsmHPAlEajrX_a6hBAIA">1</fix:ReductionInPercentageOfFairValueNumberOfReportingUnits>
    <fix:PercentageOfFairValuesInExcessOfCarryingValueForReportingUnit
      contextRef="Duration_1_1_2020_To_3_31_2020_dei_LegalEntityAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_VjcvyOVwMEeZ2eOdHMd38A"
      decimals="2"
      id="Narr_MSvCcTyCmUGBgqCvu6gV4Q"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.21</fix:PercentageOfFairValuesInExcessOfCarryingValueForReportingUnit>
    <fix:PercentageOfFairValuesInExcessOfCarryingValueTwoReportingUnits
      contextRef="Duration_10_1_2019_To_12_31_2019_dei_LegalEntityAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_7Y6pcVHpxUWw8V1PumdwYQ"
      decimals="2"
      id="Narr_KGIfKCIZnk-K_0NoZLbRhg"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.27</fix:PercentageOfFairValuesInExcessOfCarryingValueTwoReportingUnits>
    <us-gaap:Goodwill
      contextRef="As_Of_3_31_2020_dei_LegalEntityAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_HWvDFf5K_EqUUwDNkjYHbw"
      decimals="-5"
      id="Narr_GcJyl8dY_ke9QdypgJ2Kbw"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">96800000</us-gaap:Goodwill>
    <us-gaap:DebtDisclosureTextBlock
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tb_2tsSOmsTV0K3q_E_CCyDUw">&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;6. Debt Obligations&lt;/b&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;Debt obligations consist of the following (in thousands):&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:72.14%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.94%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.17%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:0.51%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:72.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:11.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;March 31, &lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:11.99%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;December 31, &lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:0.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:72.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:11.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:11.99%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2019&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:0.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:72.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Revolving credit facility&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 150,000&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.17%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 28,000&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:0.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:72.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Term loan&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 140,625&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.17%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 150,000&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:0.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:72.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Notes to former owners&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 43,667&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.82%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.17%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 48,483&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:0.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:72.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;Total principal amount&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 334,292&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.17%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 226,483&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:0.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:72.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;Less&#x2014;unamortized debt issuance costs&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt; (329)&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.82%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.17%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt; (348)&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:0.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:72.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;Total debt, net of unamortized debt issuance costs&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 333,963&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.17%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 226,135&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:0.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:72.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;Less&#x2014;current portion&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt; (850)&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.82%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.17%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt; (20,817)&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:0.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:72.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;Total long-term portion of debt, net&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.94%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 333,113&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.82%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.17%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 205,318&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:0.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;padding-left:18pt;text-indent:-18pt;margin:0pt 0pt 0pt 36pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;"&gt;Revolving Credit Facility and Term Loan&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;In December 2019, we amended our senior credit facility (the &#x201c;Facility&#x201d;) provided by a syndicate of banks, increasing our borrowing capacity from $400.0 million to $600.0 million. As amended, the Facility is composed of a revolving credit line in the amount of $450.0 million and a $150.0 million term loan, and the Facility provides for a $150.0 million accordion or increase option for the revolving portion of the Facility. The amended Facility also includes a sublimit of up to $160.0 million issuable in the form of letters of credit. The Facility expires in January 2025 and is secured by a first lien on substantially all of our personal property except for assets related to projects subject to surety bonds and assets held by certain unrestricted subsidiaries and our wholly owned captive insurance company, and a second lien on our assets related to projects subject to surety bonds. In connection with the amendment in December &lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;2019, we incurred approximately $1.4 million in financing and professional costs which are being amortized over the remaining term of the Facility. Of this amount, $0.4 million is attributable to the term loan and is being amortized using the effective interest method. The remaining $1.0 million is attributable to the revolving credit line, which combined with the previous unamortized costs of $1.3 million, is being amortized over the remaining term of the Facility on a straight-line basis as a non-cash charge to interest expense. For the term loan, we are required to make quarterly payments increasing over time from 1.25% to 3.75% of the original aggregate principal amount of the term loan, with the balance due in January 2025. As of March 31, 2020, we had $150.0 million of outstanding borrowings on the revolving credit facility, $55.6&#160;million in letters of credit outstanding and $244.4&#160;million of credit available.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;There are two interest rate options for borrowings under the Facility, the Base Rate Loan Option and the Eurodollar Rate Loan Option. These rates are floating rates determined by the broad financial markets, meaning they can and do move up and down from time to time. Additional margins are then added to these two rates.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;The following is a summary of the additional margins:&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:40.08%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.52%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.43%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.95%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.43%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.95%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.43%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.97%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:40.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="7" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:55.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Consolidated&#160;Total&#160;Indebtedness&#160;to&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:40.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="7" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:55.7%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Credit&#160;Facility&#160;Adjusted&#160;EBITDA&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:40.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Less&#160;than&#160;1.00&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:3.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:9.95%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;1.00&#160;to&#160;1.75&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:3.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:9.95%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;1.75&#160;to&#160;2.50&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:3.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.97%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2.50&#160;or&#160;greater&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:40.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Additional Per Annum Interest Margin Added Under:&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:40.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;Base Rate Loan Option&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 0.25&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;%&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 0.50&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;%&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 0.75&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;%&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 1.00&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:40.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;Eurodollar Rate Loan Option&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 1.25&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 1.50&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 1.75&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 2.00&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;The weighted average interest rate applicable to the borrowings under the revolving credit facility was approximately 2.5% as of March 31, 2020. The weighted average interest rate applicable to the term loan was approximately 2.5% as of March 31, 2020.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;Certain of our vendors require letters of credit to ensure reimbursement for amounts they are disbursing on our behalf, such as to beneficiaries under our self-funded insurance programs. We have also occasionally used letters of credit to guarantee performance under our contracts and to ensure payment to our subcontractors and vendors under those contracts. Our lenders issue such letters of credit through the Facility. We have never had a claim made against a letter of credit that resulted in payments by a lender or by us and believe such a claim is unlikely in the foreseeable future. The letter of credit fees range from 1.25% to 2.00% per annum, based on the ratio of Consolidated Total Indebtedness to &#x201c;Credit Facility Adjusted EBITDA,&#x201d; which shall mean Consolidated EBITDA as such term is defined in the credit agreement.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;Commitment fees are payable on the portion of the revolving loan capacity not in use for borrowings or letters of credit at any given time. These fees range from 0.20% to 0.35% per annum, based on the ratio of Consolidated Total Indebtedness to Credit Facility Adjusted EBITDA, as defined in the credit agreement.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;The Facility contains financial covenants defining various financial measures and the levels of these measures with which we must comply. Covenant compliance is assessed as of each quarter end.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;The Facility&#x2019;s principal financial covenants include:&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;i style="font-style:italic;"&gt;Total Leverage Ratio&lt;/i&gt;&#x2014;The Facility requires that the ratio of our Consolidated Total Indebtedness to our Credit Facility Adjusted EBITDA not exceed 3.00 to 1.00 as of the end of each fiscal quarter. The leverage ratio as of March 31, 2020 was 1.5.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="font-style:italic;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;i style="font-style:italic;"&gt;Fixed Charge Coverage Ratio&lt;/i&gt;&#x2014;The Facility requires that the ratio of (a) Credit Facility Adjusted EBITDA, less non-financed capital expenditures, provision for income taxes, dividends and amounts used to repurchase stock when the Company&#x2019;s Total Leverage Ratio exceeds 2.00 to 1.00 to (b) the sum of interest expense and scheduled principal payments of indebtedness be at least 1.50 to 1.00. Credit Facility Adjusted EBITDA, capital expenditures, provision for income taxes, dividends, stock repurchase payments, interest expense, and scheduled principal payments are defined under the Facility for purposes of this covenant, to be amounts for the four quarters ending as of any given quarterly covenant compliance measurement date. The fixed charge coverage ratio as of March 31, 2020 was 10.7.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;i style="font-style:italic;"&gt;Other Restrictions&lt;/i&gt;&#x2014;The Facility permits acquisitions of up to $5.0 million per transaction, provided that the aggregate purchase price of such an acquisition and of acquisitions in the same fiscal year does not exceed $10.0&#160;million. However, these limitations only apply when the Company&#x2019;s Total Leverage Ratio is greater than 2.50 to 1.00.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;While the Facility&#x2019;s financial covenants do not specifically govern capacity under the Facility, if our debt level under the Facility at a quarter-end covenant compliance measurement date were to cause us to violate the Facility&#x2019;s leverage ratio covenant, our borrowing capacity under the Facility and the favorable terms that we currently have could be negatively impacted by the lenders.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;We were in compliance with all of our financial covenants as of March 31, 2020.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;padding-left:18pt;text-indent:-18pt;margin:0pt 0pt 0pt 36pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;"&gt;Notes to Former Owners&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;As part of the consideration used to acquire six companies, we have outstanding notes to the former owners. These notes had an outstanding balance of $43.7 million as of March 31, 2020. In conjunction with the acquisition of the electrical contractor in North Carolina in the first quarter of 2020, we issued a promissory note to former owners with an outstanding balance of $8.0 million as of March 31, 2020 that bears interest, payable quarterly, at a stated interest rate of 3.0%. The principal is due in equal installments in February 2023 and February 2024. In conjunction with the Walker acquisition in the second quarter of 2019, we issued a promissory note to former owners with an outstanding balance of $25.0 million as of March 31, 2020 that bears interest, payable quarterly, at a stated interest rate of 4.0%. The principal is due in equal installments in April 2022 and April 2023. In conjunction with the BCH acquisition in the second quarter of 2017, we issued a promissory note to former owners with an outstanding balance of $7.2 million as of March 31, 2020 that bears interest, payable quarterly, at a stated interest rate of 3.0%. The principal is due in April 2021. In conjunction with three immaterial acquisitions in 2018 and 2019, we issued notes to former owners with an outstanding balance of $3.5 million as of March 31, 2020 that bear interest, payable quarterly, at stated interest rates ranging from 3.0% - 3.5%. The principal amounts are due between May 2020 &#x2013; July 2021. &lt;/p&gt;</us-gaap:DebtDisclosureTextBlock>
    <us-gaap:ScheduleOfDebtTableTextBlock
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tb_if3cmzwD6k6fyGdcRRNhrA">&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;Debt obligations consist of the following (in thousands):&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:72.14%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.94%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.17%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:0.51%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:72.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:11.22%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;March 31, &lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:11.99%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;December 31, &lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:0.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:72.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:11.22%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:11.99%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2019&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:0.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:72.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Revolving credit facility&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 150,000&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.17%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 28,000&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:0.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:72.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Term loan&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 140,625&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.17%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 150,000&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:0.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:72.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Notes to former owners&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 43,667&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.82%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.17%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 48,483&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:0.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:72.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;Total principal amount&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 334,292&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.17%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 226,483&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:0.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:72.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;Less&#x2014;unamortized debt issuance costs&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt; (329)&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.82%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.17%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt; (348)&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:0.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:72.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;Total debt, net of unamortized debt issuance costs&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 333,963&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.82%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.17%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 226,135&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:0.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:72.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;Less&#x2014;current portion&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt; (850)&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.82%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.17%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt; (20,817)&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:0.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:72.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;Total long-term portion of debt, net&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.94%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 333,113&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.82%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.17%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 205,318&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:0.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;&lt;span style="margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;</us-gaap:ScheduleOfDebtTableTextBlock>
    <us-gaap:DebtLongtermAndShorttermCombinedAmount
      contextRef="As_Of_3_31_2020_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_lds0aPig7UOFzewjJIcSZA"
      decimals="-3"
      id="Tc_q1xDgH1LW0OYpfVhj29lJw_3_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">150000000</us-gaap:DebtLongtermAndShorttermCombinedAmount>
    <us-gaap:DebtLongtermAndShorttermCombinedAmount
      contextRef="As_Of_12_31_2019_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_bNyAXSAlZEavI9xwqeeYlA"
      decimals="-3"
      id="Tc_i5rgkudfXUaVaW2rCGJkPg_3_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">28000000</us-gaap:DebtLongtermAndShorttermCombinedAmount>
    <us-gaap:DebtLongtermAndShorttermCombinedAmount
      contextRef="As_Of_3_31_2020_us-gaap_DebtInstrumentAxis_fix_TermLoanMember_KE-m-eiSwUqZA1NO6AYrtQ"
      decimals="-3"
      id="Tc_t8_9rFIppE65LCQY8RHLdg_4_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">140625000</us-gaap:DebtLongtermAndShorttermCombinedAmount>
    <us-gaap:DebtLongtermAndShorttermCombinedAmount
      contextRef="As_Of_12_31_2019_us-gaap_DebtInstrumentAxis_fix_TermLoanMember_BrIsakRke0q2qV2lZetOHg"
      decimals="-3"
      id="Tc_0uVPmJHvOk-udsVmazp4_w_4_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">150000000</us-gaap:DebtLongtermAndShorttermCombinedAmount>
    <us-gaap:NotesAndLoansPayable
      contextRef="As_Of_3_31_2020_us-gaap_DebtInstrumentAxis_fix_SubordinateDebtAndPromissoryNoteMember_b-xJfIzcM0SD3FWM_8Mwyg"
      decimals="-3"
      id="Tc_8G2ae9SDHUCFdKNj15xvKg_5_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">43667000</us-gaap:NotesAndLoansPayable>
    <us-gaap:NotesAndLoansPayable
      contextRef="As_Of_12_31_2019_us-gaap_DebtInstrumentAxis_fix_SubordinateDebtAndPromissoryNoteMember_SQSxMqZA1EKe9AZ99xUeWg"
      decimals="-3"
      id="Tc_h63Ewm-Vt0mOLLapA1-Uzw_5_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">48483000</us-gaap:NotesAndLoansPayable>
    <us-gaap:DebtLongtermAndShorttermCombinedAmount
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_MU2E7GKJm0agirwGqkh15A_6_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">334292000</us-gaap:DebtLongtermAndShorttermCombinedAmount>
    <us-gaap:DebtLongtermAndShorttermCombinedAmount
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_9JIMTM1Ahkim7jC8TCqCrQ_6_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">226483000</us-gaap:DebtLongtermAndShorttermCombinedAmount>
    <us-gaap:DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_deCIvpOGZUS-ROidpmdynQ_7_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">329000</us-gaap:DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet>
    <us-gaap:DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_shl2V8UZgECYIWB6wn7SMg_7_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">348000</us-gaap:DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet>
    <us-gaap:LongTermDebt
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_rVnEMAx-0EipYXAWsz4svw_8_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">333963000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_x8rMwdv-9kOq2tvlkTLVqQ_8_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">226135000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebtCurrent
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_Esd04nEJ10ijxMbBW-vf2g_9_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">850000</us-gaap:LongTermDebtCurrent>
    <us-gaap:LongTermDebtCurrent
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_Yt65AmE6i0mikJThjwe5xg_9_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">20817000</us-gaap:LongTermDebtCurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_4UXXkb-qEUSjVsDRGvMr-w_10_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">333113000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="As_Of_12_31_2019_sinOSgbHi0OpEJEol5d3bQ"
      decimals="-3"
      id="Tc_IbULJ4yEEkK5lf5Okd9fJA_10_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">205318000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="As_Of_12_19_2019_us-gaap_DebtInstrumentAxis_fix_AmendedSeniorRevolvingCreditFacilityMember_NOfhy_mRjUebfmvykajoCA"
      decimals="-5"
      id="Narr_u_wb_6UlKkmtUb7tayMXqQ"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">400000000.0</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="As_Of_12_31_2019_us-gaap_DebtInstrumentAxis_fix_AmendedSeniorRevolvingCreditFacilityMember_ZMK3qCKhz0epZrdQfA9GWg"
      decimals="-5"
      id="Narr_rUfvk5Spp0uPLcKQD6_vmg"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">600000000.0</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="As_Of_12_31_2019_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_bNyAXSAlZEavI9xwqeeYlA"
      decimals="-5"
      id="Narr_sWZ7YW8OAUm_4KHIMql7JQ"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">450000000.0</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="As_Of_12_31_2019_us-gaap_DebtInstrumentAxis_fix_TermLoanMember_BrIsakRke0q2qV2lZetOHg"
      decimals="-5"
      id="Narr_j4R0VYGqI0usLjaYbfB-lg"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">150000000.0</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <fix:LineOfCreditBorrowingCapacityAccordionOption
      contextRef="As_Of_12_31_2019_us-gaap_DebtInstrumentAxis_fix_AmendedSeniorRevolvingCreditFacilityMember_ZMK3qCKhz0epZrdQfA9GWg"
      decimals="-5"
      id="Narr_tYXp3aLnJka7nJaO8DBhVQ"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">150000000.0</fix:LineOfCreditBorrowingCapacityAccordionOption>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="As_Of_12_31_2019_us-gaap_DebtInstrumentAxis_us-gaap_LetterOfCreditMember_jM8o10PfAEKWH-KW7Knw_Q"
      decimals="-5"
      id="Narr_XDzLXeuxtkO85-4bV68LWg"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">160000000.0</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:PaymentsOfFinancingCosts
      contextRef="Duration_12_20_2019_To_12_31_2019_us-gaap_DebtInstrumentAxis_fix_AmendedSeniorRevolvingCreditFacilityMember_aG3dtNKf2EKfQ1_OnNOqtA"
      decimals="-5"
      id="Narr_pfgSU4xEKEysQbZCY5bIhg"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">1400000</us-gaap:PaymentsOfFinancingCosts>
    <fix:PaymentsOfFinancingCostsTermLoan
      contextRef="Duration_12_20_2019_To_12_31_2019_us-gaap_DebtInstrumentAxis_fix_TermLoanMember_NElvW6Ezd02ePJyBXHtr7g"
      decimals="-5"
      id="Narr_pMaSq-bbKEG7er3odomD1Q"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">400000</fix:PaymentsOfFinancingCostsTermLoan>
    <fix:PaymentsOfFinancingCostsLineOfCreditArrangements
      contextRef="Duration_12_20_2019_To_12_31_2019_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_8p7nmf53vEKSw7cUTmPneQ"
      decimals="-5"
      id="Narr_onVPZWxWSUu6DnJXCWLTuw"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">1000000.0</fix:PaymentsOfFinancingCostsLineOfCreditArrangements>
    <us-gaap:DebtIssuanceCostsLineOfCreditArrangementsNet
      contextRef="As_Of_12_19_2019_us-gaap_DebtInstrumentAxis_fix_AmendedSeniorRevolvingCreditFacilityMember_NOfhy_mRjUebfmvykajoCA"
      decimals="-5"
      id="Narr_V1aU7aGYsUa0nfkhhHQGZg"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">1300000</us-gaap:DebtIssuanceCostsLineOfCreditArrangementsNet>
    <fix:RepaymentInTermsOfPercentageOfOriginalAggregatePrincipalAmount
      contextRef="Duration_12_19_2019_To_12_19_2019_us-gaap_DebtInstrumentAxis_fix_AmendedSeniorRevolvingCreditFacilityMember_Myj6LWuIqE6ip0xT-86XXg"
      decimals="4"
      id="Narr_z0pf0GZeSkOh0kB-dWyc1g"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.0125</fix:RepaymentInTermsOfPercentageOfOriginalAggregatePrincipalAmount>
    <fix:RepaymentInTermsOfPercentageOfOriginalAggregatePrincipalAmount
      contextRef="Duration_12_20_2019_To_12_20_2019_us-gaap_DebtInstrumentAxis_fix_AmendedSeniorRevolvingCreditFacilityMember_1xR4l-bWJkyz_AhZLCcOkw"
      decimals="4"
      id="Narr_pjJN7JuFxkOFdRWibxX6bQ"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.0375</fix:RepaymentInTermsOfPercentageOfOriginalAggregatePrincipalAmount>
    <us-gaap:LineOfCredit
      contextRef="As_Of_3_31_2020_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_lds0aPig7UOFzewjJIcSZA"
      decimals="-5"
      id="Narr_oXxpmPm4iE-JyxmVeX4TSw"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">150000000.0</us-gaap:LineOfCredit>
    <us-gaap:LettersOfCreditOutstandingAmount
      contextRef="As_Of_3_31_2020_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_lds0aPig7UOFzewjJIcSZA"
      decimals="-5"
      id="Narr_pJvbXrtglkq_wQ2Hs9VSLA"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">55600000</us-gaap:LettersOfCreditOutstandingAmount>
    <us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity
      contextRef="As_Of_3_31_2020_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_lds0aPig7UOFzewjJIcSZA"
      decimals="-5"
      id="Narr_aPP388RlQUSVugJSlNvFvw"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">244400000</us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity>
    <fix:DebtInstrumentInterestRateOptionsNumber
      contextRef="Duration_1_1_2020_To_3_31_2020_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_YMNqvhAqpE2hLaFjlBcXkA"
      decimals="INF"
      id="Narr_qUCEdnQpZUaDJvEnYqtpZA"
      unitRef="Unit_Standard_item_j1HsmHPAlEajrX_a6hBAIA">2</fix:DebtInstrumentInterestRateOptionsNumber>
    <fix:DebtInstrumentInterestRateOptionsNumber
      contextRef="Duration_1_1_2020_To_3_31_2020_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_YMNqvhAqpE2hLaFjlBcXkA"
      decimals="INF"
      id="Narr_Yfgldbpw8Ei8tZWKlfHuhA"
      unitRef="Unit_Standard_item_j1HsmHPAlEajrX_a6hBAIA">2</fix:DebtInstrumentInterestRateOptionsNumber>
    <fix:ScheduleOfAdditionalMarginsTableTextBlock
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tb_39X5KP2ahE2r4zEo0xM76w">&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:40.08%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.52%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.43%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.95%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.43%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.95%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.43%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.97%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:40.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="7" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:55.7%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Consolidated&#160;Total&#160;Indebtedness&#160;to&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:40.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="7" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:55.7%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Credit&#160;Facility&#160;Adjusted&#160;EBITDA&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:40.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Less&#160;than&#160;1.00&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:3.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:9.95%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;1.00&#160;to&#160;1.75&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:3.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:9.95%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;1.75&#160;to&#160;2.50&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:3.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:12.97%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2.50&#160;or&#160;greater&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:40.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Additional Per Annum Interest Margin Added Under:&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:40.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;Base Rate Loan Option&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 0.25&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;%&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 0.50&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;%&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 0.75&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:3.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;%&#160;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:12.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 1.00&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:40.08%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 0pt 12pt;"&gt;Eurodollar Rate Loan Option&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.52%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 1.25&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 1.50&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 1.75&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:3.43%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:12.97%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 2.00&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.14%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;%&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</fix:ScheduleOfAdditionalMarginsTableTextBlock>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="Duration_1_1_2020_To_3_31_2020_fix_DebtCovenantRatioAxis_fix_DebtCovenantRatioRangeOneMember_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_BaseRateMember_KkjYWfVoAU-Ac9n7Ko3ghQ"
      decimals="INF"
      id="Tc_1J0D_gNVp02d71Q70Cw45A_5_2"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.0025</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="Duration_1_1_2020_To_3_31_2020_fix_DebtCovenantRatioAxis_fix_DebtCovenantRatioRangeTwoMember_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_BaseRateMember_EBmqM5h0hUaknF_CeNNDTw"
      decimals="INF"
      id="Tc_JAEE6tBcLk-r8oIRzpBeEA_5_4"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.0050</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="Duration_1_1_2020_To_3_31_2020_fix_DebtCovenantRatioAxis_fix_DebtCovenantRatioRangeThreeMember_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_BaseRateMember_JlaNi7DdNEqlv9VHSasSZQ"
      decimals="INF"
      id="Tc_M72dUbumMU60NbQqIM0alg_5_6"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.0075</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="Duration_1_1_2020_To_3_31_2020_fix_DebtCovenantRatioAxis_fix_DebtCovenantRatioRangeFourMember_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_BaseRateMember_Lu0G_yjauEqkbrNf13njzQ"
      decimals="INF"
      id="Tc_ebrY7gAe_0O16CSCn_BaYw_5_8"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.0100</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="Duration_1_1_2020_To_3_31_2020_fix_DebtCovenantRatioAxis_fix_DebtCovenantRatioRangeOneMember_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_EurodollarMember_oHimJ3ER-0KOm3-fViyVpA"
      decimals="INF"
      id="Tc_iqciVHk2AkCUq9jWxbMN6Q_6_2"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.0125</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="Duration_1_1_2020_To_3_31_2020_fix_DebtCovenantRatioAxis_fix_DebtCovenantRatioRangeTwoMember_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_EurodollarMember_3zZ7xMXMY0-2A1VwfWB04g"
      decimals="INF"
      id="Tc_vc7d-8CoBkunRXOIjUboNQ_6_4"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.0150</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="Duration_1_1_2020_To_3_31_2020_fix_DebtCovenantRatioAxis_fix_DebtCovenantRatioRangeThreeMember_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_EurodollarMember_wPezgpMrSUm9hk8xhoqHLA"
      decimals="INF"
      id="Tc_-OUnMDLuIUKFZ09JpfohcQ_6_6"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.0175</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="Duration_1_1_2020_To_3_31_2020_fix_DebtCovenantRatioAxis_fix_DebtCovenantRatioRangeFourMember_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_VariableRateAxis_us-gaap_EurodollarMember_40uDpPdyVkOv6mY5pchHtw"
      decimals="INF"
      id="Tc_7pTpZGlZIUiXueoelSw3Tw_6_8"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.0200</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtWeightedAverageInterestRate
      contextRef="As_Of_3_31_2020_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_lds0aPig7UOFzewjJIcSZA"
      decimals="3"
      id="Narr_2bH_mDqjV0SzykUXf7ePNA"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.025</us-gaap:DebtWeightedAverageInterestRate>
    <us-gaap:DebtWeightedAverageInterestRate
      contextRef="As_Of_3_31_2020_us-gaap_DebtInstrumentAxis_fix_TermLoanMember_KE-m-eiSwUqZA1NO6AYrtQ"
      decimals="3"
      id="Narr_bl2CSF5jSUyzXiHEbYnBtQ"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.025</us-gaap:DebtWeightedAverageInterestRate>
    <fix:LetterOfCreditFeesPercentage
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_RangeAxis_srt_MinimumMember_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_q_ItQzSqNkG7fdN7JQMPog"
      decimals="INF"
      id="Narr_ecAndpRcQUejXFFQttExbQ"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.0125</fix:LetterOfCreditFeesPercentage>
    <fix:LetterOfCreditFeesPercentage
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_RangeAxis_srt_MaximumMember_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_Pu01146Krky7z31jyzL9ZQ"
      decimals="INF"
      id="Narr_TXR8hKz_QU2ZVzN9s4Tpfw"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.0200</fix:LetterOfCreditFeesPercentage>
    <us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_RangeAxis_srt_MinimumMember_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_q_ItQzSqNkG7fdN7JQMPog"
      decimals="INF"
      id="Narr_2yZFFEP73Uim_lSjoFqWoQ"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.0020</us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage>
    <us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_RangeAxis_srt_MaximumMember_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_Pu01146Krky7z31jyzL9ZQ"
      decimals="INF"
      id="Narr_K0SblxIOAkOXw4wpFhb3Lw"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.0035</us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage>
    <fix:DebtInstrumentCovenantLeverageRatio
      contextRef="As_Of_3_31_2020_fix_DebtCovenantEffectiveDateAxis_fix_ThroughMaturityMember_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_Fjs6Wm3jXUSOWUu6sauO3Q"
      decimals="INF"
      id="Narr_HUutyllq_0iP2nh7zpm72Q"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">3.00</fix:DebtInstrumentCovenantLeverageRatio>
    <fix:DebtInstrumentCovenantLeverageRatio
      contextRef="As_Of_3_31_2020_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_lds0aPig7UOFzewjJIcSZA"
      decimals="2"
      id="Narr_-zLjSlzNe0mYCD8mrXd-Bw"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">1.5</fix:DebtInstrumentCovenantLeverageRatio>
    <fix:DebtInstrumentCovenantFixedChargeCoverageRatio
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="2"
      id="Narr_41_vRMP5BEWQXnHVLKZkEQ"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">2.00</fix:DebtInstrumentCovenantFixedChargeCoverageRatio>
    <fix:DebtInstrumentCovenantFixedChargeCoverageRatio
      contextRef="As_Of_3_31_2020_srt_RangeAxis_srt_MinimumMember_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_IMotodu08ECA4IqoK_p6Qg"
      decimals="2"
      id="Narr_wCRa016GdEmHsbn3B0te0g"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">1.50</fix:DebtInstrumentCovenantFixedChargeCoverageRatio>
    <fix:DebtInstrumentCovenantCapitalExpendituresTaxProvisionsDividendsAndStockRepurchasePaymentsUsedForCalculationOfFixedChargeCoverageRatioNumberOfQuarters
      contextRef="Duration_1_1_2020_To_3_31_2020_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_YMNqvhAqpE2hLaFjlBcXkA"
      decimals="INF"
      id="Narr_8-epVzf0I0Ct-81aMd84Dw"
      unitRef="Unit_Standard_item_j1HsmHPAlEajrX_a6hBAIA">4</fix:DebtInstrumentCovenantCapitalExpendituresTaxProvisionsDividendsAndStockRepurchasePaymentsUsedForCalculationOfFixedChargeCoverageRatioNumberOfQuarters>
    <fix:DebtInstrumentCovenantFixedChargeCoverageRatio
      contextRef="As_Of_3_31_2020_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_lds0aPig7UOFzewjJIcSZA"
      decimals="1"
      id="Narr_T4sFnVrUDU-80Wpi5p400A"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">10.7</fix:DebtInstrumentCovenantFixedChargeCoverageRatio>
    <fix:DebtInstrumentCovenantOtherRestrictionsPermittedAcquisitionAmountPerTransaction
      contextRef="As_Of_3_31_2020_srt_RangeAxis_srt_MaximumMember_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_a8m1kh76wE6DrWvHOu35EA"
      decimals="-5"
      id="Narr_TQfjJ9tspU-gGC3V7r_igg"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">5000000.0</fix:DebtInstrumentCovenantOtherRestrictionsPermittedAcquisitionAmountPerTransaction>
    <fix:DebtInstrumentCovenantOtherRestrictionsAggregatePurchasePriceOfAcquisitions
      contextRef="As_Of_3_31_2020_srt_RangeAxis_srt_MaximumMember_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_a8m1kh76wE6DrWvHOu35EA"
      decimals="-5"
      id="Narr_gyaNupw-fUeGsTZ6Alh7zA"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">10000000.0</fix:DebtInstrumentCovenantOtherRestrictionsAggregatePurchasePriceOfAcquisitions>
    <fix:DebtInstrumentCovenantOtherRestrictionsNetLeverageRatio
      contextRef="As_Of_3_31_2020_srt_RangeAxis_srt_MinimumMember_srt_StatementScenarioAxis_fix_ScenarioCovenantRequirementMember_us-gaap_DebtInstrumentAxis_us-gaap_RevolvingCreditFacilityMember_zOhM2wZ5AEGxrCWqCls62w"
      decimals="INF"
      id="Narr_5aHhwvuXuUGyK-zY6qbQ3w"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">2.50</fix:DebtInstrumentCovenantOtherRestrictionsNetLeverageRatio>
    <fix:CumulativeNumberOfCompaniesAcquired
      contextRef="As_Of_3_31_2020_us-gaap_DebtInstrumentAxis_fix_SubordinateDebtAndPromissoryNoteMember_b-xJfIzcM0SD3FWM_8Mwyg"
      decimals="INF"
      id="Narr_Ds0JLnBENkG86Ty8WDSD2A"
      unitRef="Unit_Standard_item_j1HsmHPAlEajrX_a6hBAIA">6</fix:CumulativeNumberOfCompaniesAcquired>
    <us-gaap:NotesAndLoansPayable
      contextRef="As_Of_3_31_2020_us-gaap_DebtInstrumentAxis_fix_SubordinateDebtAndPromissoryNoteMember_b-xJfIzcM0SD3FWM_8Mwyg"
      decimals="-5"
      id="Narr_RPnfrZx6_kKwX55zadLGKQ"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">43700000</us-gaap:NotesAndLoansPayable>
    <us-gaap:NotesAndLoansPayable
      contextRef="As_Of_3_31_2020_us-gaap_BusinessAcquisitionAxis_fix_ElectricalContractorNorthCarolinaMember_us-gaap_DebtInstrumentAxis_us-gaap_LoansPayableMember_1Lljb1sRk026YzVzcbAf6Q"
      decimals="-5"
      id="Narr_l3VvLC49-02YFJ_DDraNpQ"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">8000000.0</us-gaap:NotesAndLoansPayable>
    <us-gaap:DebtWeightedAverageInterestRate
      contextRef="As_Of_3_31_2020_us-gaap_BusinessAcquisitionAxis_fix_ElectricalContractorNorthCarolinaMember_us-gaap_DebtInstrumentAxis_us-gaap_LoansPayableMember_1Lljb1sRk026YzVzcbAf6Q"
      decimals="3"
      id="Narr_uNI4tnoC5kqvpLsSfNUSDA"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.030</us-gaap:DebtWeightedAverageInterestRate>
    <us-gaap:NotesAndLoansPayable
      contextRef="As_Of_3_31_2020_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_us-gaap_DebtInstrumentAxis_us-gaap_LoansPayableMember_r9A6DM2BiUipEdZLhw977g"
      decimals="-5"
      id="Narr_0InUJ03vTUSojuyX-dBkfA"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">25000000.0</us-gaap:NotesAndLoansPayable>
    <us-gaap:DebtWeightedAverageInterestRate
      contextRef="As_Of_3_31_2020_us-gaap_BusinessAcquisitionAxis_fix_WalkerTxHoldingsInc.AndItsWhollyOwnedSubsidiariesMember_us-gaap_DebtInstrumentAxis_us-gaap_LoansPayableMember_r9A6DM2BiUipEdZLhw977g"
      decimals="3"
      id="Narr_hfNzTxBb5EeHmxt2KxPNmw"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.040</us-gaap:DebtWeightedAverageInterestRate>
    <us-gaap:NotesAndLoansPayable
      contextRef="As_Of_3_31_2020_us-gaap_BusinessAcquisitionAxis_fix_BchHoldingsIncMember_us-gaap_DebtInstrumentAxis_us-gaap_LoansPayableMember_bRXUDwmR5E6ns4ZHMiudjw"
      decimals="-5"
      id="Narr_G9ijjeZ-E02OizmDKmvOyg"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">7200000</us-gaap:NotesAndLoansPayable>
    <us-gaap:DebtWeightedAverageInterestRate
      contextRef="As_Of_3_31_2020_us-gaap_BusinessAcquisitionAxis_fix_BchHoldingsIncMember_us-gaap_DebtInstrumentAxis_us-gaap_LoansPayableMember_bRXUDwmR5E6ns4ZHMiudjw"
      decimals="3"
      id="Narr_yYf_8bMzPUqDrVex1IM17w"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.030</us-gaap:DebtWeightedAverageInterestRate>
    <us-gaap:NotesAndLoansPayable
      contextRef="As_Of_3_31_2020_us-gaap_BusinessAcquisitionAxis_fix_FiveImmaterialAcquisitionMember_us-gaap_DebtInstrumentAxis_us-gaap_LoansPayableMember_W5kWRoDx8k6d_Kel91Lk2g"
      decimals="-5"
      id="Narr_1Up2m7mOF0OuBdunIhAFWA"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">3500000</us-gaap:NotesAndLoansPayable>
    <us-gaap:DebtWeightedAverageInterestRate
      contextRef="As_Of_3_31_2020_srt_RangeAxis_srt_MinimumMember_us-gaap_BusinessAcquisitionAxis_fix_FiveImmaterialAcquisitionMember_us-gaap_DebtInstrumentAxis_us-gaap_LoansPayableMember_-lxl9owNREORUPf88RBPpw"
      decimals="3"
      id="Narr_wJ4OgKz7-0mD_MgXwgb9Lw"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.030</us-gaap:DebtWeightedAverageInterestRate>
    <us-gaap:DebtWeightedAverageInterestRate
      contextRef="As_Of_3_31_2020_srt_RangeAxis_srt_MaximumMember_us-gaap_BusinessAcquisitionAxis_fix_FiveImmaterialAcquisitionMember_us-gaap_DebtInstrumentAxis_us-gaap_LoansPayableMember_aIvAIAVdiUy7mT4fIlm7Gg"
      decimals="3"
      id="Narr_AuhFNzy-8kmP_m7SC0XnbA"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.035</us-gaap:DebtWeightedAverageInterestRate>
    <us-gaap:CommitmentsAndContingenciesDisclosureTextBlock
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tb_L1YJNs4rbUGkED0oDnJH9w">&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;7. Commitments and Contingencies&lt;/b&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;padding-left:18pt;text-indent:-18pt;margin:0pt 0pt 0pt 36pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;padding-left:18pt;text-indent:-18pt;margin:0pt 0pt 0pt 36pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;"&gt;Claims and Lawsuits&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;We are subject to certain legal and regulatory claims, including lawsuits arising in the normal course of business. We maintain various insurance coverages to minimize financial risk associated with these claims. We have estimated and provided accruals for probable losses and related legal fees associated with certain litigation in the accompanying consolidated financial statements. While we cannot predict the outcome of these proceedings, in management&#x2019;s opinion and based on reports of counsel, any liability arising from these matters individually and in the aggregate will not have a material effect on our operating results, cash flows or financial condition, after giving effect to provisions already recorded.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;padding-left:18pt;text-indent:-18pt;margin:0pt 0pt 0pt 36pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;"&gt;Surety&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;Many customers, particularly in connection with new construction, require us to post performance and payment bonds issued by a financial institution known as a surety. If we fail to perform under the terms of a contract or to pay subcontractors and vendors who provided goods or services under a contract, the customer may demand that the surety make payments or provide services under the bond. We must reimburse the surety for any expenses or outlays it incurs. To date, we are not aware of any losses to our sureties in connection with bonds the sureties have posted on our behalf and do not expect such losses to be incurred in the foreseeable future.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;Current market conditions for surety markets and bonding capacity are adequate, with acceptable terms and conditions. Historically, approximately 15% to 25% of our business has required bonds. While we currently have strong surety relationships to support our bonding needs, future market conditions or changes in the sureties&#x2019; assessment of our operating and financial risk could cause the sureties to decline to issue bonds for our work. If that were to occur, the alternatives include doing more business that does not require bonds, posting other forms of collateral for project performance, such as letters of credit or cash, and seeking bonding capacity from other sureties. We would likely also &lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;encounter concerns from customers, suppliers and other market participants as to our creditworthiness. While we believe our general operating and financial characteristics would enable us to ultimately respond effectively to an interruption in the availability of bonding capacity, such an interruption would likely cause our revenue and profits to decline in the near term.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;padding-left:18pt;text-indent:-18pt;margin:0pt 0pt 0pt 36pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;"&gt;Self-Insurance&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;We are substantially self-insured for workers&#x2019; compensation, employer&#x2019;s liability, auto liability, general liability and employee group health claims, in view of the relatively high per-incident deductibles we absorb under our insurance arrangements for these risks. Losses are estimated and accrued based upon known facts, historical trends and industry averages. Estimated losses in excess of our deductible, which have not already been paid, are included in our accrual with a corresponding receivable from our insurance carrier. Loss estimates associated with the larger and longer-developing risks, such as workers&#x2019; compensation, auto liability and general liability, are reviewed by a third-party actuary quarterly.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;</us-gaap:CommitmentsAndContingenciesDisclosureTextBlock>
    <fix:PercentageOfBusinessWhichHasRequiredBonds
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_RangeAxis_srt_MinimumMember_us-gaap_LossContingenciesByNatureOfContingencyAxis_us-gaap_SuretyBondMember_YAUoQXVmlkajB0mIN6a4jg"
      decimals="2"
      id="Narr_bomO2XdmT0-2yRL97GmPGQ"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.15</fix:PercentageOfBusinessWhichHasRequiredBonds>
    <fix:PercentageOfBusinessWhichHasRequiredBonds
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_RangeAxis_srt_MaximumMember_us-gaap_LossContingenciesByNatureOfContingencyAxis_us-gaap_SuretyBondMember_Zu1dBMl8ykOmqwv31gSVvg"
      decimals="2"
      id="Narr_Kedpf0lKJUezjMBZohsWig"
      unitRef="Unit_Standard_pure_qts_wWOa1EeVtDIN4iVlsQ">0.25</fix:PercentageOfBusinessWhichHasRequiredBonds>
    <us-gaap:StockholdersEquityNoteDisclosureTextBlock
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tb_XNZibCOIAUe29dFfLZwvRA">&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;8. Stockholders&#x2019; Equity&lt;/b&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;padding-left:18pt;text-indent:-18pt;margin:0pt 0pt 0pt 36pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;padding-left:18pt;text-indent:-18pt;margin:0pt 0pt 0pt 36pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;"&gt;Earnings Per Share&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;Basic earnings per share (&#x201c;EPS&#x201d;) is computed by dividing net income by the weighted average number of shares of common stock outstanding during the year. Diluted EPS is computed considering the dilutive effect of stock options, restricted stock, restricted stock units and performance stock units. The vesting of unvested, contingently issuable performance stock units is based on the achievement of certain earnings per share targets and total shareholder return. These shares are considered contingently issuable shares for purposes of calculating diluted earnings per share. These shares are not included in the diluted earnings per share denominator until the performance criteria are met, if it is assumed that the end of the reporting period was the end of the contingency period.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;Unvested restricted stock, restricted stock units and performance stock units are included in diluted earnings per share, weighted outstanding until the shares and units vest. Upon vesting, the vested restricted stock, restricted stock units and performance stock units are included in basic earnings per share weighted outstanding from the vesting date.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;There were less than 0.1 million anti-dilutive stock options excluded from the calculation of diluted EPS for the three months ended March 31, 2020 and 2019, respectively.      &lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;The following table reconciles the number of shares outstanding with the number of shares used in computing basic and diluted earnings per share for each of the periods presented (in thousands):&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:78.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.65%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.65%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.51%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:78.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:19.36%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Three Months Ended &lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:0.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:78.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:19.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;March 31, &lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:0.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:78.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:8.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:8.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2019&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:0.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:78.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Common shares outstanding, end of period&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.65%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 36,450&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.65%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 36,891&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:0.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:78.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Effect of using weighted average common shares outstanding&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 224&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 32&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:78.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Shares used in computing earnings per share&#x2014;basic&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.65%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 36,674&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.65%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 36,923&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:0.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:78.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Effect of shares issuable under stock option plans based on the treasury stock method&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.65%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 148&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.65%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 230&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:78.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Effect of restricted and contingently issuable shares&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 83&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 81&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:0.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:78.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Shares used in computing earnings per share&#x2014;diluted&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.65%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 36,905&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.65%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 37,234&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;padding-left:18pt;text-indent:-18pt;margin:0pt 0pt 0pt 36pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;padding-left:18pt;text-indent:-18pt;margin:0pt 0pt 0pt 36pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;"&gt;Share Repurchase Program&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;On March&#160;29, 2007, our Board of Directors (the &#x201c;Board&#x201d;) approved a stock repurchase program to acquire up to 1.0&#160;million shares of our outstanding common stock. Subsequently, the Board has from time to time increased the number of shares that may be acquired under the program and approved extensions of the program. On November 19, 2019, the Board approved an extension to the program by increasing the shares authorized for repurchase by 0.8 million shares. Since the inception of the repurchase program, the Board has approved 9.5&#160;million shares to be repurchased. As &lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="white-space:pre-wrap;"&gt;of March 31, 2020, we have repurchased a cumulative total of 8.9&#160;million shares at an average price of $18.24 per share under the repurchase program.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;The share repurchases will be made from time to time at our discretion in the open market or privately negotiated transactions as permitted by securities laws and other legal requirements, and subject to market conditions and other factors. In an exercise of such discretion, commencing on March 27, 2020, we have temporarily suspended share repurchases in response to the uncertainty surrounding the current COVID-19 pandemic, as more fully described in &#x201c;Item 1A. Risk Factors&#x201d; herein. The Board may modify, suspend, extend or terminate the program at any time. During the three months ended March 31, 2020, we repurchased 0.2 million shares for approximately $9.0 million at an average price of $37.85 per share.  &lt;/p&gt;</us-gaap:StockholdersEquityNoteDisclosureTextBlock>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="Duration_1_1_2019_To_3_31_2019_srt_RangeAxis_srt_MaximumMember_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_fix_EmployeeAndNonemployeeStockOptionMember_HURh1lTisES4icDeODvwsw"
      decimals="-5"
      id="Narr_CBiu-cFjQ0ODTQTA-mJzTQ"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">100000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_RangeAxis_srt_MaximumMember_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_fix_EmployeeAndNonemployeeStockOptionMember_3GGRUzf8IkSrTigsZC86cA"
      decimals="-5"
      id="Narr_FtzwyGDfGkeB31LLKS0BWg"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">100000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tb_kRKadtrLOUC-B6htKm20Eg">&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;The following table reconciles the number of shares outstanding with the number of shares used in computing basic and diluted earnings per share for each of the periods presented (in thousands):&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:78.06%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.65%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.65%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.51%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:78.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:19.36%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Three Months Ended &lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:0.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:78.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:19.36%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;March 31, &lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:0.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:78.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:8.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:8.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;2019&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:0.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:78.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Common shares outstanding, end of period&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.65%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 36,450&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.65%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 36,891&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:0.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:78.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Effect of using weighted average common shares outstanding&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 224&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 32&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:78.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Shares used in computing earnings per share&#x2014;basic&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.65%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 36,674&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.65%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 36,923&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:0.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:78.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Effect of shares issuable under stock option plans based on the treasury stock method&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.65%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 148&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.65%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 230&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:78.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Effect of restricted and contingently issuable shares&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 83&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:8.65%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 81&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:0.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:78.06%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Shares used in computing earnings per share&#x2014;diluted&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.65%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 36,905&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:8.65%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 37,234&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:0.51%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;padding-left:18pt;text-indent:-18pt;margin:0pt 0pt 0pt 36pt;"&gt;&lt;span style="font-style:italic;font-weight:bold;margin-left:0pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;</us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="As_Of_3_31_2020_313g4BAbcEebZ2ZCQvavjA"
      decimals="-3"
      id="Tc_oK4_x_F4XkCtKxr22cAdPQ_4_2"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">36450000</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="As_Of_3_31_2019_Da6SU3sKbkaqGenTlya3Zw"
      decimals="-3"
      id="Tc_AlFjKITpOUa4hxxhvTIAQw_4_4"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">36891000</us-gaap:CommonStockSharesOutstanding>
    <fix:EffectOfUsingWeightedAverageCommonSharesOutstanding
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_1aOpgPG1TkmSlj2FSN3aMg_5_2"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">224000</fix:EffectOfUsingWeightedAverageCommonSharesOutstanding>
    <fix:EffectOfUsingWeightedAverageCommonSharesOutstanding
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_oP4tLePf8UGjqpL1NQVdSA_5_4"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">32000</fix:EffectOfUsingWeightedAverageCommonSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_8buKapAqVk6n6D1T5m4XwA_6_2"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">36674000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_HmI_ciIRgEiCHGrQhOgTvw_6_4"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">36923000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_eogPlzqCb0K5N7gWkhTwkw_7_2"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">148000</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_szQZMCVks0e8AYmh-RW2tw_7_4"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">230000</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:IncrementalCommonSharesAttributableToContingentlyIssuableShares
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_3K_5uOW7DUap-0IApGe_lg_8_2"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">83000</us-gaap:IncrementalCommonSharesAttributableToContingentlyIssuableShares>
    <us-gaap:IncrementalCommonSharesAttributableToContingentlyIssuableShares
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_1JtL_pNyGU-xwJ1b59WwcA_8_4"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">81000</us-gaap:IncrementalCommonSharesAttributableToContingentlyIssuableShares>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_M_1gh2X3xEm24mmO3PGWGw_9_2"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">36905000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_fF72NmtHnU-sKjp6iNJ_OQ_9_4"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">37234000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased
      contextRef="As_Of_3_29_2007_us-gaap_PlanNameAxis_fix_StockRepurchaseProgram2007Member_-cPh-ODN9E2Ts3RG_xpE4g"
      decimals="-5"
      id="Narr_NqezP1mt5EOREGnPMDXRTQ"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">1000000.0</us-gaap:StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased>
    <us-gaap:StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased
      contextRef="As_Of_11_19_2019_us-gaap_PlanNameAxis_fix_StockRepurchaseProgram2007Member_Iq6uPmfvbEqWkQpEl1HaCg"
      decimals="-5"
      id="Narr_bWdq06rPE0aJa3S5s2j92g"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">800000</us-gaap:StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased>
    <us-gaap:StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased
      contextRef="As_Of_3_31_2020_us-gaap_PlanNameAxis_fix_StockRepurchaseProgram2007Member_Sv8LPl1Miku2yfI0nthjAQ"
      decimals="-5"
      id="Narr_kSOpf7EwuUaT06SXcb7_kg"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">9500000</us-gaap:StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased>
    <us-gaap:TreasuryStockSharesAcquired
      contextRef="Duration_3_29_2007_To_3_31_2020_us-gaap_PlanNameAxis_fix_StockRepurchaseProgram2007Member_QkS2SijR5k2QPnWzMkdX8A"
      decimals="-5"
      id="Narr_54vtwzpOnEeqMmF402Mo6g"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">8900000</us-gaap:TreasuryStockSharesAcquired>
    <us-gaap:TreasuryStockAcquiredAverageCostPerShare
      contextRef="Duration_3_29_2007_To_3_31_2020_us-gaap_PlanNameAxis_fix_StockRepurchaseProgram2007Member_QkS2SijR5k2QPnWzMkdX8A"
      decimals="2"
      id="Narr_IrbKadq9VE2tIOvEDiOUYw"
      unitRef="Unit_Divide_USD_shares_Pr27T94MxEaOLB-gD6gNcw">18.24</us-gaap:TreasuryStockAcquiredAverageCostPerShare>
    <us-gaap:TreasuryStockSharesAcquired
      contextRef="Duration_1_1_2020_To_3_31_2020_us-gaap_PlanNameAxis_fix_StockRepurchaseProgram2007Member_Uo7cI1VSUUeoN4X3FembUQ"
      decimals="-5"
      id="Narr_o7vGVgOpAk-Df7V0JC9vfw"
      unitRef="Unit_Standard_shares_vvzUD8UlUkyWTVMTmBdzNA">200000</us-gaap:TreasuryStockSharesAcquired>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="Duration_1_1_2020_To_3_31_2020_us-gaap_PlanNameAxis_fix_StockRepurchaseProgram2007Member_Uo7cI1VSUUeoN4X3FembUQ"
      decimals="-5"
      id="Narr_sGwge7WUz0isjmyMXx17rA"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">9000000.0</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:TreasuryStockAcquiredAverageCostPerShare
      contextRef="Duration_1_1_2020_To_3_31_2020_us-gaap_PlanNameAxis_fix_StockRepurchaseProgram2007Member_Uo7cI1VSUUeoN4X3FembUQ"
      decimals="2"
      id="Narr_yDEvs2OlIUGNaG5L4bREHQ"
      unitRef="Unit_Divide_USD_shares_Pr27T94MxEaOLB-gD6gNcw">37.85</us-gaap:TreasuryStockAcquiredAverageCostPerShare>
    <us-gaap:SegmentReportingDisclosureTextBlock
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tb_ZjN50-yQI0-T4iPHyxGsHg">&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 12pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;9. Segment Information&lt;/b&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;Our activities are within the mechanical services industry and the electrical services industry, which represent our two reportable segments. We aggregate our operating segments into two reportable segments, as the operating segments meet all of the aggregation criteria. The following table presents information about our reportable segments (in thousands):&lt;/p&gt;&lt;table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:32.3%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.55%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.61%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.94%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.41%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.95%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.5%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.25%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:32.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="11" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:65.63%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Three Months Ended March 31, 2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:32.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:12.39%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Mechanical Services&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:4.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:11.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Electrical Services&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:5.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:13.81%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Corporate&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:4.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:13.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Consolidated&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:32.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.55%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 565,464&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:4.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 134,667&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:5.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:4.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 700,131&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:32.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Gross Profit&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.55%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 108,922&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 8,171&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 117,093&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:32.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.55%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:32.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:65.63%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Three Months Ended March 31, 2019&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:32.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;width:12.39%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Mechanical Services&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:4.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;width:11.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Electrical Services&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:5.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;width:13.81%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Corporate&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:4.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;width:13.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Consolidated&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:32.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.55%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 534,585&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:4.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 3,888&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:5.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:4.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 538,473&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:32.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Gross Profit&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.55%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 105,852&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 813&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 106,665&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;</us-gaap:SegmentReportingDisclosureTextBlock>
    <us-gaap:NumberOfReportableSegments
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="INF"
      id="Narr_IL826L2Wmk67TwYKPxfMqg"
      unitRef="Unit_Standard_segment_Y0pRJOiqTkW3aw1y5jxc_A">2</us-gaap:NumberOfReportableSegments>
    <us-gaap:NumberOfReportableSegments
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="INF"
      id="Narr_kbnuyb_qw0ek3dcKS2OHbg"
      unitRef="Unit_Standard_segment_Y0pRJOiqTkW3aw1y5jxc_A">2</us-gaap:NumberOfReportableSegments>
    <us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tb_d13CDhX8i0Cxh2tOtqFS6g">&lt;table style="border-collapse:collapse;font-size:16pt;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:79.99%;"&gt;&lt;tr style="height:1pt;"&gt;&lt;td style="vertical-align:bottom;width:32.3%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.55%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.61%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.94%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.41%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.95%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.5%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.25%;margin:0pt;padding:0pt;"&gt;&lt;div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"&gt;&lt;div style="bottom:0pt;position:absolute;width:100%;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:1pt;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:32.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="11" style="background-color:auto;vertical-align:bottom;white-space:nowrap;width:65.63%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Three Months Ended March 31, 2020&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:32.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:12.39%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Mechanical Services&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:4.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:11.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Electrical Services&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:5.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:13.81%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Corporate&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:auto;vertical-align:bottom;width:4.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:auto;vertical-align:bottom;width:13.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Consolidated&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:32.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.55%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 565,464&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:4.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 134,667&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:5.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:4.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 700,131&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:32.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Gross Profit&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.55%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 108,922&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 8,171&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 117,093&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:32.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.55%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:32.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:65.63%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Three Months Ended March 31, 2019&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:32.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="font-size:8pt;font-weight:bold;visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;width:12.39%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Mechanical Services&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:4.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;width:11.79%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Electrical Services&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:5.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;width:13.81%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Corporate&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;width:4.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;&#160;&#160;&#160;&#160;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;width:13.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:8pt;text-align:center;margin:0pt;"&gt;&lt;b style="font-weight:bold;"&gt;Consolidated&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;width:32.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:10.55%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 534,585&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:4.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:9.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 3,888&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:5.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:4.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;vertical-align:bottom;white-space:nowrap;width:11.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 538,473&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;width:32.3%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;Gross Profit&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:2.05%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.83%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:10.55%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 105,852&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.61%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:9.94%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 813&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:5.41%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.95%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; &#x2014;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:4.5%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt;"&gt;$&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space:nowrap;width:11.25%;margin:0pt;padding:0pt;"&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-align:right;margin:0pt 3.6pt 0pt 0pt;"&gt; 106,665&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_fix_MechanicalServicesIndustryMember_42pYSpuy_EKSH907UmmyDg"
      decimals="-3"
      id="Tc_2qxc3atv1k6rjcgpi-H11Q_3_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">565464000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_fix_ElectricalServicesIndustryMember_crI6GS-HL02Lpb92Gy9F4g"
      decimals="-3"
      id="Tc_s9Meto4nvkCLfvU1EN2q6Q_3_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">134667000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_0fH_AeEZX02pa5pP1Ip2hA_3_12"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">700131000</us-gaap:Revenues>
    <us-gaap:GrossProfit
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_fix_MechanicalServicesIndustryMember_42pYSpuy_EKSH907UmmyDg"
      decimals="-3"
      id="Tc_83sLYZbHxk-57l7RHjZ44g_4_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">108922000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="Duration_1_1_2020_To_3_31_2020_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_fix_ElectricalServicesIndustryMember_crI6GS-HL02Lpb92Gy9F4g"
      decimals="-3"
      id="Tc_CLWMBHChmEOVbzZW34YNsA_4_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">8171000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      decimals="-3"
      id="Tc_Ef6nD2N-okqb3vmpdwfQEg_4_12"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">117093000</us-gaap:GrossProfit>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2019_To_3_31_2019_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_fix_MechanicalServicesIndustryMember_Dtp_wzTGwEWnhFvB8-C8MA"
      decimals="-3"
      id="Tc_t-iAIi7UZkS3Q_vYdqN9lg_8_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">534585000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2019_To_3_31_2019_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_fix_ElectricalServicesIndustryMember_S5zs5mEBpECb7U7_T3GfTg"
      decimals="-3"
      id="Tc_CJp1p6wJ5EiJbmD4x-UzaQ_8_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">3888000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_ZSfUv_WpfUKuUy-ZhLuVtQ_8_12"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">538473000</us-gaap:Revenues>
    <us-gaap:GrossProfit
      contextRef="Duration_1_1_2019_To_3_31_2019_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_fix_MechanicalServicesIndustryMember_Dtp_wzTGwEWnhFvB8-C8MA"
      decimals="-3"
      id="Tc_zywxzlvulE6MwXf65ErsCw_9_3"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">105852000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="Duration_1_1_2019_To_3_31_2019_srt_ConsolidationItemsAxis_us-gaap_OperatingSegmentsMember_us-gaap_StatementBusinessSegmentsAxis_fix_ElectricalServicesIndustryMember_S5zs5mEBpECb7U7_T3GfTg"
      decimals="-3"
      id="Tc_oZoAdbwlU0O5TQhE_W0AZw_9_6"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">813000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="Duration_1_1_2019_To_3_31_2019_86AZt03vSEGz0tjIEmoNeg"
      decimals="-3"
      id="Tc_QcrlUh3v_UunYp4QsV1G8Q_9_12"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">106665000</us-gaap:GrossProfit>
    <us-gaap:SubsequentEventsTextBlock
      contextRef="Duration_1_1_2020_To_3_31_2020_z8bfieJsx0mkmhwoMErCQw"
      id="Tb_qrCscvcggkK0Ke3Y1bU56A">&lt;p style="font-family:'Times New Roman';font-size:10pt;margin:0pt 0pt 12pt 0pt;"&gt;&lt;b style="font-weight:bold;"&gt;10. Subsequent Events&lt;/b&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;Effective as of April 1, 2020, we consummated a merger through which TAS Energy Inc. (&#x201c;TAS Energy&#x201d;) became a wholly owned subsidiary of the Company. TAS Energy is headquartered in Houston, Texas and is a leading engineering, design and construction provider of modular construction systems serving the technology, power and industrial sectors. We expect TAS Energy to initially contribute annualized revenues of approximately $170 million to $190 million. We borrowed under our Facility the majority of the cash purchase price in late March 2020, which resulted in our cash balances as of March 31, 2020 being higher than normal.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;In April 2020, we entered into interest rate swap agreements to reduce our exposure to variable interest rates on our Facility. The notional amount covered by these interest rate swaps is initially $225.0 million, which gradually decreases to $80.0 million by November 30, 2021 until the termination date of September 30, 2022.&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;&lt;span style="visibility:hidden;"&gt;&#x200b;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-family:'Times New Roman';font-size:10pt;text-indent:36pt;margin:0pt;"&gt;During the last two weeks of March this year, we experienced negative impacts to our business due to the business disruption caused by COVID-19. In March 2020, the World Health Organization categorized COVID-19 as a pandemic, and the President of the United States declared the COVID-19 outbreak a national emergency. At this time, it is difficult to quantify the impact COVID-19 will have on the rest of 2020, but we currently expect it to negatively impact us more in the second quarter than we experienced in the first quarter. The Company considered the impact of COVID-19 on the assumptions and estimates used to determine our results and asset valuations as of March 31, 2020, and the Company has determined that there were no material or systematic adverse impacts on the Company&#x2019;s first quarter 2020 balance sheet and results of operations except for diminished revenue, operational inefficiency, and an increase in bad debt expense due to the potential for nonpayment by customers in industries more directly impacted by COVID-19.&lt;/p&gt;</us-gaap:SubsequentEventsTextBlock>
    <fix:BusinessAcquisitionRevenueEstimatedForAcquiredEntity
      contextRef="Duration_4_1_2020_To_12_31_2020_srt_RangeAxis_srt_MinimumMember_us-gaap_BusinessAcquisitionAxis_fix_TasEnergyMember_us-gaap_SubsequentEventTypeAxis_us-gaap_SubsequentEventMember_ervGwZ2FAE2O97ACCSTHJQ"
      decimals="-6"
      id="Narr_-97Bhh2bhkC5AbmD13igHg"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">170000000</fix:BusinessAcquisitionRevenueEstimatedForAcquiredEntity>
    <fix:BusinessAcquisitionRevenueEstimatedForAcquiredEntity
      contextRef="Duration_4_1_2020_To_12_31_2020_srt_RangeAxis_srt_MaximumMember_us-gaap_BusinessAcquisitionAxis_fix_TasEnergyMember_us-gaap_SubsequentEventTypeAxis_us-gaap_SubsequentEventMember_4MUmg8PYNku1_-gCYoEbgw"
      decimals="-6"
      id="Narr_ijjvg-RAskC72_ix6QJf9g"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">190000000</fix:BusinessAcquisitionRevenueEstimatedForAcquiredEntity>
    <us-gaap:DerivativeNotionalAmount
      contextRef="As_Of_4_1_2020_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_InterestRateSwapMember_us-gaap_SubsequentEventTypeAxis_us-gaap_SubsequentEventMember_D1Rm_hzWU0umekkHb1Fq7Q"
      decimals="-5"
      id="Narr_Y7Qssq2a7USe-vrL8WgwnQ"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">225000000.0</us-gaap:DerivativeNotionalAmount>
    <us-gaap:DerivativeNotionalAmount
      contextRef="As_Of_11_30_2021_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_InterestRateSwapMember_us-gaap_SubsequentEventTypeAxis_us-gaap_SubsequentEventMember_v-jNcOSFLUGA3_fOrF7wbw"
      decimals="-5"
      id="Narr_OdT4yMGFiUyLjWOoxnLvUw"
      unitRef="Unit_Standard_USD_9WwZgL1C_kuB_rEla0dzjA">80000000.0</us-gaap:DerivativeNotionalAmount>
</xbrl>
